[25.05] lib.teams: Sync from GitHub (members/shortName/scope)#456422
[25.05] lib.teams: Sync from GitHub (members/shortName/scope)#456422wolfgangwalther merged 24 commits intoNixOS:release-25.05from
Conversation
There was a problem hiding this comment.
This report is automatically generated by the PR / Check / cherry-pick CI workflow.
Some of the commits in this PR require the author's and reviewer's attention.
Sometimes it is not possible to cherry-pick exactly the same patch.
This most frequently happens when resolving merge conflicts.
The range-diff will help to review the resolution of conflicts.
If you need to merge this PR despite the warnings, please dismiss this review shortly before merging.
Warning
Difference between 2a57eba and original 428bd8f may warrant inspection.
Show diff
@@ Commit message
has been ensured to be negligible, only consisting of minor team
shortName and scope differences
+ (cherry picked from commit 428bd8f1a256bf7864a63134b96005517c1aa371)
+
## ci/OWNERS ##
@@
/lib/path/* @infinisil @hsjobeki
@@ lib/default.nix: let
## maintainers/README.md ##
-@@ maintainers/README.md: If the team lists no specific membership policy, feel free to merge changes to t
- > [!IMPORTANT]
- > If a team says it is a closed group, do not merge additions to the team without an approval by at least one existing member.
-
--A corresponding GitHub team can be created by any org member.
-+#### Synced GitHub teams
-+
-+As an alternative to tracking team members in `team-list.nix`, a corresponding GitHub team can be created by any org member and its members subsequently managed directly on GitHub.
- When creating the team it should be created with the `nixpkgs-maintainers` team as parent.
- Once approved, the team will have the right privileges to be pinged and requested for review in Nixpkgs.
+@@ maintainers/README.md: team after giving the existing members a few days to respond.
+ *Important:* If a team says it is a closed group, do not merge additions
+ to the team without an approval by at least one existing member.
- > [!TIP]
- > The team name should be as short as possible; because it is nested under the maintainers group, no -maintainers suffix is needed.
-
-+After the first [weekly team sync](../.github/workflows/team-sync.yml) with the new team, it's then also possible to link it to the entry in `team-list.nix` by setting its `github` field to the GitHub team name.
-+
+-
# Maintainer scripts
- Various utility scripts, which are mainly useful for nixpkgs maintainers, are available under `./scripts/`.
+ Various utility scripts, which are mainly useful for nixpkgs maintainers,
## maintainers/computed-team-list.nix (new) ##
@@
@@ maintainers/team-list.nix: with lib.maintainers;
- happysalada
- minijackson
- yurrriq
-- savtrip
- ];
github = "beam";
- scope = "Maintain BEAM-related packages and modules.";
@@ maintainers/team-list.nix: with lib.maintainers;
cuda = {
- members = [
- connorbaker
-- GaetanLepage
- prusnak
- samuela
- SomeoneSerge
@@ maintainers/team-list.nix: with lib.maintainers;
- willcohen
- ];
github = "geospatial";
-- scope = "Maintain geospatial, remote sensing and OpenStreetMap software.";
+- scope = "Maintain geospatial packages.";
- shortName = "Geospatial";
enableFeatureFreezePing = true;
};
@@ maintainers/team-list.nix: with lib.maintainers;
- members = [
- euank
- frederictobiasc
-- heywoodlh
- marcusramberg
- mic92
- rorosen
@@ maintainers/team-list.nix: with lib.maintainers;
llvm = {
- members = [
- dtzWill
-- emily
- ericson2314
- lovek323
- qyliss
@@ maintainers/team-list.nix: with lib.maintainers;
php = {
- members = [
- aanderse
+- drupol
- ma27
- piotrkwiecinski
- talyz
@@ maintainers/team-list.nix: with lib.maintainers;
};
systemd = {
-- members = [
-- flokli
-- arianvp
-- elvishjerricco
-- aanderse
-- grimmauld
-- ];
+- members = [ ];
github = "systemd";
- scope = "Maintain systemd for NixOS.";
- shortName = "systemd";
Hint: The full diffs are also available in the runner logs with slightly better highlighting.
54cc9bf to
21dcd72
Compare
|
Needed to include some more backports to make the cherry-picks correct: |
(cherry-picked from commit 2ddd879)
No team was using the feature of having multiple GitHub teams, and this would make it tricky to try to sync maintainer teams with GitHub teams. (cherry picked from commit 1ea51e1)
(cherry picked from commit 470d48f)
Makes it much easier and less involved to run (cherry picked from commit 264ca12)
(cherry picked from commit e4a1af0)
|
The |
Including: - Removing a `.github` for a team that doesn't exist - Adding people to `lib.teams` that are part of the GitHub team but were never part of the team in `lib.teams` - Adjusting capitalisation of a linked GitHub team While there's more differences, all others should be done on the GitHub side, because it's things like adding/removing team members that have added/removed themselves to/from `lib.teams` in the past. (cherry picked from commit ff336e2)
Creates a team sync workflow that pushes the current state of teams to a JSON file, which can then be ingested by `lib.teams` to expose member lists. Co-Authored-By: Alexander Bantyev <[email protected]> (cherry picked from commit c0c6684)
(cherry picked from commit 2240644)
This makes `lib.teams` be in sync with the GitHub state. Add the marketing-team so that all teams in `lib.teams` can be requested for reviews. Add these members to the respective teams: - beam: minijackson (53e70ab) - beam: savtrip (f9ff37c) - cuda: prusnak (748896a) - geospatial: autra (7de303b) - geospatial: l0b0 (510eb51) - gnome: bobby285271 (066634e) - gnome: dasj19 (c57c936) - k3s: heywoodlh (2ca18a8) - k3s: rorosen (b9f397d) - php: piotrkwiecinski (148e322) - qt-kde: mjm (f6bb8a9) - qt-kde: NickCao (f6bb8a9) - qt-kde: ilya-fedin (f6bb8a9) - qt-kde: K900 (f6bb8a9) - qt-kde: SuperSandro2000 (f6bb8a9) - qt-kde: LunNova (f6bb8a9) Remove these members from the respective teams: - geospatial: das-g (b93d987) - haskell: expipiplus1 (e134422) - haskell: peti (NixOS#450864 (comment)) - k3s: yajo (8b23811) - k3s: superherointj (7354bda) - ocaml: superherointj (7354bda) - php: drupol (cabc16d) - php: globin (e5d552f) - documentation-team: fricklerhandwerk (https://discourse.nixos.org/t/the-next-chapter-in-nix-documentation/68425) Copy these team descriptions from `lib.teams.*.scope` to the GitHub team description: - nixpkgs-ci: Maintain Nixpkgs' in-tree Continuous Integration, including GitHub Actions - cuda: Maintain CUDA-enabled packages - darwin: Maintain core platform support and packages for macOS and other Apple platforms - documentation-team: Maintain nixpkgs/NixOS documentation and tools for building it. https://nixos.org/community/teams/documentation - enlightenment: Maintain Enlightenment desktop environment and related packages - flutter: Maintain Flutter and Dart-related packages and build tools - geospatial: Maintain geospatial, remote sensing and OpenStreetMap software - golang: Maintain Golang compilers - haskell: Maintain Haskell packages and infrastructure - k3s: Maintain K3s package, NixOS module, NixOS tests, update script - lisp: Maintain the Lisp ecosystem - lua: Maintain the lua ecosystem - lumina: Maintain lumina desktop environment and related packages - lxqt: Maintain LXQt desktop environment and related packages - neovim: Maintain the vim and neovim text editors and related packages - ocaml: Maintain the OCaml compiler and package set - pantheon: Maintain Pantheon desktop environment and platform - qt-kde: Maintain the Qt framework, KDE application suite, Plasma desktop environment and related projects - nixos-release-managers: Manage the current nixpkgs/NixOS release - rocm: Maintain ROCm and related packages - rust: Maintain the Rust compiler toolchain and nixpkgs integration - systemd: Maintain systemd for NixOS - xen-project: Maintain the Xen Project Hypervisor and the related tooling ecosystem (cherry picked from commit 6d89dcd)
The before and after of
nix-instantiate --eval -A lib.teams --strict --json | jq 'walk(if type == "array" then sort else . end)'
has been ensured to be negligible, only consisting of minor team
shortName and scope differences
(cherry picked from commit 428bd8f)
This is so you can figure out who to ask to get added to the team
Also avoid an unecessary `{ inherit lib; }` argument
(cherry picked from commit ddf8b5d)
This will allow the code for NixOS#447514 to make sure that the right team is requested for review, even if it has been renamed in the meantime. While the matching is currently based on the teams slug/name and not the id, renames won't cause problems with `lib.teams`, because CI would error if there's no match. Changing this can be future work. (cherry picked from commit 7636389)
Keeping the workflow filename in-sync with the visible name. (cherry picked from commit 42de52d)
These are style-only formatting changes, that are not enforced via tooling - but used consistently in the other workflow files. (cherry picked from commit 8100585)
These are style-only changes, that are not enforced via tooling - but used mostly consistently in the other github-script files. (cherry picked from commit 3df31aa)
Allows better scoping of branch creation restrictions (cherry picked from commit 72d9fc3)
44e2e77 to
ca4cada
Compare
|
Should be good now, rebased to flip lua/loongarch order throughout |
|
Hmm, #456422 (review) still complains, I think we might also need 7d255b3 and some others to make it proper proper |
Conflict resolution LGTM
|
No, we don't need to resolve them all. It only complains so that we can review the diff between the two PRs and not more. The current state is more than fine. |
|
Sounds good |
Backports: