[wp-trac] [WordPress Trac] #52341: Upgrade old branches to run on NodeJS LTS (currently 14.x)

WordPress Trac noreply at wordpress.org
Thu Jan 21 23:50:43 UTC 2021


#52341: Upgrade old branches to run on NodeJS LTS (currently 14.x)
------------------------------+---------------------------
 Reporter:  desrosj           |      Owner:  (none)
     Type:  task (blessed)    |     Status:  new
 Priority:  high              |  Milestone:  5.7
Component:  Build/Test Tools  |    Version:
 Severity:  normal            |   Keywords:  needs-testing
  Focuses:                    |
------------------------------+---------------------------
 The WordPress project's current support policy is that only the most
 recent major version should be considered supported. Currently, this means
 that 5.6.x is the only maintained branch. However, security fixes are
 backported as a courtesy and in an effort to promote a more secure web all
 the way back to the 3.7 branch.

 **This ticket is not meant to discuss this policy, or any changes to this
 policy.**

 In #47767, a simplified local environment based on Docker was introduced
 to make it easier for a local development environment to be spun up. The
 intention was to backport this to all supported branches.

 #48301 was opened to tackle this, and the local environment has been
 backported to all branches >= 4.6. However, it cannot be backported
 further because the `devDependencies` required for the functionality are
 not supported in older versions of NodeJS (the 4.5 branch currently uses
 `v4.7.2`, and the 3.7 branch currently uses `v0.10.48`).

 In early December of last year (2020), the [https://travis-
 ci.com/WordPress/ WordPress organization's tests stopped running on
 TravisCI] due to restructuring of their pricing model. This means that our
 pre-existing test setup has not run since.

 The decision was made to after experimenting within #50401 to move all
 test suites to GitHub Actions using workflows that run tests using the
 local Docker environment.

 Some discussions on #51603 revealed some historical context that there
 were previous intentions to bring all supported branches in sync with the
 version of NodeJS being used. However, this never happened. Since this is
 now a blocker for resuming automated testing in old branches, let's fix it
 now.

 Some notes:
 - The build server will now be able to run a single version of NodeJS for
 all supported versions. After each commit updating NodeJS in each branch,
 someone from the systems team will need to ensure each branch successfully
 changes versions.
 - All minified files, and some unminified files will be affected. This
 includes JS, CSS, and images.
 - Branches 5.0 and newer have a `package-lock.json` file, 4.4-4.9 have a
 `npm-shrinkwrap.json` file, and 4.3 and lower had no shrinkwrap or lock
 file.
 - NPM scripts relevant to each branch should also be backported when
 possible for consistent tooling across branches. But only if it does not
 require significant additions and changes.

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/52341>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list