-
Notifications
You must be signed in to change notification settings - Fork 223
Drop node 12 support, remove wildcard exports, update browser support #2277
Conversation
For node versions, as we're making breaking changes we should ensure we limit to versions that fully support the exports field and generally "when esmodules was marked as stable" - this was in v14.17.0, v16.0.0. v15 doesn't consider modules as stable and it is EOL so I don't think we should bother supporting it. The engines field range should be We should also take this opportunity as chance to remove the While we're making breaking changes to version support, we should also bump the browser support versions per #1970. It'd be nice to reevaluate the polyfills stuff t-o but I think we can punt the polyfills to a later major version. |
After this gets merged, I'd want to merge #2231 before cutting the new major versions - that faker update is technically a breaking change as we reexport faker. Rolling this out in web is going to require a bit of work, as transitive dependencies shall mean duplication. What we can do is:
|
👋 It looks like you're updating JavaScript packages that are known You can deduplicate them with the
If running these commands doesn't produce a change in your yarn.lock file, A duplicate React version may cause an invalid hook call warning. React context providers usually use module-scoped globals as their |
@@ -17,7 +17,7 @@ jobs: | |||
# output to 14.x and 16.x, so for now lock to the last version in 14 | |||
# and 16 before the ICU change. | |||
# Once we drop support for node 12 we can consider using 14.x and 16.x |
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.
# Once we drop support for node 12 we can consider using 14.x and 16.x |
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.
Or too soon?
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.
I didn't want to add too much overhead to this PR with too many changes. I thought it could be a follow up.
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.
This is going to result in needing to update some expected test output, so +1 to a separate PR
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.
Ran a build and compared it against master and confirmed that we're now seeing a wild reduction in babel helpers required - no more needing to transform object spread or async/await syntaxes is huge 🎉
find packages -name _rollupPluginBabelHelpers.mjs
now shows only 3 packages that need syntax transforms!
I dropped a comment inline about updating the text of the changelog entry. Update that, and update shipit/production.yml to remove the reference to node-tests (12.22)
and then this is good to go.
Before this is released as a new major version, I'd want to rebase and merge #2231, and update the ci node versions so they go back to 14.x and 16.x, and use 16.14 locally. (see #2171 for context)
packages/address-consts/CHANGELOG.md
Outdated
|
||
### Breaking Change | ||
|
||
- Drop support for node 12. Remove wildcard export. Update `@shopify/browserslist-config`. [[#2277](https://github.com/Shopify/quilt/pull/2277)] |
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.
Consumers don't care about the change to @shopify/browserslist-config
, they care about the impact that it has, What do you think to using this as the changelog line?
- Drop support for node 12. Remove wildcard export. Update `@shopify/browserslist-config`. [[#2277](https://github.com/Shopify/quilt/pull/2277)] | |
- Drop support for node 12 and Safari 10, 11 and 12. Remove wildcard export in exports field. [[#2277](https://github.com/Shopify/quilt/pull/2277)] |
@@ -17,7 +17,7 @@ jobs: | |||
# output to 14.x and 16.x, so for now lock to the last version in 14 | |||
# and 16 before the ICU change. | |||
# Once we drop support for node 12 we can consider using 14.x and 16.x |
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.
This is going to result in needing to update some expected test output, so +1 to a separate PR
Oh! you'll need to update shipit.production.yml to remove the reference to |
I did already. |
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.
🎉
Description
Node 12 is not longer supported.
This PR drops support to unblock updating dependencies that no longer support 12.
It also includes the following breaking changes
I also removed the node 12 tests.
Fixes (issue #)
Type of change
Checklist