aliases: make aliases supported for 2 years/4 releases#414656
aliases: make aliases supported for 2 years/4 releases#414656pbsds wants to merge 1 commit intoNixOS:masterfrom
Conversation
|
|
||
| # A script to convert old aliases to throws and remove old | ||
| # throws can be found in './maintainers/scripts/remove-old-aliases.py'. | ||
| # We aim to run it after each nixos release branchoff. Feel free to |
There was a problem hiding this comment.
Nitpick: Who is 'we'? The release manager? If so, this should probably be documented in whatever checklist is used. If it's not a defined person at all, I'd be surprised if this ever happens.
Alternatively, there could be a CI that periodically runs the script and opens a new PR. If this is the route that ends up happening, I don't think it would be out of scope to mention that intention here.
There was a problem hiding this comment.
I went for an ambiguous "we" due to not having put it on any release checklist yet, and instead phrasing it as an open invitation. Once merged we could open a PR to the release-manager repo, then update this text if that gets merged.
The script is too faulty to be run automatically IMO. It should be cherry-picked by a human.
I propose we keep throws for an additional two years, to prevent the case where someone bumps nixpkgs ahead by two+ years then running into horrible to diagnose issues due to some package having been dropped then replaced by something different using the same name. |
|
Just found this. (Of course I only bothered to look after making #427017...) I think some clarity would be nice, but 2 years seems long. I'd propose:
|
|
We're working on the by-name basics for #442066, which would encode a policy for this into those structured aliases. The idea is to progress them from warning to throw automatically and cause a CI failure when bumping the nixpkgs version number, so that they will be dropped. |
There seems to be no set expectations on how long an alias is supposed to be supported, and some are dang near ancient. Dropping aliases is however scary since most downstream users use
allowAliases=trueand thus see no warning that the attribute they rely on is technically deprecated. So when aliases finally do get dropped it "comes out of nowhere" for most users (the post-merge reactions in #349431 still stick with me...).#414658 however fixes that, so conditioned on it being merged I propose 2-year (or possibly shorter) support for aliases.
Things done
nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)Add a 👍 reaction to pull requests you find important.