Commit Graph

40 Commits

Author SHA1 Message Date
Sam Seay 52bc1879bb
Allow composing code analyzer change detections (hooks, templates, db, schema) (#37161)
* Add granular command for scanning individual change types.

* documentation and clean up

* Refactor the API to be more intuitive and memorable.

* Update the documentation.

* Update tools/code-analyzer/src/commands/analyzer/analyzer-scan.ts

Co-authored-by: jonathansadowski <jonathansadowski@users.noreply.github.com>

---------

Co-authored-by: jonathansadowski <jonathansadowski@users.noreply.github.com>
2023-03-21 09:36:30 -05:00
Sam Seay 1834621d1a
Update the @woocommerce/eslint-plugin and fix bugs (#36988) 2023-03-02 11:36:38 +13:00
Sam Seay 48cd5917ed
Fix a minor bug in code analyzer and improve logging for when no changes exist (#36915) 2023-03-01 12:34:19 +13:00
Sam Seay 4b345402ce
Fix one last case of not skipping hooks when cloning in code analyzer (#36912)
Fix one last case of not skipping hooks when cloning.
2023-02-22 20:50:45 +13:00
Sam Seay 13b09da2cf
Add post checkout pnpm install to git hooks (#36731)
* Add post checkout pnpm install to help devs, disable hooks on pre push.
* Disable hooks in all simpleGit instances where checkout is run.
2023-02-21 08:42:44 +13:00
Leif Singer d0a2b582fe
Consolidate eslint versions (#36700)
* pin eslint in .syncpackrc

run `pnpm run sync-dependencies` to ensure pinned version is used across projects, then run `pnpm install` to update `pnpm-lock.yaml`

* add changelog files

ran `pnpm run --no-bail --filter='[HEAD^1]' changelog add --significance=patch --type=dev --entry='Update eslint to 8.32.0 across the monorepo.'`

* re-run `pnpm install` to fix what broke while merging
2023-02-02 23:25:04 +13:00
jonathansadowski f8d8a42fd7
Add PR links to release post template output, and allow blog ID to be specified. (#36026)
* Update release template to be editable

* Correct issues in README

* Update to allow edits; refactor auth

* Update templates to add PR link

* Remove commented test code

* Update tools/code-analyzer/src/lib/scan-changes.ts

Co-authored-by: Sam Seay <samueljseay@gmail.com>

* Address typescript issues; prettier

* Resolve more typescript issues

Co-authored-by: Sam Seay <samueljseay@gmail.com>
2023-01-23 08:31:59 -06:00
Sam Seay df3687a79f
Fix a bug where changes were added to the change map via callback (#35966) 2022-12-15 11:55:52 +13:00
Sam Seay 3cc47d245d
Allow use of pathspecs to limit the scope of generating a diff in Code Analyzer (#35925) 2022-12-13 10:22:13 +13:00
Sam Seay dedbf7b492
Migrate uses of ::set-output in code-analyzer to setOutput. (#35895)
* Migrate uses of ::set-output to setOutput.
2022-12-12 19:41:00 +13:00
Paul Sealock 18b1b0d535
WP-Env: await stopWPEnv so Docker containers can close (#35634)
await stopWPEnv
2022-11-21 12:37:25 +13:00
Roy Ho 20bb576fb6
Restore previously installed pnpm version (#35389) 2022-10-31 12:29:43 -07:00
Roy Ho 8d73a03f97
Add line number reference links to release posts for hooks (#35354) 2022-10-27 11:03:19 -07:00
Sam Seay 9b9abd1eae
Replace outdated readme examples of using pnpm (#35064) 2022-10-14 16:14:45 +13:00
Sam Seay 55b49cb50a
Fix and consolidate linting across the monorepo (#35012) 2022-10-12 15:05:01 +13:00
Sam Seay aec442139f
Update pnpm once again to fix issues with auto-install-peers (#35007) 2022-10-10 16:59:51 +13:00
Sam Seay 59e0c80f3c
Update the pnpm constraint to 7.12.2+ now auto-install is fixed. (#34872) 2022-10-03 10:52:42 +13:00
Joshua T Flowers 3fd736c72f
Update plugins installer component to TS, Fix TS bugs and Syncpack TypeScript (#34787) 2022-09-30 10:59:07 +13:00
Sam Seay c0fe3ec18f
Fix pnpm version to 7.11.0 in engines and in CI (#34773) 2022-09-27 11:30:52 +13:00
Sam Seay 04b74c1053
Upgrade to pnpm 7 (#34661)
* 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
2022-09-16 09:21:42 +12:00
Sam Seay 614d98ff60
Extract the scanning functionality from code-analyzer, move common code into a separate package (#34600)
Also add contributor command and auto tagging to release-post-generator (#34608)
2022-09-11 09:55:53 +12:00
Sam Seay 4ca9c5225d
Port the release generator from Woorelease extensions to tools (#34496) 2022-09-06 15:51:28 +12:00
Sam Seay 7f5f47247c
Code-analyzer: Perform build between checkouts to avoid failures (#34438)
Fixes #34196
2022-08-25 11:50:31 +12:00
Sam Seay 41a276c49b
Pass the version argument explicitly to code-analyzer, introduce a new command that determines latest major/minor (#34404)
This also adds a new command `major_minor` that contains some of the old logic of `getPluginData` to determine the latest major/minor version of WooCommerce
2022-08-22 16:29:59 +12:00
Sam Seay c10d34742b
Ensure that schema and DB changes are reported to the changes JSON file, fix reporting bugs(#34238) 2022-08-11 10:49:20 +12:00
Sam Seay 5becf47d60
Simplify turbo commands (#34055)
* 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
2022-08-05 12:03:17 +12:00
Sam Seay ecd17484bb
Generate a JSON file with changes from code-analyzer (#33955) 2022-07-21 19:37:59 +12:00
Sam Seay fa5c2430ac
Migrate the analyzer's DB scan to the tmp repo clone approach (#33919)
Now the entire `code-analyzer` process operates on a temporary clone.
2022-07-18 16:10:04 +12:00
Sam Seay 5157bcf934
Use simple-git to produce diffs in the code analyzer (#33837)
In code-analyzer, clone the repo locally in a tmp folder and perform git operations on the copy instead of local files.
2022-07-14 15:39:38 +12:00
Paul Sealock a2b6b9bd2d
Analyzer: Fix regex to handle multiple changes in a single file (#33651) 2022-07-01 07:12:34 +12:00
Paul Sealock c617c70d46
Analyzer: Remove check for hook without description (#33528)
Remove check for hook without description
2022-06-22 17:00:33 +12:00
Paul Sealock bdc4886acc
Analyzer: Surface hook descriptions (#33396) 2022-06-17 11:47:24 +12:00
Paul Sealock 7fcba06a62
Analyzer CLI: Allow commit hashes for comparisons (#33356) 2022-06-10 10:31:39 +12:00
Christopher Allford b7931409f2
Migrate From Nx to Turborepo (#33079)
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.
2022-06-09 14:40:07 -07:00
Paul Sealock c3fd7134cc
Analyzer: Turn on comments for database changes (#33224) 2022-06-09 09:25:49 +12:00
Paul Sealock be15a35038
Analyzer CLI: Add other schemas to scan (#33220)
* Add schema

* update to new filepath

* test

* Revert "test"

This reverts commit d05a731a46.

* remove unused import

* add products and orders scanning

* escape slashes

* save

* save

* save

* test

* save

* save

* better descriptions

* moar tests

* Revert "moar tests"

This reverts commit ad552db45b.

* remove test

* better doc blocks

* check port first

* stop wp-env after operation is done

* remove ProductAttributesLookup
2022-06-08 15:11:55 +12:00
Paul Sealock 37905dd178
Analyzer CLI: Add Database scanning (#33084) 2022-05-27 07:52:39 +12:00
Paul Sealock 5de604e490
Add schema (#33095) 2022-05-20 11:08:51 +12:00
Paul Sealock 373ad382b5
Analyzer CLI: Refactor main file (#33081) 2022-05-20 10:02:40 +12:00
Claudio Sanches 2f4f8277bf
CLI tool and GH workflow to highlight PR changes (#32063) 2022-05-17 13:47:17 +12:00