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

Use latest LTS release for development #222

Merged
merged 1 commit into from
Oct 3, 2023

Conversation

Gudahtt
Copy link
Member

@Gudahtt Gudahtt commented Oct 3, 2023

We now use the LTS release for development rather than a fixed version. This makes it clear that we expect libraries to be updated to be compatible with the latest LTS release, and reduces the frequency of README/nvmrc updates needed.

Examples

No examples yet

We now use the LTS release for development rather than a fixed version.
This makes it clear that we expect libraries to be updated to be
compatible with the latest LTS release, and reduces the frequency of
README/nvmrc updates needed.
@Gudahtt Gudahtt requested a review from a team as a code owner October 3, 2023 17:47
@MajorLift
Copy link

How should we handle the engines.node field in package.json (currently ">=16.0.0") and the corresponding entry in constraints.pro?

% The package must specify a minimum Node version of 16.
gen_enforced_field(WorkspaceCwd, 'engines.node', '>=16.0.0')

@Mrtenz
Copy link
Member

Mrtenz commented Oct 3, 2023

How should we handle the engines.node field in package.json (currently ">=16.0.0") and the corresponding entry in constraints.pro?

% The package must specify a minimum Node version of 16.
gen_enforced_field(WorkspaceCwd, 'engines.node', '>=16.0.0')

The .nvmrc file is only used for development. The development Node.js version doesn't have to be the minimum Node.js version we support, as long as the minimum Node.js version is tested properly in CI.

@Gudahtt
Copy link
Member Author

Gudahtt commented Oct 3, 2023

The engines field specifies the range of compatible Node.js versions, whereas the .nvmrc file is for the recommended version for contributors to use.

Previously we had kept nvmrc pointed at the minimum compatible version, but this PR is an intentional departure from that. It's fairly common in other libraries to use a higher .nvmrc than minimum already. My thinking was that we can rely upon CI to highlight version-specific incompatibilities, as CI should test at least one version of each supported major Node.js version.

Copy link

@MajorLift MajorLift left a comment

Choose a reason for hiding this comment

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

Relying on CI to make sure nothing breaks on all supported node versions makes perfect sense. Thanks for the clarification.

@Gudahtt Gudahtt merged commit 90b3779 into main Oct 3, 2023
21 checks passed
@Gudahtt Gudahtt deleted the use-lts-release-for-development branch October 3, 2023 23:28
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.

5 participants