NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
18.19k stars 14.2k forks source link

ZERO Hydra Failures 21.11 #144627

Closed tomberek closed 2 years ago

tomberek commented 3 years ago

Mission

Every time we branch off a release we stabilize the release branch. Our goal here is to get as little as possible jobs failing on the trunk/master jobsets. I'd like to heighten, while it's great to focus on zero as our goal, it's essentially to have all deliverables that worked in the previous release work here also.

Please note the changes included in RFC 85.

Most significantly, branch off will occur on 2021 Nov 19; prior to that date, ZHF will be conducted on master; after that date, ZHF will be conducted on the release channel using a backport workflow similar to previous ZHFs.

Jobsets

nixos:release-21.11 Jobset nixpkgs:nixpkgs-21.11-darwin Jobset

How many failing jobs are there?

At the opening of this issue we have

Thanks to nix-review-tools we know which dependencies are causing the most jobs to fail in these individual jobsets:

Previous releases first evals

20.09 had 1153 failing jobs 21.05 had 789 failing jobs

How to help (textual)

  1. Select an evaluation of the trunk jobset Screenshot

  2. Find a failed job ❌️ , you can use the filter field to scope packages to your platform, or search for packages that are relevant to you. Screenshot from 2020-02-08 15 26 47 Note: you can filter for architecture by filtering for it, eg: https://hydra.nixos.org/eval/1719540?filter=x86_64-linux&compare=1719463&full=#tabs-still-fail

  3. Search to see if a PR is not already open for the package. It there is one, please help review it.

  4. If there is no open PR, troubleshoot why it's failing and fix it.

  5. Create a Pull Request with the fix targeting master, wait for it to be merged. If your PR causes around 500+ rebuilds, it's preferred to target staging to avoid compute and storage churn.

  6. (after 2021 Nov 19) Please follow backporting steps and target the release-21.11 branch if the original PR landed in master or staging-21.11 if the PR landed in staging. Be sure to do git cherry-pick -x <rev> on the commits that landed in unstable. @jonringer created a video covering the backport process.

Always reference this issue in the body of your PR:

ZHF: #144627

Please ping @NixOS/nixos-release-managers on the PR. If you're unable to because you're not a member of the NixOS org please ping @jonringer, @tomberek , @nrdxp

How can I easily check packages that I maintain?

You're able to check failing packages that you maintain by running:

# from root of nixpkgs
nix-build maintainers/scripts/build.nix --argstr maintainer <name>

New to nixpkgs?

Packages that don't get fixed

The remaining packages will be marked as broken before the release (on the failing platforms). You can do this like:

meta = {
  # ref to issue/explanation
  # `true` is for everything
  broken = stdenv.isDarwin; 
};

Closing

This is a great way to help NixOS, and it is a great time for new contributors to start their nixpkgs adventure. :partying_face:

cc @NixOS/nixpkgs-committers @NixOS/nixpkgs-maintainers @NixOS/release-engineers

Related Issues

Mindavi commented 2 years ago

Staging is a valid target for a backport, so doesn't seem logical to remove it to me.

tomberek commented 2 years ago

Thank you everyone for a wonderful ZHF!

roberth commented 2 years ago

Do we have staging jobsets for 21.11? I don't see them in https://hydra.nixos.org/project/nixpkgs. Iirc, this has been improved in the last release, but maybe it hasn't been documented as part of the release process yet? cc @jonringer

siraben commented 2 years ago

Any chance we can get a final detailed eval report? I'm curious now the deltas are for each platform.

tomberek commented 2 years ago

Based on https://hydra.nixos.org/eval/1727142?compare=1718945 https://hydra.nixos.org/eval/1727142?filter=x86_64-linux&compare=1718945

x86_64-linux jobset at 653 182 failing jobs x86_64-darwin at 1449 1208 failing jobs (some aborted) aarch64-linux at 782 505 failing jobs

https://tomberek.info/eval_reports/1727142.html

jonringer commented 2 years ago

Do we have staging jobsets for 21.11? I don't see them in https://hydra.nixos.org/project/nixpkgs. Iirc, this has been improved in the last release, but maybe it hasn't been documented as part of the release process yet? cc @jonringer

we should

jonringer commented 2 years ago

done, just created it, and added notes about its creation to the update wiki PR

vcunat commented 2 years ago

Was there supposed to be a pass where (most of) the remains get marked with meta.broken or similar?

risicle commented 2 years ago

Note there are still a few outstanding unresolved PRs :point_up: #148045 #147405 #147332 #147543 at least

jonringer commented 2 years ago

Was there supposed to be a pass where (most of) the remains get marked with meta.broken or similar?

This is meant to be done on the release branch, but it is a PITA

cc @nrdxp @tomberek