-
Task
-
Resolution: Fixed
-
Blocker
-
4.3
Since September 2018 (MDL-63346):
- This policy will be applied to ALL supported branches, normal and security-only.
- 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. So, normally, only changes to .nvmrc and package.json will happen. That will be achieved by:
- update .nvmrc to the new version.
- run nvm install && nvm alias default node && nvm use to install, set it as new default and use it for the next steps.
- update package.json and set engines to the new restriction (>= new version and < next major).
- When needed to bump components or run some audit, 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 & {
Unknown macro: {npm-shrinkwrap.json}
}
- {
Unknown macro: {npm cache clear --force}
}
- {
Unknown macro: {npm install}
}
- {
Unknown macro: {npm shrinkwrap}
}
- remove node_modules & {
- In any case, simple update or complete components bump, run grunt and verify that all the generated css/js/map stuff remains the same. If there are differences in the generation... it will need to be analysed and decided if:
- accepted (so everything, shrinkwrap and generated css/js/map) lands [or]
- not accepted (and only change .nvmrc and package.json) instead).
- 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.
- Changes will be normally integrated and the NodeJSVersion template and NodeJSExactVersion templates will be updated with latest information in the Docs.
- 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,.
This issue is being created because of this announcement about the end-of-life date for Node.js 16 (September 2023).
Node 20 is already stable and will become LTS on October 2023. Just around the Moodle 4.3 release.
- blocks
-
MDL-80710 Use browserslist targets and postcss for autoprefixing theme sсss files
- Open
-
MDL-80788 Use eslint-plugin-compat to highlight browser compatibility issues in JS
- Open
- has a non-specific relationship to
-
MDL-77538 MDL-75012 seems to have broken all JavaScript on Windows
- Closed
-
MDL-77527 Upgrade to Node18 leads to different .map files in 39/311 branches
- Closed
- has to be done before
-
MDL-80787 Upgrade stylelint configuration to match 15.x version migration recommendations
- Development in progress
- is a clone of
-
MDL-75012 Bump nodejs from lts/gallium to stable (>=v18.x.x, now lts/hydrogen)
- Closed
- Testing discovered
-
MDL-80783 Jsdoc creates wrong file name for core/local/reactive/stateManager
- Open