Skip to content
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

Update WordPress Monorepo #50922

Merged
merged 8 commits into from
Mar 24, 2021
Merged

Update WordPress Monorepo #50922

merged 8 commits into from
Mar 24, 2021

Conversation

noahtallen
Copy link
Contributor

@noahtallen noahtallen commented Mar 9, 2021

Changes proposed in this Pull Request

Alternative to #50470 with our own changes, such as deduplication.

Testing instructions

Some items we need to verify which consume this on some level:

  • ETK
  • Gutenboarding
  • Blocks
  • Components
  • Calypso application
  • others?

@noahtallen noahtallen added Framework [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. labels Mar 9, 2021
@noahtallen noahtallen requested a review from a team March 9, 2021 21:57
@noahtallen noahtallen self-assigned this Mar 9, 2021
@noahtallen noahtallen requested a review from a team as a code owner March 9, 2021 21:57
@matticbot
Copy link
Contributor

@noahtallen noahtallen force-pushed the update/wp-monorepo-non-renovate branch from 4249cec to 4be2f4b Compare March 9, 2021 22:00
@matticbot
Copy link
Contributor

matticbot commented Mar 9, 2021

Here is how your PR affects size of JS and CSS bundles shipped to the user's browser:

App Entrypoints (~4108 bytes removed 📉 [gzipped])

name                   parsed_size           gzip_size
entry-gutenboarding        -8906 B  (-0.5%)    -2922 B  (-0.6%)
entry-main                 +1357 B  (+0.1%)     +310 B  (+0.1%)
entry-domains-landing       +504 B  (+0.1%)      +91 B  (+0.1%)
entry-login                 +471 B  (+0.1%)     +135 B  (+0.1%)

Common code that is always downloaded and parsed every time the app is loaded, no matter which route is used.

Sections (~7040 bytes added 📈 [gzipped])

name                          parsed_size           gzip_size
media                             +5300 B  (+1.1%)     +931 B  (+0.7%)
settings                          +2978 B  (+0.5%)     +719 B  (+0.4%)
account                           +2839 B  (+0.5%)     +687 B  (+0.5%)
hosting                           +2627 B  (+0.9%)     +332 B  (+0.4%)
reader                            +2594 B  (+0.4%)     +313 B  (+0.2%)
plugins                           +1416 B  (+0.3%)     +204 B  (+0.1%)
jetpack-connect                   +1416 B  (+0.2%)     +204 B  (+0.1%)
purchases                         +1221 B  (+0.1%)     +658 B  (+0.2%)
site-purchases                     +784 B  (+0.1%)     +507 B  (+0.2%)
checkout                           +728 B  (+0.1%)     +133 B  (+0.0%)
gutenberg-editor                   +320 B  (+0.1%)      +51 B  (+0.0%)
devdocs                            +281 B  (+0.1%)      +33 B  (+0.1%)
wp-super-cache                     +246 B  (+0.1%)     +503 B  (+0.5%)
jetpack-cloud-pricing              +246 B  (+0.1%)     +498 B  (+0.5%)
settings-writing                   +176 B  (+0.0%)      +31 B  (+0.0%)
privacy                            +140 B  (+0.0%)     +174 B  (+0.2%)
security                           +132 B  (+0.0%)      +35 B  (+0.0%)
plans                              +130 B  (+0.0%)     +291 B  (+0.1%)
email                              +130 B  (+0.0%)     +121 B  (+0.1%)
domains                            +130 B  (+0.0%)     +105 B  (+0.0%)
site-blocks                         +65 B  (+0.0%)       -4 B  (-0.0%)
notification-settings               +65 B  (+0.0%)       -4 B  (-0.0%)
me                                  +65 B  (+0.0%)       -4 B  (-0.0%)
help                                +65 B  (+0.0%)       -4 B  (-0.0%)
happychat                           +65 B  (+0.0%)       -4 B  (-0.0%)
account-close                       +65 B  (+0.0%)       -4 B  (-0.0%)
settings-security                   +63 B  (+0.0%)     +158 B  (+0.1%)
settings-performance                +63 B  (+0.0%)     +158 B  (+0.1%)
settings-discussion                 +63 B  (+0.0%)     +158 B  (+0.2%)
posts-custom                        +63 B  (+0.0%)     +178 B  (+0.1%)
posts                               +63 B  (+0.0%)     +178 B  (+0.1%)
marketing                           +63 B  (+0.0%)     +158 B  (+0.1%)
earn                                +63 B  (+0.0%)     +175 B  (+0.2%)
woocommerce                         +53 B  (+0.0%)       -5 B  (-0.0%)
jetpack-cloud-partner-portal        +53 B  (+0.0%)      +15 B  (+0.0%)
zoninator                           -12 B  (-0.0%)       -3 B  (-0.0%)
woocommerce-installation            -12 B  (-0.0%)       -3 B  (-0.0%)
themes                              -12 B  (-0.0%)       -3 B  (-0.0%)
theme                               -12 B  (-0.0%)       -3 B  (-0.0%)
stats                               -12 B  (-0.0%)       -3 B  (-0.0%)
sites                               -12 B  (-0.0%)       -3 B  (-0.0%)
settings-jetpack                    -12 B  (-0.0%)       -3 B  (-0.0%)
sensei                              -12 B  (-0.0%)       -3 B  (-0.0%)
scan                                -12 B  (-0.0%)       -3 B  (-0.0%)
preview                             -12 B  (-0.0%)       -3 B  (-0.0%)
people                              -12 B  (-0.0%)       -3 B  (-0.0%)
pages                               -12 B  (-0.0%)       -3 B  (-0.0%)
migrate                             -12 B  (-0.0%)       -3 B  (-0.0%)
jetpack-search                      -12 B  (-0.0%)       -3 B  (-0.0%)
jetpack-cloud-settings              -12 B  (-0.0%)       -3 B  (-0.0%)
jetpack-cloud                       -12 B  (-0.0%)       -3 B  (-0.0%)
import                              -12 B  (-0.0%)       -3 B  (-0.0%)
home                                -12 B  (-0.0%)       -3 B  (-0.0%)
hello-dolly                         -12 B  (-0.0%)       -3 B  (-0.0%)
google-my-business                  -12 B  (-0.0%)       -3 B  (-0.0%)
export                              -12 B  (-0.0%)       -3 B  (-0.0%)
customize                           -12 B  (-0.0%)       -3 B  (-0.0%)
concierge                           -12 B  (-0.0%)       -3 B  (-0.0%)
comments                            -12 B  (-0.0%)       -3 B  (-0.0%)
backup                              -12 B  (-0.0%)       -3 B  (-0.0%)
activity                            -12 B  (-0.0%)       -3 B  (-0.0%)

Sections contain code specific for a given set of routes. Is downloaded and parsed only when a particular route is navigated to.

Async-loaded Components (~1498 bytes added 📈 [gzipped])

name                                                      parsed_size           gzip_size
async-load-design-wordpress-components-gallery                +8362 B  (+1.1%)    +2612 B  (+1.4%)
async-load-design-blocks                                      +8313 B  (+0.3%)    +1379 B  (+0.2%)
async-load-calypso-post-editor-media-modal                    +5312 B  (+1.7%)     +934 B  (+1.0%)
async-load-calypso-post-editor-editor-media-modal             +5312 B  (+1.4%)     +934 B  (+0.9%)
async-load-calypso-blocks-inline-help-popover                 +4852 B  (+1.1%)    +1405 B  (+1.2%)
async-load-calypso-blocks-editor-checkout-modal               +3816 B  (+0.4%)     +663 B  (+0.2%)
async-load-design-playground                                  +2857 B  (+0.2%)     +730 B  (+0.2%)
async-load-design                                             +2857 B  (+0.1%)     +730 B  (+0.2%)
async-load-quick-language-switcher                            +2699 B  (+1.8%)     +638 B  (+1.3%)
async-load-calypso-components-web-preview-component           +2594 B  (+0.5%)     +313 B  (+0.2%)
async-load-calypso-blocks-nav-unification-modal               +2594 B  (+3.2%)     +313 B  (+1.3%)
async-load-automattic-search                                  +2594 B  (+2.4%)     +313 B  (+0.9%)
async-load-calypso-reader-site-stream                         -1166 B  (-1.6%)     -106 B  (-0.4%)
async-load-calypso-reader-search-stream                       -1166 B  (-0.9%)     -106 B  (-0.3%)
async-load-calypso-reader-following-manage                    -1166 B  (-0.7%)     -106 B  (-0.2%)
async-load-calypso-reader-feed-stream                         -1166 B  (-1.6%)     -106 B  (-0.4%)
async-load-calypso-my-sites-current-site-domain-warnings        +67 B  (+0.1%)      +55 B  (+0.4%)
async-load-calypso-reader-sidebar                               +65 B  (+0.1%)       +0 B
async-load-calypso-my-sites-sidebar-unified                     +65 B  (+0.0%)       -7 B  (-0.0%)
async-load-calypso-my-sites-sidebar                             +65 B  (+0.0%)       -7 B  (-0.0%)
async-load-calypso-components-jetpack-sidebar                   +65 B  (+0.1%)       -7 B  (-0.0%)
async-load-calypso-layout-community-translator-launcher         -12 B  (-0.0%)       -4 B  (-0.0%)

React components that are loaded lazily, when a certain part of UI is displayed for the first time.

Legend

What is parsed and gzip size?

Parsed Size: Uncompressed size of the JS and CSS files. This much code needs to be parsed and stored in memory.
Gzip Size: Compressed size of the JS and CSS files. This much data needs to be downloaded over network.

Generated by performance advisor bot at iscalypsofastyet.com.

@sarayourfriend
Copy link
Contributor

sarayourfriend commented Mar 9, 2021

Smoke tested Gutenboarding, everything seems to work but someone from that team should probably take a closer look.

Also took a look through the WP components page in the devdocs and everything looks to be in good shape including our theme overrides.

Lots of unit test failures, however, some of which appear to be legitimate bugs in core:

redirectToJetpack redirect needed 

TypeError: url.indexOf is not a function
    at removeQueryArgs (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@wordpress/url/build/@wordpress/url/src/remove-query-args.js:21:31)
    at getJetpackAuthorizeURL (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/client/my-sites/controller.js:616:14)
    at Object. (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/client/my-sites/checkout/checkout/test/maybe-jetpack-authorize.js:22:28)
    at Object.asyncJestTest (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/jest-jasmine2/build/jasmineAsyncInstall.js:106:37)
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/jest-jasmine2/build/queueRunner.js:45:12
    at new Promise ()
    at mapper (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/jest-jasmine2/build/queueRunner.js:28:19)
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/jest-jasmine2/build/queueRunner.js:75:41
    at processTicksAndRejections (internal/process/task_queues.js:97:5)

This error appears many many times:

TypeError: MutationObserver is not a constructor
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@testing-library/dom/dist/wait-for.js:92:18
    at new Promise ()
    at waitFor (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@testing-library/dom/dist/wait-for.js:40:10)
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@testing-library/dom/dist/wait-for.js:174:54
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@testing-library/react/dist/pure.js:58:22
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@testing-library/react/dist/act-compat.js:60:24
    at batchedUpdates$1 (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/react-dom/cjs/react-dom.development.js:21856:12)
    at act (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/react-dom/cjs/react-dom-test-utils.development.js:929:14)
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@testing-library/react/dist/act-compat.js:59:20
    at new Promise ()
    at asyncAct (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@testing-library/react/dist/act-compat.js:38:14)
    at Object.asyncWrapper (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@testing-library/react/dist/pure.js:57:35)
    at waitForWrapper (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@testing-library/dom/dist/wait-for.js:174:35)
    at _callee$ (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/packages/shopping-cart/test/cart-actions.tsx:228:10)
    at tryCatch (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/regenerator-runtime/runtime.js:63:40)
    at Generator.invoke [as _invoke] (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/regenerator-runtime/runtime.js:293:22)
    at Generator.next (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/regenerator-runtime/runtime.js:118:21)
    at asyncGeneratorStep (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@babel/runtime/helpers/asyncToGenerator.js:3:24)
    at _next (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@babel/runtime/helpers/asyncToGenerator.js:25:9)
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@babel/runtime/helpers/asyncToGenerator.js:32:7
    at new Promise ()
    at Object. (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/@babel/runtime/helpers/asyncToGenerator.js:21:12)
    at Object.asyncJestTest (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/jest-jasmine2/build/jasmineAsyncInstall.js:106:37)
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/jest-jasmine2/build/queueRunner.js:45:12
    at new Promise ()
    at mapper (/home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/jest-jasmine2/build/queueRunner.js:28:19)
    at /home/teamcity-2/buildAgent/work/c4a9d5b38c1dacde/node_modules/jest-jasmine2/build/queueRunner.js:75:41
    at processTicksAndRejections (internal/process/task_queues.js:97:5)

I'm not sure what to make of it, however 🤔

@sarayourfriend
Copy link
Contributor

Okay I have a fix for the indexOf error. I think the test we wrote is actually bad, so I'm just updating the test.

@sarayourfriend
Copy link
Contributor

Okay, @noahtallen and I spent some time 🍐 on the MutationObserver issue. It seems like the issue boils down to the fact that we've got two different JSDom environments being required into our project, one by enzyme and one by testing-library. Similar issues have been documented by other projects: testing-library/react-testing-library#730

The suggested solution is to either: (a) include a polyfill for the MutationObserver API via the mutation-observer package in calypso-build's jest setup; or (b) use the resolutions API for yarn to force JSDom to always resolve to the latest version.

Noah and I couldn't decide which of these was better so we're deferring to @scinos 😀

Additional note: The reason Gutenberg hasn't run into this issue yet is because they don't employ the waitFor... methods from testing-library that employ the MutationObserver. Whatever we choose to do here, we might want to open a PR in core to replicate that to prevent anyone from running into this problem in the future. Of course, that means we should probably weight the polyfill option heavier because Gutenberg doesn't use yarn so the resolutions API is unavailable to them.

Anyway, what do you think @scinos?

@scinos
Copy link
Contributor

scinos commented Mar 10, 2021

Looks like adding an explicit dependency to jest-environment-jsdom fixed the issue.

As you said, this fails because we have two versions of jsdom in our dependency tree, imported by two different dependency chains:

Yarn decides to hoist the former, so node_modules/jsdom points to [email protected].

However, looking at Jest resolution for test environment, it tries to resolve it relative to the project dir (in this case ./node_modules) first, which results in it finding the wrong jsdom. If they would have started relative to jest itself (./node_modules/jest-config/node_modules) they would use the right one.

Adding it as an explicit dependency in package.json is a small hack to force ./node_modules/jsdom to be right version.

.eslintrc.js Show resolved Hide resolved
@scinos
Copy link
Contributor

scinos commented Mar 10, 2021

As this updates several eslint packages, I'm running a full eslint build to see if this would introduce new linting errors.

Edit: Yeah, it does. Two new errors:

image

@noahtallen noahtallen force-pushed the update/wp-monorepo-non-renovate branch from bd75439 to 8ddfbf1 Compare March 10, 2021 22:12
@noahtallen
Copy link
Contributor Author

noahtallen commented Mar 10, 2021

@scinos @sarayourfriend My apologies, I force-pushed after rebasing this on trunk, but forgot to pull the changes you pushed first. (So they are unfortunately missing now...) Could you add them again? Sorry about that!

Edit: I believe we've added back everything now, but feel free to take another look to be sure.

@noahtallen
Copy link
Contributor Author

Thanks for adding that again sara! I just pushed the eslint config fix, as will as a fix for the target: _blank problem.

return (
<li className={ classes } data-tip-target={ props.tipTarget } data-post-type={ props.postType }>
<a
className="sidebar__menu-link"
onClick={ props.onNavigate }
href={ url }
target={ showAsExternal ? '_blank' : null }
rel={ isExternalLink ? 'noopener noreferrer' : null }
Copy link
Contributor Author

@noahtallen noahtallen Mar 10, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: noreferrer includes noopener behavior according to the HTML standard.

@noahtallen noahtallen force-pushed the update/wp-monorepo-non-renovate branch from e9c4aef to 0c8dcca Compare March 10, 2021 23:06
@noahtallen
Copy link
Contributor Author

I've tried adding the dependency on jest-environment-jsdom by running yarn add jest-environment-jsdom -W. Let me know if that was the correct command, @scinos!

At this point, I believe this should be rebased, deduped, and ready for another look.

@scinos scinos force-pushed the update/wp-monorepo-non-renovate branch from 8a14e88 to aea6599 Compare March 11, 2021 06:24
@scinos
Copy link
Contributor

scinos commented Mar 11, 2021

Rebased and deduped.

@sarayourfriend
Copy link
Contributor

Can someone from @Automattic/luna take a look at this just to smoke test Gutenboarding once again?

@ciampo
Copy link
Contributor

ciampo commented Mar 11, 2021

Can someone from @Automattic/luna take a look at this just to smoke test Gutenboarding once again?

@sarayourfriend I just smoke tested Gutenboarding, lookin' good!

Are the changes in the bundle sizes expected?

@sarayourfriend
Copy link
Contributor

Are the changes in the bundle sizes expected?

I believe those are probably due to the new component system integration, though I didn't think they were actually being exported.

@gziolo Is the published @wordpress/components package being built with COMPONENT_SYSTEM_PHASE turned on since the latest releases?

@gziolo
Copy link
Member

gziolo commented Mar 12, 2021

@gziolo Is the published @wordpress/components package being built with COMPONENT_SYSTEM_PHASE turned on since the latest releases?

I think we assume by default it's disabled and in the Gutenberg plugin we enable it through package.json:
https://github.com/WordPress/gutenberg/blob/27cb4f6c7dd95cdb4b8aa03e43747c8d72763fc2/webpack.config.js#L126-L132

@fullofcaffeine
Copy link
Contributor

fullofcaffeine commented Mar 13, 2021

How often do we get these from Renovate? Do we have to find a better tool if Renovate isn't working well enough? Thanks!

@fullofcaffeine
Copy link
Contributor

The phpunit check for ETK is failing atm, but doesn't seem related to the changes. Here's the output:

mysqlcheck: Got error: 1045: Access denied for user 'username_here'@'172.18.0.5' (using password: YES) when trying to connect
2
✖ Error while running docker-compose command.
Creating efb2e59ed029579353b216b51132f603_cli_run ... 
Creating efb2e59ed029579353b216b51132f603_cli_run ... done
mysqlcheck: Got error: 1045: Access denied for user 'username_here'@'172.19.0.5' (using password: YES) when trying to connect

I have no idea why that's happening, though :(

@sarayourfriend
Copy link
Contributor

sarayourfriend commented Mar 18, 2021

Confirmed that the size increases are due to G2 being present in @wordpress/components. Not sure how to fix this.

/cc @gziolo It doesn't seem like tree shaking is working for the current strategy... any ideas?

@sarayourfriend sarayourfriend force-pushed the update/wp-monorepo-non-renovate branch from aea6599 to a498246 Compare March 18, 2021 15:27
@gziolo
Copy link
Member

gziolo commented Mar 19, 2021

Confirmed that the size increases are due to G2 being present in @wordpress/components. Not sure how to fix this.

/cc @gziolo It doesn't seem like tree shaking is working for the current strategy... any ideas?

See my previous replay: #50922 (comment).

You need to update the webpack config add ensure COMPONENT_SYSTEM_PHASE is replaced with 0 so it can evaluate as false? Example from the WordPress core:

https://github.com/WordPress/wordpress-develop/blob/140bd894d6b7ef49575df761637db821e2fc27f0/tools/webpack/packages.js#L256-L257

@scinos scinos force-pushed the update/wp-monorepo-non-renovate branch 2 times, most recently from 05ebefa to 0bdc53f Compare March 19, 2021 09:32
@sarayourfriend
Copy link
Contributor

sarayourfriend commented Mar 19, 2021

I'm glad setting COMPONENT_SYSTEM_PHASE seems to have worked... but I'm still confused about this behavior.

I thought that the default for COMPONENT_SYSTEM_PHASE was 0? Should there be a bug opened if it's not defaulting to 0 correctly? It's always compared against 1 explicitly, why would that evaluate to true without it being set?

@noahtallen noahtallen force-pushed the update/wp-monorepo-non-renovate branch from 0bdc53f to c7eabed Compare March 19, 2021 21:55
@noahtallen
Copy link
Contributor Author

I bumped @wordpress/env back to v4. I think it had gotten changed back to v3 during a rebase, but it's needed to fix the phpunit tests :)

@sarayourfriend
Copy link
Contributor

What's left on this PR @noahtallen? Do we just need to request reviews from some individual teams? Are those e2e test failures legit?

@noahtallen noahtallen force-pushed the update/wp-monorepo-non-renovate branch from c7eabed to 926f9df Compare March 23, 2021 20:42
@noahtallen
Copy link
Contributor Author

What's left on this PR @noahtallen? Do we just need to request reviews from some individual teams? Are those e2e test failures legit?

Unsure about e2e tests, will investigate 👀

Otherwise, i think just smoke testing everything which consumes these packages.

@noahtallen
Copy link
Contributor Author

The e2e failure is a known broken test from what I can tell :)

@noahtallen noahtallen force-pushed the update/wp-monorepo-non-renovate branch from 926f9df to 0063ea8 Compare March 23, 2021 21:22
@noahtallen
Copy link
Contributor Author

I've tested ETK, gutenboarding (all the way through launch), and the calypso application and everything looks good so far. @sarayourfriend do you know what to test for blocks & components?

@sarayourfriend
Copy link
Contributor

sarayourfriend commented Mar 23, 2021

We should just smoke test the WP Components Gallery but honestly testing Gutenboarding is even better. I'll smoke test the gallery now.

Update: Components Gallery looks good to me.

@noahtallen noahtallen force-pushed the update/wp-monorepo-non-renovate branch from 0063ea8 to d6e3688 Compare March 24, 2021 21:32
@noahtallen
Copy link
Contributor Author

I've run through the failing e2e's manually and confirmed they are still working. Possibly flaky, or not waiting long enough for the UI element to display

@noahtallen noahtallen merged commit 241db75 into trunk Mar 24, 2021
@noahtallen noahtallen deleted the update/wp-monorepo-non-renovate branch March 24, 2021 22:11
@matticbot matticbot removed the [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. label Mar 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants