Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-82829

Libraries: Include composer.json with 3rd party libraries

XMLWordPrintable

    • MDL-82829-main
    • Hide
      Name Version Composer.json Autoload Files PSR-0 PSR-4 Verify
      AdoDB 5.22.7 - - or
      Google 1.1.7 - - - or
      HTML Purifier 4.17.0 - or
      MatthiasMullie\Minify 1.3.73 - - - or
      MatthiasMullie\PathConverter 1.1.3 - - - or
      PHPMailer 6.9.1 - - - or
      SimplePie 1.8.0 - or
      Markdown 2.0.0 - - or
      Mustache 2.14.2 - - - or
      RTLCSS for PHP 1.0.1 - - - or
      scssphp 1.12.1 - - - or
      OpenSpout 4.23.0 - - - or
      LTI Tool Provider 3.0.2 - - - or
      LTI 1.3 Tool 6.0.0 - - - or
      GeoPattern 1.1.2 - - - or
      plist 2.0.3 Exist - - or
      ZipStream 3.1.0 - - - or
      php-enum 1.8.4 - - - or
      psr/clock 1.0.0 - - - or
      WebAuthn 2.1.1 Exist - - or
      AWS SDK 3.318.0 - - - or
      S3 0.5.1 - - - or
      MFA - OTPHP 11.3.0 Exist - - or
      MFA - Constant-Time Encoding 2.1.1 Exist - - or
      h5p-php-library 1.26 - - or
      h5p-editor-php-library moodle-1.23 - - or
      PHP-ML 0.10.0 - - - or
      FPDI 2.6.0 - - or

      Columns

      • Composer.json => new file
      • Autoload Files => Added to the \core_component::$composerautoloadfiles
      • PSR-0 => Added to the \core_component::$psr0namespaces
      • PSR-4 => Added to the \core_component::$psr4namespaces

      Notes

      • The \core_component class can be found at lib/classes/component.php.
      • For tester, please copy the table above into the comment and use the icon if it is expected, otherwise use the icon.
      Show
      Name Version Composer.json Autoload Files PSR-0 PSR-4 Verify AdoDB 5.22.7 - - or Google 1.1.7 - - - or HTML Purifier 4.17.0 - or MatthiasMullie\Minify 1.3.73 - - - or MatthiasMullie\PathConverter 1.1.3 - - - or PHPMailer 6.9.1 - - - or SimplePie 1.8.0 - or Markdown 2.0.0 - - or Mustache 2.14.2 - - - or RTLCSS for PHP 1.0.1 - - - or scssphp 1.12.1 - - - or OpenSpout 4.23.0 - - - or LTI Tool Provider 3.0.2 - - - or LTI 1.3 Tool 6.0.0 - - - or GeoPattern 1.1.2 - - - or plist 2.0.3 Exist - - or ZipStream 3.1.0 - - - or php-enum 1.8.4 - - - or psr/clock 1.0.0 - - - or WebAuthn 2.1.1 Exist - - or AWS SDK 3.318.0 - - - or S3 0.5.1 - - - or MFA - OTPHP 11.3.0 Exist - - or MFA - Constant-Time Encoding 2.1.1 Exist - - or h5p-php-library 1.26 - - or h5p-editor-php-library moodle-1.23 - - or PHP-ML 0.10.0 - - - or FPDI 2.6.0 - - or Columns Composer.json => new file Autoload Files => Added to the \core_component::$composerautoloadfiles PSR-0 => Added to the \core_component:: $psr0namespaces PSR-4 => Added to the \core_component:: $psr4namespaces Notes The \core_component class can be found at lib/classes/component.php . For tester, please copy the table above into the comment and use the icon if it is expected, otherwise use the icon.
    • 2
    • Team Hedgehog 2024 Sprint 3.2, Team Hedgehog 2024 Sprint 3.3

      Inlcude the composer.json file (if it exists) for all the 3rd party libraries that we use in LMS. This file contains critical metadata about the library itself. Notably the "autoload" section that contains information about if individual files need to be autoladed. See MDL-82747 for details.

      Currently, there is no requirement to include composer.json as part of the 3rd party library upgrades and management, which can lead to issues.

      As part of the work to include this we should:

      • Review thirdpartylibs.xml for the list of current libraries in LMS
      • Use the list of libs to determine which ones currently do not have a composer.json as part of their files in LMS
      • For those that don't have composer.json included, review their source repositories to see if they have composer.json upstream
      • Add any missing composer.json's to LMS
      • See if any of the libraries autoload function files and add them to the loader in LMS as per MDL-82747
      • Update relevant docs page(s) to inform devs this is a requirement for future lib additions/upgrades.

      Once we've completed this we can add a CI check to make sure things aren't being missed in the future

            meirza.arson@moodle.com Meirza
            matt.porritt@moodle.com Matt Porritt
            Raquel Ortega Raquel Ortega
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved:

                Estimated:
                Original Estimate - 0 minutes
                0m
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 2 days, 5 hours, 2 minutes
                2d 5h 2m

                  Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.