WordPress.org

Make WordPress Core

Opened 19 months ago

Closed 3 months ago

Last modified 3 months ago

#48301 closed task (blessed) (fixed)

Backport the simplified local environment

Reported by: desrosj Owned by: desrosj
Milestone: 5.7 Priority: normal
Severity: normal Version:
Component: Build/Test Tools Keywords: has-patch
Focuses: Cc:

Description

This is a continuation ticket of #47767.

In that ticket, a Docker-based local WordPress Development environment was added to trunk.

This ticket is being opened to accomplish the 3rd goal listed on the ticket, It should be simple to backport to old branches, so we can more easily set up test environments when backporting patches to old branches.

https://core.trac.wordpress.org/ticket/47767#comment:6 has an initial proof of concept for backporting the environment to 3.7, though it needs to be updated to account for the changes made further down in the ticket.

Change History (83)

This ticket was mentioned in PR #125 on WordPress/wordpress-develop by desrosj.


17 months ago

This ticket was mentioned in PR #133 on WordPress/wordpress-develop by desrosj.


16 months ago

This ticket was mentioned in PR #134 on WordPress/wordpress-develop by desrosj.


16 months ago

This ticket was mentioned in PR #135 on WordPress/wordpress-develop by desrosj.


16 months ago

This ticket was mentioned in PR #136 on WordPress/wordpress-develop by desrosj.


16 months ago

This ticket was mentioned in PR #137 on WordPress/wordpress-develop by desrosj.


16 months ago

#7 @desrosj
16 months ago

  • Keywords has-patch added; needs-patch removed

I finally got some working branches pushed to my GitHub fork. You can find the PRs linked above.

I started by only going back to 4.8. At this point, I stop encountering new problems. Solving these first will most likely make going back further go much more smoothly.

For each .env file, I have changed LOCAL_PHP-latest to load the highest version of PHP supported by that branch as the default to prevent any potential issues as newer latest builds are released. The LOCAL_MYSQL versions in the .env files need to be updated in the same fashion. I have been less involved in the MySQL version support changes, so I need to research when support for each new MySQL version was added.

I think making a MySQL version support page like the one for PHP versions would be very useful.

Some Notes

  • I kept build matrices exactly the same as they are now in each branch for this ticket. Trimming or expanding the build matrices can be explored in separate tickets after this transition is made.
  • To install the new required NPM packages (dotenv, dotenv-expand, and wait-on) and update the npm-shrinkwrap.json file correctly, I ran `npm install --save-dev --save-exact packagename@1.0.0.
  • Updating the npm-shrinkwarp-json file will cause fsevents to be re-added. This needs to be manually removed to avoid compatibility issues with non MacOS servers (including Travis, Docker, and the build server). See #38657.
  • npm ci does not appear to work on branches < 5.0. I switched the command to npm install.

Issues:

A few of the pull request Travis jobs are failing due to a time out when running npm ci. I'm not sure why as these jobs pass on my fork.

5.1 Branch

PHP 7.3, 7.2, 7.1: For some reason, the Tests_Image_Editor_Imagick::test_rotate and Tests_Image_Editor_Imagick::test_flip tests are reading the RGB values of the manipulated images incorrectly, getting an off by one value. This issue does not occur locally for me when running the test suite within the Docker container with the same versions configured.

PHP 5.4, 5.3, 5.2: The following error is being returned for these jobs:

/usr/local/bin/docker-php-ext-enable: 5: cd: can't cd to /usr/local/lib/php/extensions/no-debug-non-zts-20060613

5.0 Branch

PHP 7.3=: There is a Fatal error: Class PHPUnit_Util_Test may not inherit from final class (PHPUnit\Util\Test) in /var/www/tests/phpunit/includes/phpunit6-compat.php on line 18 happening. I believe that this is being caused because PHPUnit 7 is packaged in the PHP 7.1-7.3-fpm PHPUnit Docker images, but WordPress 5.0 only supported up to PHPUnit 6.

PHP 5.2: The same error is being encountered as PHP 5.4-5.2 above.

4.9 Branch

The wait-on >= 3.0.0 NPM package does not support NPM 6.9.1, which is the version used in this branch. Downgrading the package to 2.1.2 seems to work, but there is a potentially unrelated JavaScript error:

/home/travis/build/desrosj/wordpress-develop/tools/local-env/scripts/install.js:33 .then( () => { TypeError: Cannot read property 'then' of undefined at Object

This could also just be a compatibility issue with the install.js script and NPM 6.9.1.

For PHP 5.2, The same error is being caused above.

4.8 Branch

The same issues described for 4.9 also occur in this branch.

#8 @desrosj
16 months ago

Experimented with changing npm ci to npm install in the 5.2 branch. It fixed the timeout issue with the PHP 7.3 job, but introduced a new error for the 5.6 job: cb() never called!.

Also, here is a link to the Docker image for PHPUnit on PHP 7.1 loading PHPUnit 7: https://hub.docker.com/layers/wordpressdevelop/phpunit/7.1-fpm/images/sha256-7c8bccf4a538f8918c9223904cf1d59ff9811eba2836ef83391986659eb7afd5

Moving forward as support for newer versions of PHPUnit is added, there will likely be a need for more granularity here. @pento any thoughts on how to handle this?

#9 @prbot
15 months ago

noisysocks commented on PR #133:

Test test test

#10 @prbot
15 months ago

desrosj commented on PR #133:

Test

#11 @desrosj
12 months ago

  • Type changed from defect (bug) to enhancement

This ticket was mentioned in Slack in #core-committers by desrosj. View the logs.


11 months ago

#13 @desrosj
7 months ago

Related: #50401.

I've opened https://github.com/WordPress/wpdev-docker-images/pull/44, which seems to fix the issues with the PHP 5.2/5.3/5.4 containers.

Backporting this should be much easier now with the GitHub Actions.

#14 @desrosj
7 months ago

  • Owner set to desrosj
  • Status changed from new to assigned

#15 @desrosj
6 months ago

In 49335:

Build/Test Tools: Specify a type when using wp config set.

This prevents an error if constants are not predefined when running the Docker install script while using older combinations of WordPress/PHP/WP-CLI.

See #48301.

#16 @desrosj
6 months ago

In 49340:

Build/Test Tools: Specify a type when using wp config set.

This prevents an error if constants are not predefined when running the Docker install script while using older combinations of WordPress/PHP/WP-CLI.

Backports [49335] to the 5.5 branch.
See #48301.

#17 @desrosj
6 months ago

In 49341:

Build/Test Tools: Specify a type when using wp config set.

This prevents an error if constants are not predefined when running the Docker install script while using older combinations of WordPress/PHP/WP-CLI.

Backports [49335] to the 5.4 branch.
See #48301.

#18 @desrosj
6 months ago

In 49342:

Build/Test Tools: Specify a type when using wp config set.

This prevents an error if constants are not predefined when running the Docker install script while using older combinations of WordPress/PHP/WP-CLI.

Backports [49335] to the 5.3 branch.
See #48301.

#19 @prbot
6 months ago

desrosj commented on PR #133:

This has become difficult to sync. Going to open a fresh PR.

#20 @prbot
6 months ago

desrosj commented on PR #134:

This has become difficult to sync. Going to open a fresh PR.

#21 @prbot
6 months ago

desrosj commented on PR #136:

This has become difficult to sync. Going to open a fresh PR.

#22 @prbot
6 months ago

desrosj commented on PR #137:

This has become difficult to sync. Going to open a fresh PR.

This ticket was mentioned in PR #693 on WordPress/wordpress-develop by desrosj.


6 months ago

  • Keywords has-unit-tests added

This backports the local Docker environment to the 5.2 branch.

Trac ticket: https://core.trac.wordpress.org/ticket/48301.

This ticket was mentioned in PR #695 on WordPress/wordpress-develop by desrosj.


6 months ago

This backports the local Docker environment to the 5.2 branch.

Trac ticket: https://core.trac.wordpress.org/ticket/48301.

This ticket was mentioned in PR #696 on WordPress/wordpress-develop by desrosj.


6 months ago

This backports the local Docker environment to the 5.1 branch.

Trac ticket: https://core.trac.wordpress.org/ticket/48301.

This ticket was mentioned in PR #697 on WordPress/wordpress-develop by desrosj.


6 months ago

This backports the local Docker environment to the 4.9 branch.

Trac ticket: https://core.trac.wordpress.org/ticket/48301.

This ticket was mentioned in PR #698 on WordPress/wordpress-develop by desrosj.


6 months ago

This backports the local Docker environment to the 4.8 branch.

Trac ticket: https://core.trac.wordpress.org/ticket/48301.

This ticket was mentioned in PR #699 on WordPress/wordpress-develop by desrosj.


6 months ago

This backports the local Docker environment to the 4.7 branch.

Trac ticket: https://core.trac.wordpress.org/ticket/48301.

This ticket was mentioned in PR #700 on WordPress/wordpress-develop by desrosj.


6 months ago

This backports the local Docker environment to the 4.6 branch.

Trac ticket: https://core.trac.wordpress.org/ticket/48301.

#30 @desrosj
6 months ago

  • Keywords needs-testing has-unit-tests removed
  • Type changed from enhancement to task (blessed)

I've spent a huge amount of time on this the last few months. I'd like to wrap this up, and I think we're in a state where we can backport . It's a blocker for backporting the GitHub action workflows to older branch, which will is a huge step towards finishing a transition off Travis CI.

I've resolved almost all of the issues above. A large number of them were being caused by missing packages or incorrect configurations within the Docker containers (mainly for PHP 5.4 and earlier).

The one remaining issue is that the PHP 5.2 Docker container is not yet able to be used. For more information on that, see the ongoing GitHub PR (TLDR: WP-CLI does not support PHP 5.2, and the PHPUnit test suite requires version 3.6 on PHP 5.2, which is no longer available). For the time being, the 5.2 jobs will continue using Travis' precise image, and will not be switched to use the Docker container.

Here is a list of remaining blockers:

#46073/[45067]: This was resolved in the 5.2 branch. This will need to be backported all the way to 3.7. Because the Travis environment does not include the needed Imagick components, the related tests are always skipped. But when the tests shift to being run within the Docker container, Imagick is present and this error presents itself.

[48486]: This change backported some error detection within tests confirming PDF thumbnail generation functionality to the 5.0 branch. However, the variable name within the test_pdf_preview_doesnt_overwrite_existing_jpeg() test was inadvertently incorrect. Similar to the last item, this test function was never reached because of a lack of the presence of Imagick. Within the Docker container, it now causes a test error. This needs to be committed to 5.0 and backported to the 4.7 branch.

#51624: This fixes a compatibility issue with Composer 2.0. This has been backported to the 5.3 branch, but it looks like it will also need to be merged back through 5.1 because composer.json/composer.lock files are present. The travis:format command does call composer to check for coding standards issues, but it does so within the Travis image, which still runs Composer 1.x. When the Docker container is backported, this will now run within the container, which has Composer 2.0.

Because the PHP_CodeSniffer is updated as a result of this fix, there are a few minor, spacing and alignment coding standards issues that will be flagged during the code base scan. I have included these fixes in the PRs, and they should be OK to make/include in the next release for the 5.2 and 5.1 branches. The total number is 6 files with coding standards changes, which should not cause issues with auto-updates.

Problems with old Node versions: In the 4.5 and lower branches, the version of NodeJS required drops to NodeJS < 6. This becomes problematic because the required versions of the dotenv, dotenv-expand, wait-on NPM packages do not support these older versions of NodeJS. I'd like to take a step back and look holistically at NodeJS in older branches. This has been discussed in 51603#comment:15 (see also #51682, #48140).

Today's Plan
My plan for after this comment is to backport everything outlined today back to the 4.6 branch (all open PRs above). After that, we can solve the NodeJS problem, and finish backporting.

#31 @desrosj
6 months ago

In 49514:

Build Tools: Fix running installing Composer dependencies using Composer 2.0.

This updates the dealerdirect/phpcodesniffer-composer-installer package to allow installing version 0.7.0 which supports Composer 2.0.

It also includes several minor spacing/alignment coding standards fixes that are made as a result of the package update.

Props itowhid06, jrf.
Merges [49306] to the 5.2 branch.
See #51624, #48301.

#32 @desrosj
6 months ago

In 49515:

Build Tools: One additional coding standards fix now detected after [49514].

See #51624, #48301.

#33 @desrosj
6 months ago

In 49516:

Build Tools: Fix running installing Composer dependencies using Composer 2.0.

This updates the dealerdirect/phpcodesniffer-composer-installer package to allow installing version 0.7.0 which supports Composer 2.0.

It also includes several minor spacing/alignment coding standards fixes that are made as a result of the package update.

Props itowhid06, jrf.
Merges [49306] to the 5.1 branch.
See #51624, #48301.

#34 @desrosj
6 months ago

In 49517:

Media: Improve and fix rotate/flip image tests.

Fix off-by-one error in pixel color checks for rotate and flip image tests. Change to using PNG with single pixel to ensure that errors are caught in the future, rather than lost in JPEG noise.

Props Fuegas, mikeschroder.
Merges [45067] to the 5.1 branch.
See #46073, #48301.

#35 @desrosj
6 months ago

In 49518:

Media: Improve and fix rotate/flip image tests.

Fix off-by-one error in pixel color checks for rotate and flip image tests. Change to using PNG with single pixel to ensure that errors are caught in the future, rather than lost in JPEG noise.

Props Fuegas, mikeschroder.
Merges [45067] to the 5.0 branch.
See #46073, #48301.

#36 @desrosj
6 months ago

In 49519:

Media: Improve and fix rotate/flip image tests.

Fix off-by-one error in pixel color checks for rotate and flip image tests. Change to using PNG with single pixel to ensure that errors are caught in the future, rather than lost in JPEG noise.

Props Fuegas, mikeschroder.
Merges [45067] to the 4.9 branch.
See #46073, #48301.

#37 @desrosj
6 months ago

In 49520:

Media: Improve and fix rotate/flip image tests.

Fix off-by-one error in pixel color checks for rotate and flip image tests. Change to using PNG with single pixel to ensure that errors are caught in the future, rather than lost in JPEG noise.

Props Fuegas, mikeschroder.
Merges [45067] to the 4.8 branch.
See #46073, #48301.

#38 @desrosj
6 months ago

In 49521:

Media: Improve and fix rotate/flip image tests.

Fix off-by-one error in pixel color checks for rotate and flip image tests. Change to using PNG with single pixel to ensure that errors are caught in the future, rather than lost in JPEG noise.

Props Fuegas, mikeschroder.
Merges [45067] to the 4.7 branch.
See #46073, #48301.

#39 @desrosj
6 months ago

In 49522:

Media: Improve and fix rotate/flip image tests.

Fix off-by-one error in pixel color checks for rotate and flip image tests. Change to using PNG with single pixel to ensure that errors are caught in the future, rather than lost in JPEG noise.

Props Fuegas, mikeschroder.
Merges [45067] to the 4.6 branch.
See #46073, #48301.

#40 @desrosj
6 months ago

In 49523:

Tests: Fix an incorrect variable name in PDF tests.

This causes a PHP error when running the test suite with PDF rendering supported.

See #50573, #48301.

#41 @desrosj
6 months ago

In 49526:

Tests: Fix an incorrect variable name in PDF tests.

This causes a PHP error when running the test suite with PDF rendering supported.

Merges [49523] to the 4.7 branch.
See #50573, #48301.

#42 @desrosj
6 months ago

In 49527:

Build/Test Tools: Backport the local Docker environment to the 5.2 branch.

This commit introduces the Docker-based local WordPress development environment to the 5.2 branch and converts the Travis test jobs to utilize this environment for easier and more consistent testing.

Merges [45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49335,49358,49360,49362] to the 5.2 branch.
See #48301, #47767.

#44 @desrosj
6 months ago

In 49528:

Build/Test Tools: Backport the local Docker environment to the 5.2 branch.

This commit introduces the Docker-based local WordPress development environment to the 5.2 branch and converts the Travis test jobs to utilize this environment for easier and more consistent testing.

Merges [45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49335,49358,49360,49362] to the 5.1 branch.
See #48301, #47767.

#46 @desrosj
6 months ago

In 49529:

Build/Test Tools: Backport the local Docker environment to the 5.0 branch.

This commit introduces the Docker-based local WordPress development environment to the 5.0 branch and converts the Travis test jobs to utilize this environment for easier and more consistent testing.

Until existing blockers with the PHP 5.2 Docker container can be solved, the PHP 5.2 test job will remain using the Travis precise image.

Merges [45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49335,49358,49360,49362] to the 5.0 branch.
See #48301, #47767.

#48 @desrosj
6 months ago

In 49530:

Build/Test Tools: Backport the local Docker environment to the 4.9 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.9 branch and converts the Travis test jobs to utilize this environment for easier and more consistent testing.

Until existing blockers with the PHP 5.2 Docker container can be solved, the PHP 5.2 test job will remain using the Travis precise image.

Merges [45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49335,49358,49360,49362] to the 4.9 branch.
See #48301, #47767.

#50 @desrosj
6 months ago

In 49531:

Build/Test Tools: Backport the local Docker environment to the 4.8 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.8 branch and converts the Travis test jobs to utilize this environment for easier and more consistent testing.

Until existing blockers with the PHP 5.2 Docker container can be solved, the PHP 5.2 test job will remain using the Travis precise image.

Merges [45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49335,49358,49360,49362] to the 4.8 branch.
See #48301, #47767.

#52 @desrosj
6 months ago

In 49532:

Build/Test Tools: Backport the local Docker environment to the 4.7 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.7 branch and converts the Travis test jobs to utilize this environment for easier and more consistent testing.

Until existing blockers with the PHP 5.2 Docker container can be solved, the PHP 5.2 test job will remain using the Travis precise image.

Merges [45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49335,49358,49360,49362] to the 4.7 branch.
See #48301, #47767.

#53 @desrosj
6 months ago

In 49533:

Build/Test Tools: Backport the local Docker environment to the 4.6 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.6 branch and converts the Travis test jobs to utilize this environment for easier and more consistent testing.

Until existing blockers with the PHP 5.2 Docker container can be solved, the PHP 5.2 test job will remain using the Travis precise image.

Merges [45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49335,49358,49360,49362] to the 4.6 branch.
See #48301, #47767.

This ticket was mentioned in Slack in #core by sergey. View the logs.


6 months ago

#57 @desrosj
3 months ago

In 50208:

Build/Test Tools: Support NodeJS 14.x in the 4.5 branch.

This updates the 4.5 branch to support the latest LTS version of NodeJS (currently 14.x), allowing the same version to be used across all WordPress branches that receive security updates as a courtesy.

Because older branches use (really) old versions of NodeJS, the local Docker environment cannot be backported since the needed dependencies will not run on these older versions (see #48301). This also blocks the ability to move automated testing over to GitHub Actions (see #50401).

This also replaces the npm-shrinkwrap.json with a package-lock.json file. Lock files were not supported in earlier versions of NPM, but can now be used.

In addition to backporting the package updates that happened after branching 4.5, dependencies that were removed in future releases have also been updated to their latest versions.

Props desrosj, dd32, netweb, jorbin.
Merges [37185,37212,37612,38111,38688,39110,39113-39119,39478,42460-42461,42463,42887,43320,43323,43977,44219,44233,44728,45321,45765,46404,46408-46409,47404,47867-47869,47872-47873,48705,49636,49933,49937,49939,50017,50126,50176,50185,50192] to the 4.5 branch.
See #52341.

#58 @desrosj
3 months ago

In 50210:

Build/Test Tools: Support NodeJS 14.x in the 4.4 branch.

This updates the 4.4 branch to support the latest LTS version of NodeJS (currently 14.x), allowing the same version to be used across all WordPress branches that receive security updates as a courtesy.

Because older branches use (really) old versions of NodeJS, the local Docker environment cannot be backported since the needed dependencies will not run on these older versions (see #48301). This also blocks the ability to move automated testing over to GitHub Actions (see #50401).

This also replaces the npm-shrinkwrap.json with a package-lock.json file. Lock files were not supported in earlier versions of NPM, but can now be used.

In addition to backporting the package updates that happened after branching 4.4, dependencies that were removed in future releases have also been updated to their latest versions.

Props desrosj, dd32, netweb, jorbin.
Merges [35859,35862,36860-36865,36935,36978-36979,37017,37019-37020,37212,37612,38111,38688,39110,39113-39119,39478,42460-42461,42463,42887,43320,43323,43977,44219,44233,44728,45321,45765,46404,46408-46409,47404,47867-47869,47872-47873,48705,49636,49933,49937,49939,50017,50126,50176,50185,50192] to the 4.4 branch.
See #52341.

#59 @desrosj
3 months ago

In 50212:

Build/Test Tools: Support NodeJS 14.x in the 4.3 branch.

This updates the 4.3 branch to support the latest LTS version of NodeJS (currently 14.x), allowing the same version to be used across all WordPress branches that receive security updates as a courtesy.

Because older branches use (really) old versions of NodeJS, the local Docker environment cannot be backported since the needed dependencies will not run on these older versions (see #48301). This also blocks the ability to move automated testing over to GitHub Actions (see #50401).

This change also introduces a packager-lock.json file to the branch.

In addition to backporting the package updates that happened after branching 4.3, dependencies that were removed in future releases have also been updated to their latest versions.

Props desrosj, dd32, netweb, jorbin.
Merges [33726,34888,35332,35335,35363,35513,35520-35521,35538-35541,35562-35563,35859-36865,36935,36978-36980,37017,37019-37020,37212,37612,38111,38688,39110,39113-39119,39478,42460-42461,42463,42887,43320,43323,43977,44219,44233,44728,45321,45765,46404,46408-46409,47404,47867-47869,47872-47873,48705,49636,49933,49937,49939,50017,50126,50176,50185] to the 4.3 branch.
See #52341.

#60 @desrosj
3 months ago

In 50214:

Build/Test Tools: Support NodeJS 14.x in the 4.2 branch.

This updates the 4.2 branch to support the latest LTS version of NodeJS (currently 14.x), allowing the same version to be used across all WordPress branches that receive security updates as a courtesy.

Because older branches use (really) old versions of NodeJS, the local Docker environment cannot be backported since the needed dependencies will not run on these older versions (see #48301). This also blocks the ability to move automated testing over to GitHub Actions (see #50401).

This change also introduces a packager-lock.json file to the branch.

In addition to backporting the package updates that happened after branching 4.2, dependencies that were removed in future releases have also been updated to their latest versions.

Props desrosj, dd32, netweb, jorbin.
Merges [32356-32357,32988,33726,34888,35335,35363,35513,35521,35538-35541,35859,36861-36865,36935,36979,37017,37019-37020,37212,37612,38111,39110,39113,39115-39119,39478,41835,42460,42461,42463,42887,43320,43323,43977,44219,44233,45321,45765,46404,46408-46409,47404,47867,47872-47873,48705,49636,49933,49937,49939,50126,50176,50185] to the 4.2 branch.
See #52341.

#61 @desrosj
3 months ago

In 50216:

Build/Test Tools: Support NodeJS 14.x in the 4.1 branch.

This updates the 4.1 branch to support the latest LTS version of NodeJS (currently 14.x), allowing the same version to be used across all WordPress branches that receive security updates as a courtesy.

Because older branches use (really) old versions of NodeJS, the local Docker environment cannot be backported since the needed dependencies will not run on these older versions (see #48301). This also blocks the ability to move automated testing over to GitHub Actions (see #50401).

This change also introduces a packager-lock.json file to the branch.

In addition to backporting the package updates that happened after branching 4.1, dependencies that were removed in future releases have also been updated to their latest versions.

Props desrosj, dd32, netweb, jorbin.
Merges [31425,31504,31557,31648-31650,32356-32357,32988,33726,35363,35513,35521,35538-35541,35859,36861-36865,37017,37019-37020,37212,37612,38111,39110,39113,39115-39117,39478,41835,42460-42461,42463,42887,43320,43323,43977,44219,44233,45321,45765,46404,46408-46409,47404,47867,47872-47873,48705,49636,49933,49937,49939,50126,50176,50185] to the 4.1 branch.
See #52341.

#62 @desrosj
3 months ago

In 50218:

Build/Test Tools: Support NodeJS 14.x in the 4.0 branch.

This updates the 4.0 branch to support the latest LTS version of NodeJS (currently 14.x), allowing the same version to be used across all WordPress branches that receive security updates as a courtesy.

Because older branches use (really) old versions of NodeJS, the local Docker environment cannot be backported since the needed dependencies will not run on these older versions (see #48301). This also blocks the ability to move automated testing over to GitHub Actions (see #50401).

This change also introduces a packager-lock.json file to the branch.

In addition to backporting the package updates that happened after branching 4.0, dependencies that were removed in future releases have also been updated to their latest versions.

Props desrosj, dd32, netweb, jorbin.
Merges [30059-30063,30066-30067,31425,31504,31557,31648,31649-31650,32356-32357,32988,33726,35363,35513,35521,35538-35541,35859,36861-36865,37017,37019-37020,37212,37612,38111,39110,39113,39115-39117,39478,41835,42460-42461,42463,42887,43320,43323,43977,44219,44233,45321,45765,46404,46408-46409,47404,47867,47872-47873,48705,49636,49933,49937,49939,50126,50176,50185,50192] to the 4.0 branch.
See #52341.

#63 @desrosj
3 months ago

In 50220:

Build/Test Tools: Support NodeJS 14.x in the 3.9 branch.

This updates the 3.9 branch to support the latest LTS version of NodeJS (currently 14.x), allowing the same version to be used across all WordPress branches that receive security updates as a courtesy.

Because older branches use (really) old versions of NodeJS, the local Docker environment cannot be backported since the needed dependencies will not run on these older versions (see #48301). This also blocks the ability to move automated testing over to GitHub Actions (see #50401).

This change also introduces a packager-lock.json file to the branch.

In addition to backporting the package updates that happened after branching 3.9, dependencies that were removed in future releases have also been updated to their latest versions.

Props desrosj, dd32, netweb, jorbin.
Merges [28695,28796,28821,29270,29505,29858-30059,30061-30063,30066-30067,31425,31504,31557,31648-31650,32356-32357,32988,33726,35363,35513,35521,35538-35541,35859,36861-36865,37017,37019,37020,37212,37612,38111,39110,39113,39115-39117,39478,41835,42460-42461,42463,42887,43320,43323,43977,44219,44233,45321,45765,46404,46408-46409,47404,47867,47872-47873,48705,49636,49933,49937,49939,50126,50176,50185] to the 3.9 branch.
See #52341.

#64 @desrosj
3 months ago

In 50222:

Build/Test Tools: Support NodeJS 14.x in the 3.8 branch.

This updates the 3.8 branch to support the latest LTS version of NodeJS (currently 14.x), allowing the same version to be used across all WordPress branches that receive security updates as a courtesy.

Because older branches use (really) old versions of NodeJS, the local Docker environment cannot be backported since the needed dependencies will not run on these older versions (see #48301). This also blocks the ability to move automated testing over to GitHub Actions (see #50401).

This change also introduces a packager-lock.json file to the branch.

In addition to backporting the package updates that happened after branching 3.8, dependencies that were removed in future releases have also been updated to their latest versions.

Props desrosj, dd32, netweb, jorbin.
Merges [26886,27053,28796,27053,29270,29505,30060,30062-30063,30066,31425,31648,31649,31650,32356,32988,33726,35363,35513,35521,35538-35541,36861-36865,37017,37019,37020,37212,39110,39113,39115-39116,39117,39478,41835,42460,42461,42463,43320,43323,43977,44219,44233,45321,46408-46409,47404,47867,47872-47873,49636,49933,49937,49939,50126,50176,50185,50192] to the 3.8 branch.
See #52341.

#65 @desrosj
3 months ago

In 50224:

Build/Test Tools: Support NodeJS 14.x in the 3.7 branch.

This updates the 3.7 branch to support the latest LTS version of NodeJS (currently 14.x), allowing the same version to be used across all WordPress branches that receive security updates as a courtesy.

Because older branches use (really) old versions of NodeJS, the local Docker environment cannot be backported since the needed dependencies will not run on these older versions (see #48301). This also blocks the ability to move automated testing over to GitHub Actions (see #50401).

This change also introduces a packager-lock.json file to the branch.

In addition to backporting the package updates that happened after branching 3.7, dependencies that were removed in future releases have also been updated to their latest versions.

Props desrosj, dd32, netweb, jorbin.
Merges [27053,27299,27721,27848,28796,29270,30060,30062-30063,30066,31557,31650,32356,32988,33726,35513,35521,35538,35540-35541,36861-36865,37019-37020,37212,37612,38111,39113,39115-39117,39478,42460-42461,42887,42989,43320,43323,43977,44219,45446,45765,46408-46409,47867,47872,48705,49636,49933,49939,50185] to the 3.7 branch.
See #52341.

#66 @desrosj
3 months ago

In 50239:

Build/Test Tools: Correct svn:mergeinfo for the 4.9 branch.

[49530] also merged [44176], [45445], and [49267], but these were missed in the commit message.

See #48301, #47767.

#67 @desrosj
3 months ago

In 50240:

Build/Test Tools: Correct svn:mergeinfo for the 4.8 branch.

[49531] also merged [44176], [45445], and [49267], but these were missed in the commit message.

See #48301, #47767.

#68 @desrosj
3 months ago

In 50241:

Build/Test Tools: Correct svn:mergeinfo for the 4.7 branch.

[49532] also merged [44176], [45445], and [49267], but these were missed in the commit message.

See #48301, #47767.

#69 @desrosj
3 months ago

In 50242:

Build/Test Tools: Correct svn:mergeinfo for the 4.6 branch.

[49533] also merged [44176], [45445], and [49267], but these were missed in the commit message.

See #48301, #47767.

#70 @desrosj
3 months ago

In 50243:

Build/Test Tools: Backport the local Docker environment to the 4.5 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.5 branch and converts the Travis test jobs to utilize this environment for easier and more consistent testing.

Merges [44176,45445,45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49267,49335,49358,49360,49362] to the 4.5 branch.
See #48301, #47767.

#71 @desrosj
3 months ago

In 50244:

Build/Test Tools: Backport the local Docker environment to the 4.4 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.4 branch.

Merges [44176,45445,45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49267,49335,49358,49360,49362] to the 4.4 branch.
See #48301, #47767.

#72 @desrosj
3 months ago

In 50245:

Build/Test Tools: Backport the local Docker environment to the 4.3 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.3 branch.

Merges [44176,45445,45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49267,49335,49358,49360,49362] to the 4.3 branch.
See #48301, #47767.

#73 @desrosj
3 months ago

In 50246:

Build/Test Tools: Backport the local Docker environment to the 4.2 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.2 branch.

Merges [44176,45445,45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49267,49335,49358,49360,49362] to the 4.2 branch.
See #48301, #47767.

#74 @desrosj
3 months ago

In 50247:

Build/Test Tools: Backport the local Docker environment to the 4.1 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.1 branch.

Merges [44176,45445,45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49267,49335,49358,49360,49362] to the 4.1 branch.
See #48301, #47767.

#75 @desrosj
3 months ago

In 50248:

Build/Test Tools: Backport the local Docker environment to the 4.0 branch.

This commit introduces the Docker-based local WordPress development environment to the 4.0 branch.

Merges [44176,45445,45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49267,49335,49358,49360,49362] to the 4.0 branch.
See #48301, #47767.

#76 @desrosj
3 months ago

In 50249:

Build/Test Tools: Backport the local Docker environment to the 3.9 branch.

This commit introduces the Docker-based local WordPress development environment to the 3.9 branch.

Merges [44176,45445,45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49267,49335,49358,49360,49362] to the 3.9 branch.
See #48301, #47767.

#77 @desrosj
3 months ago

In 50250:

Build/Test Tools: Backport the local Docker environment to the 3.8 branch.

This commit introduces the Docker-based local WordPress development environment to the 3.8 branch.

Merges [44176,45445,45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49267,49335,49358,49360,49362] to the 3.8 branch.
See #48301, #47767.

#78 @desrosj
3 months ago

  • Resolution set to fixed
  • Status changed from assigned to closed

In 50251:

Build/Test Tools: Backport the local Docker environment to the 3.7 branch.

This commit introduces the Docker-based local WordPress development environment to the 3.7 branch.

Merges [44176,45445,45745,45762,45783-45784,45800,45819,45885,46320,46999,47225,47912,48121,49267,49335,49358,49360,49362] to the 3.7 branch.
See #47767.
Fixes #48301.

#79 @desrosj
3 months ago

In 50252:

Build/Test Tools: Correct svn:mergeinfo for the 3.9 branch.

[30549] was also merged in [50249].

See #48301.

#80 @desrosj
3 months ago

In 50253:

Build/Test Tools: Correct svn:mergeinfo for the 3.8 branch.

[30549] was also merged in [50250].

See #48301.

#81 @desrosj
3 months ago

In 50254:

Build/Test Tools: Correct svn:mergeinfo for the 3.7 branch.

[30549] was also merged in [50251].

See #48301.

#82 @SergeyBiryukov
3 months ago

  • Milestone changed from Future Release to 5.7

This ticket was mentioned in Slack in #core by sergey. View the logs.


3 months ago

Note: See TracTickets for help on using tickets.