Skip to content

fetchPnpmDeps: deprecate fetcherVersion = 1, schedule removal for 26.11#513215

Merged
Scrumplex merged 1 commit into
NixOS:masterfrom
qweered:remove-fetcherVersion-1
Apr 26, 2026
Merged

fetchPnpmDeps: deprecate fetcherVersion = 1, schedule removal for 26.11#513215
Scrumplex merged 1 commit into
NixOS:masterfrom
qweered:remove-fetcherVersion-1

Conversation

@qweered

@qweered qweered commented Apr 24, 2026

Copy link
Copy Markdown
Contributor

Depends on #513204. Please review diff with whitespaces off.

fetcherVersion = 1 was kept around for backwards compatibility while callers migrated to 2/3. With #494402 merged, only #513204 remains on master.

This PR emits a lib.warnIf warning whenever fetchPnpmDeps is called with fetcherVersion = 1, giving callers advance notice before the planned removal in 26.11. Per @Scrumplex's review the warning fires immediately on merge rather than being gated by lib.oldestSupportedReleaseIsAtLeast, since 26.05 will not include any packages with fetcherVersion = 1 once #513204 lands.

After 26.11 ships, a follow-up PR should drop 1 from supportedFetcherVersions and clean up the dead v1 branches in default.nix, pnpm-config-hook.sh, and serve.nix.

Things done

@nixpkgs-ci nixpkgs-ci Bot requested review from Scrumplex, gepbird and winterqt April 24, 2026 22:57
@nixpkgs-ci nixpkgs-ci Bot added 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. 6.topic: nodejs Node.js is a free, open-source, cross-platform JavaScript runtime environment 8.has: documentation This PR adds or changes documentation labels Apr 24, 2026
@qweered qweered force-pushed the remove-fetcherVersion-1 branch from fe4a0e4 to 4fa048a Compare April 24, 2026 22:58
@qweered

qweered commented Apr 24, 2026

Copy link
Copy Markdown
Contributor Author

We still have 2 days untill no breaking changes. Can be backported to 26.05 later cause its just a warn

@nixpkgs-ci nixpkgs-ci Bot added 8.has: changelog This PR adds or changes release notes and removed 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. labels Apr 24, 2026

@Scrumplex Scrumplex left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I don't think this has to be gated by the oldest supported release at all. We can start warning immediately once this is merged, as 26.05 will not include any packages with fetcherVersion = 1; at this rate.

Comment thread pkgs/build-support/node/fetch-pnpm-deps/default.nix Outdated
Comment thread doc/release-notes/rl-2605.section.md Outdated
Comment thread doc/languages-frameworks/javascript.section.md Outdated
@Scrumplex Scrumplex force-pushed the remove-fetcherVersion-1 branch 2 times, most recently from a77f3f1 to 1d4d2c2 Compare April 26, 2026 12:14
@qweered

qweered commented Apr 26, 2026

Copy link
Copy Markdown
Contributor Author

Thank you for force push, I was quiet busy yesterday. LGTM, lets merge #513204 and its ready to go

@Scrumplex

Copy link
Copy Markdown
Member

@qweered Do you mind rebasing this to fix the CI?

fetcherVersion = 1 was kept around for backwards compatibility while
callers migrated to 2/3.

Emit a `lib.warnIf` warning pointing at the affected pname whenever v1
is used.

After 26.11 ships, a follow-up PR should drop 1 from
`supportedFetcherVersions` and clean up the dead v1 code paths in
default.nix, pnpm-config-hook.sh and serve.nix.

Also rewrite the manual section to recommend fetcherVersion = 3 for new
packages and mark v1 as deprecated/scheduled-for-removal in the
version history.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
@qweered qweered force-pushed the remove-fetcherVersion-1 branch from e22cd00 to 6b6d15b Compare April 26, 2026 15:39
@nixpkgs-ci nixpkgs-ci Bot added the 12.approvals: 1 This PR was reviewed and approved by one person. label Apr 26, 2026
@Scrumplex Scrumplex added this pull request to the merge queue Apr 26, 2026
@Scrumplex

Copy link
Copy Markdown
Member

Thank you!

Merged via the queue into NixOS:master with commit 18dd4ff Apr 26, 2026
28 checks passed
@nixos-discourse

Copy link
Copy Markdown

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/breaking-changes-announcement-for-unstable/17574/132

@qweered qweered deleted the remove-fetcherVersion-1 branch May 7, 2026 22:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: nodejs Node.js is a free, open-source, cross-platform JavaScript runtime environment 8.has: changelog This PR adds or changes release notes 8.has: documentation This PR adds or changes documentation 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 12.approvals: 1 This PR was reviewed and approved by one person.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants