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

Bump nodejs from lts/carbon to stable (>=v14.0.0)

    XMLWordPrintable

    Details

    • Testing Instructions:
      Hide

      A) Automated, just manually verify that:

      1. npm install
      2. grunt
      3. travis
      4. cibot
      5. phpunit and behat tests

      are all them passing for the target branches (35, 36, 37, 38 & master).

      B) Verify that the NodeJSVersion and NodeJSExactVersion templates in the Docs have been updated to point to this issue and nodejs versions match the work done here (see issue's title).

      C) Optionally (really all these should be covered by behat tests, and some exploratory testing has been already performed so, for your consideration), visit various pages having javascript modules and verify that things like autocompletion, inline-editable, templates, ajax, menu-bar... are all them working ok. And there aren't javascript console errors.

      Show
      A) Automated, just manually verify that: npm install grunt travis cibot phpunit and behat tests are all them passing for the target branches (35, 36, 37, 38 & master). B) Verify that the NodeJSVersion  and NodeJSExactVersion templates in the Docs have been updated to point to this issue and nodejs versions match the work done here (see issue's title). C) Optionally (really all these should be covered by behat tests, and some exploratory testing has been already performed so, for your consideration), visit various pages having javascript modules and verify that things like autocompletion, inline-editable, templates, ajax, menu-bar... are all them working ok. And there aren't javascript console errors.
    • Affected Branches:
      MOODLE_35_STABLE, MOODLE_36_STABLE, MOODLE_37_STABLE, MOODLE_38_STABLE
    • Fixed Branches:
      MOODLE_35_STABLE, MOODLE_37_STABLE, MOODLE_38_STABLE
    • Pull 3.5 Branch:
    • Pull 3.7 Branch:
    • Pull 3.8 Branch:
    • Pull Master Branch:
      MDL-66109-master

      Description

      Policy: Keeping us on top of nodejs/npm LTS versions (including jumps to next LTS)

      Since September 2018 (MDL-63346):

      1. This policy will be applied to ALL supported branches, normal and security-only.
      2. This policy won't update any tool per se, unless strictly needed by nodejs/npm own dependencies/changes. It won't include npm audit changes either. Those are handled apart.
      3. TODO (MDLSITE-5536): A job @ CI servers will be, daily, using latest lts/current version to detect if there are npm-shrinkwrap.json changes. It will fail when that happens and inform integrators. Jumps to lts/next will be detected manually,.
      4. When that happens, a new issue, similar to this, will be created and these steps performed in order to get a renewed npm-shrinkwrap.json file:
        • remove node_modules & npm-shrinkwrap.json
        • npm cache clear --force
        • npm install
        • npm shrinkwrap
      5. The resulting branches will be sent to github (or similar), making a peer-review request here so both travis and cibot will verify that all them pass ok.
      6. Changes will be normally integrated and the NodeJSVersion template and NodeJSExactVersion templates will be updated with latest information in the Docs.

      As far as there is a new LTS nodejs/npm version, lts/dubnium, since some months ago:

      https://nodejs.org/en/download/releases/

      This is about to consider to bump to it for all our supported branches (35 and up, right now). This requires:

      • with lts/dubnium installed, regenerate npm-shrinkwrap.json
      • optionally (not part of the policy): look for deprecated and audit results, trying to update as many as possible.
      • apply all the changes to core.
      • review 3rd part systems: travis, CI servers, docs.moodle.org
      • share about it in all channels as possible

      Better we do it earlier in the process than later. Right now, they should be:

      node --version && npm --version
      v10.16.0
      6.9.0
      

      Ciao

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              dobedobedoh Andrew Nicols
              Reporter:
              stronk7 Eloy Lafuente (stronk7)
              Peer reviewer:
              Simey Lameze
              Integrator:
              Jun Pataleta
              Tester:
              Janelle Barcega
              Participants:
              Component watchers:
              Andrew Nicols, Jun Pataleta, Michael Hawkins, Shamim Rezaie, Simey Lameze
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Fix Release Date:
                13/Jul/20

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 1 day, 4 hours, 35 minutes
                  1d 4h 35m