-
Notifications
You must be signed in to change notification settings - Fork 10.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactoring Task Infrastructure #41202
Conversation
NPM package names _must_ either be single-word or have a scope. The current structure is unsupported and has been changed. The new package name is `@woocommerce/admin-library`.
NPM requires names to be single-word or have a scope. The current name is not valid. The package has been renamed `@woocommerce/shortcode-assets` to better match its purpose.
In order to prevent supply-chain attacks we have renamed the package. The new name is `@woocommerce/plugin-woocommerce`.
As part of the prevention of supply chain attacks we are renaming the package `@woocommerce/plugin-woocommerce-beta-tester`.
As part of preventing supply chain attacks, the package was renamed `@woocommerce/plugin-woo-ai`.
As part of the prevention of supply chain attacks the package has been renamed to `@woocommerce/plugin-woocommerce-docs`.
Since we are using `syncpack`, we have no reason to use the overrides.
We're adding this to _every_ package since they have their own configuration and scripts to run. This also keeps them isolated so that they can operate independently.
We can use a PNPM hook to make sure that the dependencies are accounted for in the fingerprint. This script scans through all of the packages with Wireit and adds the outputs for linked dependencies.
We're going to use an automatic script to make these changes.
We will never run all tests concurrently so this is better.
There's quite a bit of work needed in this file but I'll come back to that later when I can review it all in more detail.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jonathansadowski I've left a few comments and created some issues that weren't directly related to this PR. I did not find any functional issues in my testing of build and testing scripts. I did not test any of the release related scripting.
@ObliviousHarmony Nice work. Other than the comments I left it would be great to have this rebased to current trunk
and have CI pass before merging. IIRC, this branch is about 150 commits behind trunk.
I've tested some of the release-related things... namely building release zips, as well as the tooling used for code-freeze, none of that broke, though I wouldn't expect the latter to. I also didn't discover any functional issues, though I still have a list of things I wanted to check, and I'm not sure I will ahead of the holiday weekend, but that list is entirely related to the changes to I didn't notice any functional issues with anything I've checked so far, and the things I wanted to check in the changes to |
Since `pnpm` defaults to `run` unless a built-in command exists we don't really need to use `run`.
This takes the lock file from `trunk` and runs an install on it. This should remove any accidental dependency changes caused by the PR.
1f2ed21
to
cad438e
Compare
There is currently a bug with `pnpm` that needs fixed first.
This reverts commit 96a973b.
Submission Review Guidelines:
Changes proposed in this Pull Request:
This pull request makes a number of changes to our task orchestration infrastructure in order to introduce consistency and significantly improve cache performance. Generally speaking, from the user-perspective, there should be very little changed by this pull request.
Note: I chose to batch the changes in this PR so that it will have a minimal impact on developer experience by being merged at the same time.
Closes #40954, #40952, #40953.
How to test the changes in this Pull Request:
Using the WooCommerce Testing Instructions Guide, include your detailed testing instructions:
pnpm --filter='@woocommerce/plugin-woocommerce' build
pnpm --filter='@woocommerce/plugin-woocommerce' lint
pnpm --filter='@woocommerce/plugin-woocommerce' build
Changelog entry
Significance
Type
Message
Comment