Commit Graph

89 Commits

Author SHA1 Message Date
Ron Rennick 4fa2e3822c
Update the monorepo to node v20 (#45148)
* test bumping node to v18

* remove community contributor condition from review assignment

* Add changefile(s) from automation for the following project(s): @woocommerce/tracks, @woocommerce/onboarding, @woocommerce/number, @woocommerce/notices, @woocommerce/navigation, @woocommerce/internal-js-tests, @woocommerce/extend-cart-checkout-block, @woocommerce/expression-evaluation, @woocommerce/explat, @woocommerce/experimental, @woocommerce/eslint-plugin, @woocommerce/dependency-extraction-webpack-plugin, @woocommerce/date, @woocommerce/data, @woocommerce/customer-effort-score, @woocommerce/currency, @woocommerce/csv-export, @woocommerce/create-woo-extension, @woocommerce/create-product-editor-block, @woocommerce/components, @woocommerce/api, @woocommerce/admin-e2e-tests, woocommerce-blocks, woocommerce-beta-tester, woocommerce, woo-ai

* bump node to v20

* Add changefile(s) from automation for the following project(s): @woocommerce/tracks, @woocommerce/onboarding, @woocommerce/number, @woocommerce/notices, @woocommerce/navigation, @woocommerce/internal-js-tests, @woocommerce/extend-cart-checkout-block, @woocommerce/expression-evaluation, @woocommerce/explat, @woocommerce/experimental, @woocommerce/eslint-plugin, @woocommerce/dependency-extraction-webpack-plugin, @woocommerce/date, @woocommerce/data, @woocommerce/customer-effort-score, @woocommerce/currency, @woocommerce/csv-export, @woocommerce/create-woo-extension, @woocommerce/create-product-editor-block, @woocommerce/components, @woocommerce/api, @woocommerce/admin-e2e-tests, packages/php/remote-specs-validation, woocommerce-blocks, woocommerce-beta-tester, woocommerce, woo-ai

* Add changefile(s) from automation for the following project(s): @woocommerce/tracks, @woocommerce/onboarding, @woocommerce/number, @woocommerce/notices, @woocommerce/navigation, @woocommerce/internal-js-tests, @woocommerce/extend-cart-checkout-block, @woocommerce/expression-evaluation, @woocommerce/explat, @woocommerce/experimental, @woocommerce/eslint-plugin, @woocommerce/dependency-extraction-webpack-plugin, @woocommerce/date, @woocommerce/data, @woocommerce/customer-effort-score, @woocommerce/currency, @woocommerce/csv-export, @woocommerce/create-woo-extension, @woocommerce/create-product-editor-block, @woocommerce/components, @woocommerce/api, @woocommerce/admin-e2e-tests, woocommerce-blocks, woocommerce-beta-tester, woocommerce, woo-ai

* add blocks eslint-plugin-woocommerce to project workspace

* add e2e-environment as a peer to e2e-utils

* restore version on @woocommerce/api

* update lock file

* move e2e-environment to devDependencies

* add undefined location check to admin js test

---------

Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-04-12 13:49:55 -03:00
Adrian Moldovan 7d6d2c94dd
Include e2e, api and performance tests in ci.yml (#45190)
Co-authored-by: Christopher Allford <6451942+ObliviousHarmony@users.noreply.github.com>
Co-authored-by: Ron Rennick <ron@ronandandrea.com>
2024-03-27 17:21:49 +02:00
jonathansadowski 1402ac24d8
Update the monorepo-utils gitignore to only include index.js and its license file. (#44932) 2024-02-23 13:56:18 -06:00
Paul Sealock 4061bbfc2b
Changelog Auto Add script: Fix property chaining (#44570)
Fix property chaining
2024-02-14 11:04:56 -04:00
jonathansadowski a7f9139b33
Fix post-merge CI / update ci-jobs util to make base-ref optional (#44055)
* Update ci-jobs util to make base-ref optional

* Fix linting error

* Update baseRef option to be easier to read in ci.yml
2024-01-26 13:52:55 -06:00
jonathansadowski 9b98a85380
Remove docs plugin from monorepo (#44013)
* Remove docs plugin from monorepo

* Add language to md-docs readme

* Fix lint error in blocks

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-23 16:16:07 -06:00
Ron Rennick 80b4ec13e3
update Github with the latest build (#43830)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-01-23 15:30:55 -04:00
Ron Rennick 8a7ffac49b
add post tags support to docs manifest generator (#43575)
* Add tags to some readme files

* add post tags support

---------

Co-authored-by: Jacklyn Biggin <hi@jacklyn.dev>
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-01-16 12:54:37 -05:00
Christopher Allford 95bc1189e5
Update `wireit` & Optimize Builds (#43595)
This bumps the version to 0.14.3 so that we can take advantage of some
upstream improvements. It also makes some changes to the way our
builds and watches work to minimize the number of unnecessary
Node processes involved in the execution.
2024-01-15 14:06:55 -08:00
Christopher Allford 5425a9536a
Enhance CI Change Detection (#43596)
Realistically speaking, if a `package.json` file is changed we should consider it to be a change
for the entire package. This helps because it might impact the config itself. The same is true
of changes to `pnpm-lock.yaml` since those may update dependencies for any package. I
have also added a `-f` option to the CI Jobs CLI command to trigger all jobs.
2024-01-15 13:30:31 -08:00
Christopher Allford 758df4854d
Use `ci-jobs` Utility For `ci.yml` Matrix (#43532)
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.
2024-01-12 20:32:14 -08:00
Christopher Allford 556cf46523
Added Monorepo CI Command (#43345)
* Added Config Object Types

* Added CI Config Parsing

* Added Package Loader

This is a convenience method for loading the package JSON file with support for caching the
files that have already been imported.

* Removed Unnecessary Package Values

* Specified Node Dependencies

* Added Test Environment Config Parsing

* Changed Internal Config Representation

For convenience it makes more sense to have a single
type of Job interface that we can process. This avoids
having to complicate checks when we output them.

* Added Workspace Dependency Graph

Using `pnpm list` we are able to build a graph of
all of the workspace projects and their dependencies.
This can be used to handle change cascades across
a project's dependencies.

* Added Changed File Detection

We can use `git` to figure out what files have changed
and associate them with the respective projects.
This will let us identify what jobs to run based on
the changes that have happened to a project.

* Added Test Environment Config Parsing Tests

* Added CI Config To Project Graph

In the interest of making it easier to process the jobs
we will store the CI config in the graph nodes.

* Changed Project Graph Build Output

Our usage of the graph depends a lot on how we
are choosing to use it. Instead of returning all of
the nodes we will return the root.

* Added Change-Based Job Creation

We can now marry the config, file changes, and project graph
to output jobs. This supports checking the changes
as well as cascade keys for test jobs.

* Added Job Test Env Parsing

The ideal time to parse all of the config values for the
job's test environment is when creating the job.

* Added Command Index

With everything in place we can now add the command.
In addition to that, I've fixed a few bugs that appeared
when testing out the command locally. Since
we aren't changing the CI config in this PR
we can't easily test the actual command.

* Fixed Typo
2024-01-09 15:15:08 -04:00
Ron Rennick 60b3aa8ed8
add support for custom document and category titles (#43340)
* add support for custom document and category titles

* remove the s in the source file instead of the manifest

---------

Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-01-05 18:20:31 -05:00
rodelgc 12e65af8ca
Fix WooAF changelog typo and release date (#43254)
* Fix typo

* Fix `acceleratedReleaseDate` output

* Comment unnecessary steps, jobs

* Do only a dry-run

* Revert "Do only a dry-run"

This reverts commit a41ea99401.

* Revert "Comment unnecessary steps, jobs"

This reverts commit 97985a0ad0.

* Add changelog
2024-01-03 12:56:39 -06:00
jonathansadowski 2700d80614
Fix async version bump bug (#43122) 2023-12-26 10:49:48 -08:00
Christopher Allford bf29119032
Updated PNPM to ^8.12.1 (#42860) 2023-12-18 20:31:49 +13:00
Christopher Allford 4e89debd0c
Fix Jest Preset (#42707)
When using a preset we need to keep in mind that the transformation
paths are relative to the preset, not the consuming package. We get
around this by using `<rootDir>` in the transform paths. However,
doing this means fixing the root directory for all of the jest tests.
This keeps the tests working in the same way but lets us fix the
preset too.
2023-12-12 09:58:13 -08:00
Christopher Allford 96af36bf1f Locked `wireit` Version 2023-12-09 21:56:12 -08:00
Christopher Allford fa011a431b Removed Unnecessary `run` From `pnpm` 2023-12-09 14:36:22 -08:00
Christopher Allford e9484c33f4 Removed Unnecessary `run` Usage
Since `pnpm` defaults to `run` unless a built-in
command exists we don't really need to use `run`.
2023-12-09 14:31:56 -08:00
Christopher Allford 3d79d5f204 Removed Turbo References 2023-12-09 14:22:04 -08:00
Christopher Allford df32d8e967 Added `wireit` Dependency
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.
2023-12-09 13:11:15 -08:00
Christopher Allford c936b5339e Removed Unnecessary `.gitignore` Files 2023-12-09 13:01:12 -08:00
Christopher Allford 5bbb9edc6d Renamed WooCommerce Plugin Package
In order to prevent supply-chain attacks we have renamed
the package. The new name is `@woocommerce/plugin-woocommerce`.
2023-12-09 12:59:24 -08:00
Christopher Allford 3a88cc739a Updated Dependencies 2023-12-09 07:12:20 -08:00
Ron Rennick 47f832453f fix linting 2023-12-08 13:04:21 -04:00
Ron Rennick eb763901fa add manifestignore support to generate docs manifest tool 2023-12-08 12:06:55 -04:00
Ron Rennick 488a970b82
Fix category title and add post_title to docs manifest (#41715) 2023-12-07 13:50:44 -04:00
Christopher Allford 8c6b414fe0
Revert "Refactoring Task Infrastructure" (#41928)
Revert "Refactored Task Infrastructure (#41202)"

This reverts commit 96a973b9fa.
2023-12-06 11:36:12 -08:00
Christopher Allford 96a973b9fa
Refactored Task Infrastructure (#41202)
* Fixed NPM packages with invalid names.
* Renamed plugin packages.
* Standardized package NPM scripts.
* Replaced Turborepo with Wireit.
2023-12-06 09:32:32 -08:00
Christopher Allford 88969742f2
Regenerate PNPM Lock File & Fix Errors (#41830) 2023-12-05 00:36:30 -08:00
Ron Rennick b2cf209891 fix linting 2023-11-30 22:05:01 -04:00
Ron Rennick cf2cd16689 fix linting for line length 2023-11-30 20:03:39 -04:00
Ron Rennick 10fdd4b993 fix optional parameter type 2023-11-30 19:19:36 -04:00
Christopher Allford c6b74ddafa
Revert "Resolve PNPM Lock File Errors" (#41828)
Revert "Resolve PNPM Lock File Errors (#41800)"

This reverts commit 2550558a13.
2023-11-30 14:55:35 -08:00
Ron Rennick b01a80f06c fix one more linting 2023-11-30 17:33:02 -04:00
Ron Rennick 35fdf3286f fix linting 2023-11-30 17:20:36 -04:00
Ron Rennick e7b1af8a06 improve category properties, s/readme/README file names 2023-11-30 16:32:52 -04:00
Ron Rennick 021f0be175 Merge branch 'trunk' into tools/manifest-post-category-title 2023-11-30 15:41:10 -04:00
Christopher Allford 2550558a13
Resolve PNPM Lock File Errors (#41800)
This makes the lock file constraints more specific to prevent the
backward incompatible types from WordPress types using the caret
constraint.
2023-11-30 09:33:34 -08:00
Ron Rennick a5f9014f9b remove stray spaces 2023-11-29 16:47:08 -04:00
Ron Rennick d73d79d2ec add category_slug, allow post_title to be null, fix linting 2023-11-29 16:45:32 -04:00
Ron Rennick 322f433455 fix category title, add post_title to docs manifest 2023-11-27 14:52:48 -04:00
Jonathan Sadowski 4d6d57e63c Update code-freeze tool to work with accelerated 2023-11-13 15:24:21 -06:00
jonathansadowski 0d6dfb6d3d
Update the automatically generated changelog filename to include PR number (#41000) 2023-10-25 18:53:17 +02:00
Christopher Allford 1c30563ffc
Separate PHP and JS Unit Tests (#40639)
Since some projects might have both kinds of tests we are
going to have a `test:php` and a `test:js` script for each.
2023-10-06 15:41:47 -07:00
jonathansadowski 44a78870b3
Update the version bump command to support accelerated releases (#40608)
* Update the version bump command to support accelerated releases

* Appease Linter

* Update Accel Release check to only allow for 4-digit numbers
2023-10-04 17:42:51 -05:00
Christopher Allford b6674ef0c1
Fixed PR Changelog Generation Workflow (#40410)
This adds support for using double-quotes in the
description of the PR.
2023-09-26 14:26:12 -07:00
Christopher Allford deee539245
Use Correct PR Numbers In Code Freeze Changelog Command (#40096)
* Fixed Changelog PR Number Markdown

This makes the regex for replacing the number with a
markdown link more strict. Previously it was converting
[#PRNUM] to [[#PRNUM]] and would also add a markdown link
even if one was only present. This solves those two issues.

* Deepen Code Freeze Changelog Checkout

By default our remote branch checkout performs a shallow checkout. This
results in the Jetpack Changelogger appending the wrong PR number
when we generate the changelog for the `readme.txt` file. Here we are
deepening the checkout to resolve the problem.
2023-09-12 10:49:03 -05:00
Sam Seay 3e9656187a
Add support to send files in Slack CLI tool (#39778)
* Add a file upload command to the slack CLI.

* Clean up, add file command to program.

* Rename the command to 'file'

* Better error handling, don't ask for file info.
2023-08-17 13:06:37 -05:00