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

BREAKING: Bump to Node 16 #1262

Merged
merged 8 commits into from
Apr 26, 2023
Merged

BREAKING: Bump to Node 16 #1262

merged 8 commits into from
Apr 26, 2023

Conversation

FrederikBolding
Copy link
Member

@FrederikBolding FrederikBolding commented Apr 25, 2023

Description

Bumps the minimum Node version of the packages to 16.18.24.

Changes

  • BREAKING: Bumps the minimum Node version of all packages to 16.18.24

@FrederikBolding FrederikBolding requested a review from a team as a code owner April 25, 2023 10:13
legobeat
legobeat previously approved these changes Apr 25, 2023
Copy link
Contributor

@legobeat legobeat left a comment

Choose a reason for hiding this comment

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

lgtm!

@FrederikBolding
Copy link
Member Author

ty for the updates! I swear I looked for docs that mentioned Node 14 but didn't find any 😅

@legobeat
Copy link
Contributor

...However, should we make sure each package has a non-major release published before merging this @FrederikBolding ? Considering this repo does not have as straightforward a flow for backports, we might as well get any pending non-breaking changes published first.

WDYT?

@FrederikBolding
Copy link
Member Author

FrederikBolding commented Apr 25, 2023

...However, should we make sure each package has a non-major release published before merging this @FrederikBolding ? Considering this repo does not have as straightforward a flow for backports, we might as well get any pending non-breaking changes published first.

WDYT?

Both the extension and mobile are to my knowledge ready for Node 16. So not sure if there is a reason to wait? 🤔 As in, why would be doing backports anyway?

@legobeat
Copy link
Contributor

legobeat commented Apr 25, 2023

I don't have a scenario in mind - I just view is as standard practice and you never know when The Unknown Unknown rears a head (and version rollbacks wouldn't be unheard of I think).

And in the off-chance we have external dependents of these packages with different runtime constraints, this may make a big change for such users.

@FrederikBolding
Copy link
Member Author

I don't have a scenario in mind - I just view is as standard practice and you never know when The Unknown Unknown rears a head.

And in the off-chance we have external dependents of these packages with different runtime constraints, this may be a big change for such users.

Fair enough, I am merely trying to unblock #1184 and thought it was easier to do a release after all had been merged. But I'm also fine with us publishing a release first. Doesn't look like many packages have outstanding changes though

@legobeat legobeat mentioned this pull request Apr 25, 2023
@@ -14,8 +14,7 @@
- Run `yarn workspace <workspaceName> run jest --no-coverage <file>` to run a test file within the context of a package.
- Run `yarn test` to run tests for all packages.

> **Note**
> `workspaceName` in these commands is the `name` field within a package's `package.json`, e.g., `@metamask/address-book-controller`, not the directory where it is located, e.g., `packages/address-book-controller`.
> **Note** > `workspaceName` in these commands is the `name` field within a package's `package.json`, e.g., `@metamask/address-book-controller`, not the directory where it is located, e.g., `packages/address-book-controller`.
Copy link
Member

Choose a reason for hiding this comment

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

Nit: Seems that a newline was accidentally removed here

Suggested change
> **Note** > `workspaceName` in these commands is the `name` field within a package's `package.json`, e.g., `@metamask/address-book-controller`, not the directory where it is located, e.g., `packages/address-book-controller`.
> **Note**
> `workspaceName` in these commands is the `name` field within a package's `package.json`, e.g., `@metamask/address-book-controller`, not the directory where it is located, e.g., `packages/address-book-controller`.

Copy link
Contributor

@legobeat legobeat Apr 26, 2023

Choose a reason for hiding this comment

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

lint is drunk

Copy link
Member Author

Choose a reason for hiding this comment

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

Yeah, not sure what is going on here. This is what Prettier wants

@Gudahtt
Copy link
Member

Gudahtt commented Apr 25, 2023

I have applied the DO-NOT-MERGE label for now, until the next release is published. I'll ensure we get it published tomorrow.

FrederikBolding and others added 2 commits April 26, 2023 14:15
Co-authored-by: Mark Stacey <markjstacey@gmail.com>
@FrederikBolding
Copy link
Member Author

This should be good to review now!

@socket-security
Copy link

New dependency changes detected. Learn more about Socket for GitHub ↗︎


👍 No new dependency issues detected in pull request

Bot Commands

To ignore an alert, reply with a comment starting with @SocketSecurity ignore followed by a space separated list of package-name@version specifiers. e.g. @SocketSecurity ignore foo@1.0.0 bar@* or ignore all packages with @SocketSecurity ignore-all

Pull request alert summary
Issue Status
Install scripts ✅ 0 issues
Native code ✅ 0 issues
Bin script shell injection ✅ 0 issues
Unresolved require ✅ 0 issues
Invalid package.json ✅ 0 issues
HTTP dependency ✅ 0 issues
Git dependency ✅ 0 issues
Potential typo squat ✅ 0 issues
Known Malware ✅ 0 issues
Telemetry ✅ 0 issues
Protestware/Troll package ✅ 0 issues

📊 Modified Dependency Overview:

🚮 Removed packages: @types/node@14.18.43

Gudahtt
Gudahtt previously approved these changes Apr 26, 2023
Copy link
Member

@Gudahtt Gudahtt left a comment

Choose a reason for hiding this comment

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

LGTM!

legobeat
legobeat previously approved these changes Apr 26, 2023
Copy link
Contributor

@legobeat legobeat left a comment

Choose a reason for hiding this comment

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

LGTM

@Gudahtt
Copy link
Member

Gudahtt commented Apr 26, 2023

Looks like we need to run lint:fix

@FrederikBolding
Copy link
Member Author

@Gudahtt That is what resulted in the contributing.md change that you requested reverted 😅

Co-authored-by: Mark Stacey <markjstacey@gmail.com>
@FrederikBolding FrederikBolding dismissed stale reviews from legobeat and Gudahtt via c059e66 April 26, 2023 13:16
@FrederikBolding FrederikBolding merged commit 5a68e16 into main Apr 26, 2023
@FrederikBolding FrederikBolding deleted the fb/bump-to-node16 branch April 26, 2023 13:30
Gudahtt added a commit that referenced this pull request Sep 26, 2023
The `AbortController` polyfill has not been required since updating to
a minimum Node.js version of v16 in #1262. This API has been built into
Node.js since v15.4.0, and is included in all versions of v16. It is
also supported by all browsers that our extension supports, and has
been supported by React Native since v0.60.0.

This helps unblock the TypeScript update to v4.8.4. The update resulted
in some type errors from this polyfill package.
Gudahtt added a commit that referenced this pull request Sep 26, 2023
The `AbortController` polyfill has not been required since updating to
a minimum Node.js version of v16 in #1262. This API has been built into
Node.js since v15.4.0, and is included in all versions of v16. It is
also supported by all browsers that our extension supports, and has
been supported by React Native since v0.60.0.

This helps unblock the TypeScript update to v4.8.4. The update resulted
in some type errors from this polyfill package.
Gudahtt added a commit that referenced this pull request Sep 26, 2023
The `AbortController` polyfill has not been required since updating to
a minimum Node.js version of v16 in #1262. This API has been built into
Node.js since v15.4.0, and is included in all versions of v16. It is
also supported by all browsers that our extension supports, and has
been supported by React Native since v0.60.0.

This helps unblock the TypeScript update to v4.8.4. The update resulted
in some type errors from this polyfill package.
Gudahtt added a commit that referenced this pull request Sep 26, 2023
The `AbortController` polyfill has not been required since updating to
a minimum Node.js version of v16 in #1262. This API has been built into
Node.js since v15.4.0, and is included in all versions of v16. It is
also supported by all browsers that our extension supports, and has
been supported by React Native since v0.60.0.

This helps unblock the TypeScript update to v4.8.4. The update resulted
in some type errors from this polyfill package.
Gudahtt added a commit that referenced this pull request Sep 26, 2023
The `AbortController` polyfill has not been required since updating to
a minimum Node.js version of v16 in #1262. This API has been built into
Node.js since v15.4.0, and is included in all versions of v16. It is
also supported by all browsers that our extension supports, and has
been supported by React Native since v0.60.0.

This helps unblock the TypeScript update to v4.8.4. The update resulted
in some type errors from this polyfill package.
Gudahtt added a commit that referenced this pull request Sep 26, 2023
## Explanation

The `AbortController` polyfill has not been required since updating to a
minimum Node.js version of v16 in #1262. This API has been [built into
Node.js since
v15.4.0](https://nodejs.org/docs/latest-v16.x/api/globals.html#class-abortcontroller),
and is included in all versions of v16. It is also supported by [all
browsers that our extension
supports](https://developer.mozilla.org/en-US/docs/Web/API/AbortController#browser_compatibility),
and has been [supported by React Native since
v0.60.0](https://github.com/react-native-community/releases/blob/master/CHANGELOG.md#v0600).

This helps unblock the TypeScript update to v4.8.4. The update resulted
in some type errors from this polyfill package.

## References
None

## Changelog

### `@metamask/assets-controllers`

### Removed
- **BREAKING:** Remove AbortController polyfill
  - This package now assumes that the AbortController global exists

## Checklist

- [x] I've updated the test suite for new or updated code as appropriate
- [x] I've updated documentation (JSDoc, Markdown, etc.) for new or
updated code as appropriate
- [x] I've highlighted breaking changes using the "BREAKING" category
above as appropriate
MajorLift pushed a commit that referenced this pull request Oct 11, 2023
* Bump to Node 16

* devDeps: @types/node@14.14.31->16.18.24

* docs: update nodejs version in contributing.md

* Fix lint

* Update docs/contributing.md

Co-authored-by: Mark Stacey <markjstacey@gmail.com>

* Update docs/contributing.md

Co-authored-by: Mark Stacey <markjstacey@gmail.com>

---------

Co-authored-by: legobt <6wbvkn0j@anonaddy.me>
Co-authored-by: Mark Stacey <markjstacey@gmail.com>
MajorLift pushed a commit that referenced this pull request Oct 11, 2023
## Explanation

The `AbortController` polyfill has not been required since updating to a
minimum Node.js version of v16 in #1262. This API has been [built into
Node.js since
v15.4.0](https://nodejs.org/docs/latest-v16.x/api/globals.html#class-abortcontroller),
and is included in all versions of v16. It is also supported by [all
browsers that our extension
supports](https://developer.mozilla.org/en-US/docs/Web/API/AbortController#browser_compatibility),
and has been [supported by React Native since
v0.60.0](https://github.com/react-native-community/releases/blob/master/CHANGELOG.md#v0600).

This helps unblock the TypeScript update to v4.8.4. The update resulted
in some type errors from this polyfill package.

## References
None

## Changelog

### `@metamask/assets-controllers`

### Removed
- **BREAKING:** Remove AbortController polyfill
  - This package now assumes that the AbortController global exists

## Checklist

- [x] I've updated the test suite for new or updated code as appropriate
- [x] I've updated documentation (JSDoc, Markdown, etc.) for new or
updated code as appropriate
- [x] I've highlighted breaking changes using the "BREAKING" category
above as appropriate
MajorLift pushed a commit that referenced this pull request Oct 11, 2023
* Bump to Node 16

* devDeps: @types/node@14.14.31->16.18.24

* docs: update nodejs version in contributing.md

* Fix lint

* Update docs/contributing.md

Co-authored-by: Mark Stacey <markjstacey@gmail.com>

* Update docs/contributing.md

Co-authored-by: Mark Stacey <markjstacey@gmail.com>

---------

Co-authored-by: legobt <6wbvkn0j@anonaddy.me>
Co-authored-by: Mark Stacey <markjstacey@gmail.com>
MajorLift pushed a commit that referenced this pull request Oct 11, 2023
## Explanation

The `AbortController` polyfill has not been required since updating to a
minimum Node.js version of v16 in #1262. This API has been [built into
Node.js since
v15.4.0](https://nodejs.org/docs/latest-v16.x/api/globals.html#class-abortcontroller),
and is included in all versions of v16. It is also supported by [all
browsers that our extension
supports](https://developer.mozilla.org/en-US/docs/Web/API/AbortController#browser_compatibility),
and has been [supported by React Native since
v0.60.0](https://github.com/react-native-community/releases/blob/master/CHANGELOG.md#v0600).

This helps unblock the TypeScript update to v4.8.4. The update resulted
in some type errors from this polyfill package.

## References
None

## Changelog

### `@metamask/assets-controllers`

### Removed
- **BREAKING:** Remove AbortController polyfill
  - This package now assumes that the AbortController global exists

## Checklist

- [x] I've updated the test suite for new or updated code as appropriate
- [x] I've updated documentation (JSDoc, Markdown, etc.) for new or
updated code as appropriate
- [x] I've highlighted breaking changes using the "BREAKING" category
above as appropriate
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants