Commit graph

11 commits

Author SHA1 Message Date
Johannes Kirschbauer 0d584f7c8f
ci/compare: nix stats comparison
Displays stats table in the step-summary if there are no added/removed packages
2025-05-06 21:49:18 +02:00
Johannes Kirschbauer a3520e9577
Revert "ci/compare: Bring back nix stats comparison" 2025-05-01 23:02:38 +02:00
Johannes Kirschbauer 78e8992345
ci/compare: nix stats comparison
Displays stats table in the step-summary if there are no added/removed packages
2025-05-01 22:41:12 +02:00
Morgan Jones e5306ea0ae
ci/eval/compare: support optional byName argument
Sometimes it is quite useful to output names instead of GitHub IDs, e.g.
for maintainer scripts that show you who you would ping. Add this as an
option, but keep the existing default.
2025-04-17 23:54:29 -07:00
Wolfgang Walther 5b578b0679
ci/eval/compare: fix reading store paths from json file
This suddenly appeared after updating Nix to v26, which then complained:

… while calling the 'fromJSON' builtin
  at
/home/runner/work/nixpkgs/nixpkgs/target/ci/eval/compare/default.nix:74:19:
    73|
    74|   getAttrs = dir: builtins.fromJSON (builtins.readFile
"${dir}/outpaths.json");
      |                   ^
    75|   beforeAttrs = getAttrs beforeResultDir;

… while evaluating the first argument passed to builtins.fromJSON

error: the string '{
  "AMB-plugins.aarch64-linux": {
    "out":
"/nix/store/faw59ba5p6h4b177n8q2ilb3hlm7xlc2-AMB-plugins-0.8.1"
  },
                  ....
  "zzuf.aarch64-linux": {
    "out": "/nix/store/bqvm1h7jfd8smgnjc1v1gpmbwdgvwy5g-zzuf-0.15"
  },
  "zzuf.x86_64-linux": {
    "out": "/nix/store/6qs4lnmzn1qlr3smqqxnmhnrcdcfiv6a-zzuf-0.15"
  }
}
' is not allowed to refer to a store path (such as
'134m2q047vsr9miwh5l227j7sh9jb130-jq-1.7.1-bin')

By discard the unsafe string context, we explicitly allow loading those
store paths. It's unclear why this blew up now, especially because I was
not possible to consistently replicate this locally, so far.
2025-03-19 20:38:44 +01:00
Silvan Mosberger 80e011146b ci/eval/compare: Improve performance and avoid large stacks
Various improvements such as:
1. Avoiding deduplications when there can't be any duplicates
2. Avoiding O(n^2) deduplications
3. Using builtins.any to avoid list allocations
4. Using builtins.concatMap instead of lib.flatten when it's known that there's only one level of nesting
5. Using builtins.groupBy instead of folding with an accumulator

In particular 5. should fix CI exceeding the stack size on staging: https://github.com/NixOS/nixpkgs/actions/runs/12989244871/job/36240781244?pr=377253

While 2. in particular should make CI a lot faster.
2025-01-28 17:05:11 +01:00
Masum Reza a69bc54e33
workflows/eval: Request reviews from changed package maintainers (#366046) 2025-01-02 14:18:57 +05:30
Janne Heß 6d96c9a21e
ci: Label 10.rebuild-*-stdenv (#369102)
Currently ofborg does this, but there is actually no real reason this
shouldn't be done by CI
2024-12-30 20:01:31 +01:00
Silvan Mosberger b9d800d468 workflows/eval: Request reviews from changed package maintainers
Currently we need to rely on ofborg requesting reviews from package
maintainers, which takes a while with ofborg's eval queue. Since
recently we're doing faster evaluations with GitHub Actions, which contain all
necessary information to determine reviewers of changed packages the
same way ofborg does. This PR takes advantage of that.
2024-12-18 22:13:37 +01:00
Gaetan Lepage 518ae8fd58 ci/eval: add rebuildsByPlatform to the comparison result 2024-12-11 16:37:25 +01:00
Gaetan Lepage f94b4bd945 ci/eval: re-implement compare in nix 2024-12-08 10:23:40 +01:00