-
-
Notifications
You must be signed in to change notification settings - Fork 14.1k
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
NixOS 24.05 — Zero Hydra Failures #309482
Labels
6.topic: release process
Issues or PRs which are parts of the NixOS release process
Comments
13 tasks
ghost
mentioned this issue
May 6, 2024
13 tasks
13 tasks
ghost
mentioned this issue
May 6, 2024
13 tasks
13 tasks
13 tasks
13 tasks
13 tasks
This was referenced May 7, 2024
This was referenced May 7, 2024
This was referenced May 7, 2024
13 tasks
13 tasks
13 tasks
ghost
mentioned this issue
May 7, 2024
13 tasks
This was referenced May 7, 2024
This was referenced May 30, 2024
13 tasks
This was referenced May 30, 2024
1 task
This was referenced May 31, 2024
NixOS 24.05 released! https://discourse.nixos.org/t/nixos-24-05-released/46279 |
This was referenced May 31, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hi, we are Weijia Wang & Jörg Thalheim, the release managers for NixOS 24.05 ("Uakari").
Today we want to invite everyone to participate in the Zero Hydra Failures Project, wherein we prepare the package set for the upcoming release, up until its public release at the end of May.
There are only two more upcoming dates that we'd like to mention in that context:
The complete timeline can be found in the
The mission
Every time we plan to do a release, we take time to stabilize the master branch and, later on, the release branch.
Our goal here is to reduce the number of failing jobs on the
nixpkgs:trunk
nixos:trunk-combined
jobsets as much as possible before branch-off. We call this the "Zero Hydra Failure" campaign.Besides aiming for zero failed jobs, we also strive to again provide all packages that were available in the previous release.
Changes need to always target the
master
branch. Take note that the branch-off will occur on 2024-05-22, after which ZHF changes will need to be tagged with thebackport: release-24.05
label to land in the stable release.Jobsets
The relevant jobsets to check for failing jobs are:
Workflow
Finding broken packages
Eval reports
Evaluation reports provide a structural overview of the most impactful failing builds. They originated at https://github.com/nix-community/nix-review-tools and were automated over at https://github.com/malob/nix-review-tools-reports.
ZERO Hydra Failures
The platform automatically crawls Hydra, and lists packages by maintainer, and lists the most important dependencies (failing packages with the most dependents). It also graphs the general trend per platform.
For the record, we started ZHF here:
For comparison, last release's ZHF started there:
Check on packages you maintain
Clone nixpkgs and checkout the
master
branch.Run
Alternatively: you can check https://zh.fail/failed/overview.html also.
Hydra
Hydra is nixpkgs' CI platform, where all active branches are built and pushed into the cache, after which channels can originate from its build results.
Submit fixes
Search through PRs to make sure no one has provided a fix yet. If there is one, please take the time and help review the change.
If there is no open PR, troubleshoot why it's failing and fix it.
Create a pull request against the
master
branch, and wait for potential review and change requests.0.kind: ZHF Fixes
label, so people can better browse these fixes.staging
to avoid compute churn for users onmaster
.Backporting
After 2024-05-22,
Apply the relevant backport label to land the fix in the release branch:
master
get backported intorelease-24.05
.staging
get backported intostaging-24.05
.If the backport action fails, follow the manual backporting steps. Make sure to use
git cherry-pick -x <rev>
on all commits intended for backport.Always link back to this issue by mentioning the issue number in the description of your pull request:
If your PR receives no reviews or does not get merged, feel free to:
0.kind: ZHF Fixes
label, so people can better browse these fixes.Broken packages
Everything we cannot fix in time will need to be marked broken on the respective platforms, so that Hydra will not retry builds over and over, thereby wasting compute resources.
Set
meta.broken
and add a reference and/or explanation, like this:Orphaned packages
You can read about failing packages without a maintainer here: https://zh.fail/failed/by-maintainer/_.html (orphaned packages).
If you're new to NixOS, adopting an orphaned package is a great way to get involved and contribute to the community. By doing so, you'll not only help improve the overall quality of the NixOS ecosystem, but you'll also gain valuable experience working with Nix, the language and tool that powers the package management system.
By adopting an orphaned package, you'll be taking on a responsibility that can be both challenging and rewarding. You'll need to understand the package's code and dependencies, make sure it builds and works correctly, and respond to any issues or pull requests that come up. This process can be a great learning experience, as you'll be exposed to a wide variety of programming languages and libraries.
Moreover, by adopting an orphaned package, you'll be making a tangible impact on the NixOS community. Your contributions will be greatly appreciated by users who depend on that package, and you'll be helping to ensure that NixOS releases are as stable and up-to-date as possible.
Closing
This is a great way to help NixOS, and it is a great time for new contributors to start their nixpkgs adventure. 🥳
As with the feature freeze issue, please keep the discussion here to a minimum so we don't ping all maintainers (although relevant comments can of course be added here if they are directly ZHF-related) and ping one of the release managers (@wegank, @Mic92) in the respective issues.
The text was updated successfully, but these errors were encountered: