Unverified Commit 7673a2fb authored by nixpkgs-ci[bot]'s avatar nixpkgs-ci[bot] Committed by GitHub
Browse files

Merge staging-next into staging

parents c3cad4b3 6f836daa
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -97,7 +97,7 @@ jobs:
          github.event_name == 'pull_request_target' &&
          !contains(fromJSON(inputs.headBranch).type, 'development')
        with:
          repo-token: ${{ steps.app-token.outputs.token }}
          repo-token: ${{ steps.app-token.outputs.token || github.token }}
          configuration-path: .github/labeler.yml # default
          sync-labels: true

@@ -107,7 +107,7 @@ jobs:
          github.event_name == 'pull_request_target' &&
          !contains(fromJSON(inputs.headBranch).type, 'development')
        with:
          repo-token: ${{ steps.app-token.outputs.token }}
          repo-token: ${{ steps.app-token.outputs.token || github.token }}
          configuration-path: .github/labeler-no-sync.yml
          sync-labels: false

@@ -120,7 +120,7 @@ jobs:
          github.event_name == 'pull_request_target' &&
          contains(fromJSON(inputs.headBranch).type, 'development')
        with:
          repo-token: ${{ steps.app-token.outputs.token }}
          repo-token: ${{ steps.app-token.outputs.token || github.token }}
          configuration-path: .github/labeler-development-branches.yml
          sync-labels: true

+1 −1
Original line number Diff line number Diff line
@@ -65,5 +65,5 @@ jobs:
        with:
          issue-number: 105153
          body: |
            Periodic merge from `${{ inputs.from }}` into `[${{ inputs.into }}](https://github.com/NixOS/nixpkgs/tree/${{ inputs.into }})` has [failed](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}).
            Periodic merge from `${{ inputs.from }}` into [`${{ inputs.into }}`](https://github.com/NixOS/nixpkgs/tree/${{ inputs.into }}) has [failed](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}).
          token: ${{ steps.app-token.outputs.token }}
+49 −4
Original line number Diff line number Diff line
@@ -9,6 +9,9 @@ module.exports = async ({ github, context, core, dry }) => {

  const artifactClient = new DefaultArtifactClient()

  // Detect if running in a fork (not NixOS/nixpkgs)
  const isFork = context.repo.owner !== 'NixOS'

  async function downloadMaintainerMap(branch) {
    let run

@@ -68,9 +71,18 @@ module.exports = async ({ github, context, core, dry }) => {

    // We get here when none of the 10 commits we looked at contained a maintainer map.
    // For the master branch, we don't have any fallback options, so we error out.
    // For other branches, we select a suitable fallback below.
    if (branch === 'master') throw new Error('No maintainer map found.')
    // In forks without merge-group history, return empty map to allow testing.
    if (branch === 'master') {
      if (isFork) {
        core.warning(
          'No maintainer map found. Using empty map (expected in forks without merge-group history).',
        )
        return {}
      }
      throw new Error('No maintainer map found.')
    }

    // For other branches, we select a suitable fallback below.
    const { stable, version } = classify(branch)

    const release = `release-${version}`
@@ -109,6 +121,11 @@ module.exports = async ({ github, context, core, dry }) => {
      return []
    }

    // Forks don't have NixOS teams, return empty list
    if (isFork) {
      return []
    }

    if (!members[team_slug]) {
      members[team_slug] = github.paginate(github.rest.teams.listMembersInOrg, {
        org: context.repo.owner,
@@ -304,9 +321,37 @@ module.exports = async ({ github, context, core, dry }) => {
        expectedHash: artifact.digest,
      })

      const evalLabels = JSON.parse(
      const changedPaths = JSON.parse(
        await readFile(`${pull_number}/changed-paths.json`, 'utf-8'),
      ).labels
      )
      const evalLabels = changedPaths.labels

      // Fetch all PR commits to check their messages for package patterns
      const prCommits = await github.paginate(github.rest.pulls.listCommits, {
        ...context.repo,
        pull_number,
        per_page: 100,
      })
      const commitMessages = prCommits.map((c) => c.commit.message)

      // Label new package PRs: "packagename: init at X.Y.Z"
      // Exclude NixOS module commits like "nixos/timekpr: init at 0.5.8"
      const newPackagePattern = /(?<!nixos\/\S+): init at\b/
      const hasNewPackages = changedPaths.attrdiff?.added?.length > 0
      const commitsIndicateNewPackage = commitMessages.some((msg) =>
        newPackagePattern.test(msg),
      )
      evalLabels['8.has: package (new)'] =
        hasNewPackages && commitsIndicateNewPackage

      // Label package update PRs: "packagename: X.Y.Z -> A.B.C"
      // Matches versions like: 1.2.3, 0-unstable-2024-01-15, 1.3rc1, alpha, unstable
      // Exclude NixOS module commits like "nixos/ncps: types.str -> types.path"
      const updatePackagePattern = /(?<!nixos\/\S+): [\w.-]+ (->|→) [\w.-]+/
      const commitsIndicateUpdate = commitMessages.some((msg) =>
        updatePackagePattern.test(msg),
      )
      evalLabels['8.has: package (update)'] = commitsIndicateUpdate

      // TODO: Get "changed packages" information from list of changed by-name files
      // in addition to just the Eval results, to make this work for these packages
+13 −6
Original line number Diff line number Diff line
@@ -3931,12 +3931,6 @@
    githubId = 15181236;
    keys = [ { fingerprint = "AE1E 3B80 7727 C974 B972  AB3C C324 01C3 BF52 1179"; } ];
  };
  bridgesense = {
    name = "Saad Nadeem";
    email = "saad29nadeem@gmail.com";
    github = "BridgeSenseDev";
    githubId = 88615188;
  };
  britter = {
    name = "Benedikt Ritter";
    email = "beneritter@gmail.com";
@@ -16996,6 +16990,13 @@
    githubId = 68288772;
    name = "Markus Heinrich";
  };
  MH0386 = {
    name = "Mohamed Hisham Abdelzaher";
    email = "mohamed.hisham.abdelzaher@gmail.com";
    github = "MH0386";
    githubId = 77013511;
    matrix = "@mh0386:matrix.org";
  };
  mh182 = {
    email = "mh182@chello.at";
    github = "mh182";
@@ -23262,6 +23263,12 @@
    github = "s1341";
    githubId = 5682183;
  };
  saadndm = {
    name = "Saad Nadeem";
    email = "saad29nadeem@gmail.com";
    github = "saadndm";
    githubId = 88615188;
  };
  sagikazarmark = {
    name = "Mark Sagi-Kazar";
    email = "mark.sagikazar@gmail.com";
+2 −0
Original line number Diff line number Diff line
@@ -118,6 +118,8 @@ See <https://github.com/NixOS/nixpkgs/issues/481673>.

- `services.pingvin-share` has been removed as the `pingvin-share.backend` package was broken and the project was archived upstream.

- `geph` package's built-in GUI `geph5-client-gui` has been [removed](https://github.com/geph-official/geph5/commit/f2221fb8386312daf2cef05483ebb353ff48bdb4) by the upstream. All users who wish to continue using the GUI should install the `gephgui-wry`, which is consistent with the official release version.

## Other Notable Changes {#sec-release-26.05-notable-changes}

<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
Loading