This adds support for using the `pnpm utils ci-jobs` command in our `ci.yml` file. One of the bigger benefits to this change too is that we're now distributing a bundled version of the utils tool. This lets us run it without actually having to install the repo and will let us speed up any workflows that currently do.
* Fix "rm: .git/hooks: No such file or directory" error in `pnpm install`.
* Add changelog.
* Use "rm -rf" instead of "test" command on .git/hooks directory.
We use the "-f" flag so that it does not throw error when the directory does not exist.
* Remove -- -- from scripts that fixed issue in pnpm 6, fix a couple TS issues in sep packages
* Minor fixes to analyzer scripts and doco based on pnpm 7
* Add dompurify types to data package to avoid TS errors
* Remove pnpx in favor of pnpm exec
* Modify the code analyzer to respect pnpm version if present.
* Update instructions for running recursive lint, add comments to explain
This updates Turborepo and adjusts the output caching for `woocommerce/client/legacy` and `woocommerce/client/admin`. The result is that build outputs in `plugins/woocommerce/assets` should be stored correctly.
* Add GitHub action and pre-push hook for syncpack for react and react-dom
* Fix typo in pre-push script
* Don't execute suggested command to fix mismatches automatically.
* Update react and react-dom to 17.0.2
* Move changelog check to last, so that pre-push still fails if check isn't successful
* Add changelog files
* Correct issue with syncpack.yml referencing an internal action
* Add command to top-level package.json for fixing mismatches
* Update syncpack action to only run when package.json files are affected
* Update workflow to just run syncpack list-mismatches
* Add version pinning to syncpackrc
* Change package json commands and turbo repo config to allow for greatly simplifying running turbo
* Remove require-turbo script which was causing caching issues
* Colorize CI output from scripts
* Add missing changelog script to extend-cart-checkout-block
This replaces all `nx` commands with `turbo` commands and removes Nx from the repository. All of the `project.json` files have been removed and any commands that broke with Turborepo have been adjusted.