Skip to content

Add tests for active-repositories feature#11684

Open
erikd wants to merge 1 commit intohaskell:masterfrom
erikd:master
Open

Add tests for active-repositories feature#11684
erikd wants to merge 1 commit intohaskell:masterfrom
erikd:master

Conversation

@erikd
Copy link
Copy Markdown
Member

@erikd erikd commented Apr 1, 2026

This PR only contains tests, which were generated by Claude code, and then manually reviewed. Unfortunately I have not worked much on Cabal so my manual review may not be up-to-scratch.

This PR was submitted in preparation for taking over the work in #8997 and getting it merged. One of the things mentioned in that PR was that need for tests for the active-repositories feature.

Include the following checklist in your PR:

  • Patches conform to the coding conventions.
  • Is this a PR that fixes CI? If so, it will need to be backported to older cabal release branches (ask maintainers for directions).

@erikd
Copy link
Copy Markdown
Member Author

erikd commented Apr 1, 2026

I asked Claude to give me an idea of the test coverage. Its response:

The top commit (6898e42) captures the IndexUtils/ActiveRepos.hs and the index-combining
tests we added to IndexUtils.hs.

So the breakdown for what this commit actually adds vs the total feature:

Layer Coverage
Layer 1 ~80%
Layer 2 ~65%
Layer 3 ~58%
Layer 4 ~30%
Layer 5 ~0%

Where:

  • Layer 1 — pure logic (ActiveRepos.hs)
  • Layer 2 — project config parsing (pre-existing tests only, nothing new in this PR)
  • Layer 3 — index combining (IndexUtils.hs) (all 14 combining tests are in this PR)
  • Layer 4 — freeze file (filterSkippedActiveRepos unit tests in this PR)
  • Layer 5 — solver/planning wiring

These tests were generated by Claude code, but manually reviewed.
Copy link
Copy Markdown
Collaborator

@andreabedini andreabedini left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left a couple of comments but otherwise LGTM.

Not a deal breaker but any chance you can add a simple test for this edge case behaviour?

-- Note: currently if 'ActiveRepoRest' is provided more than once,
-- rest-repositories will be multiple times in the output.

@?= sort [foo1, bar1]
, testCase "Merge+Override: override repo replaces all versions of overlapping package" $
-- repoFoo12 has foo-1.0 and foo-1.1; repoFoo2 has only foo-2.0.
-- Override means repoFoo2 wins the entire 'foo' bucket.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This comments seems wrong. Below we have

repoFoo12 = PackageIndex.fromList [foo1, foo2]

So repoFoo12 has foo-1.0 and foo-2.0. I am not sure what was intended.

pkgs
:: [(PackageIndex.PackageIndex PackageIdentifier, CombineStrategy)]
-> [PackageIdentifier]
pkgs = sort . PackageIndex.allPackages . foldl combineIndex mempty
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
pkgs = sort . PackageIndex.allPackages . foldl combineIndex mempty
pkgs = sort . PackageIndex.allPackages . foldl' combineIndex mempty

This is extra picky but since we say Mirrors the addIndex / foldl' in getSourcePackagesAtIndexState we might as well reproduce the same behaviour.

BTH I am not sure testing a reimplementation is a good idea, it will go out of sync with the actual code and lose all its value. Can we perhaps export from IndexUtils the functions we want to test here?

@mergify mergify bot added the queued label Apr 2, 2026
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 2, 2026

Merge Queue Status

This pull request spent 1 hour 5 minutes 23 seconds in the queue, including 3 seconds running CI.

Required conditions to merge
  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]

Reason

Pull request #11684 has been dequeued

merge conditions no longer match:

  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs

Hint

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

mergify bot added a commit that referenced this pull request Apr 2, 2026
@mergify mergify bot added the dequeued label Apr 2, 2026
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 2, 2026

Merge Queue Status

This pull request spent 11 minutes 12 seconds in the queue, including 44 seconds running CI.

Required conditions to merge
  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]

Reason

Pull request #11684 has been dequeued

merge conditions no longer match:

  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs

Hint

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

@mergify mergify bot removed the dequeued label Apr 2, 2026
@andreabedini
Copy link
Copy Markdown
Collaborator

A changelog file is missing, here is a suggestion:

---
synopsis: Add unit tests for active-repositories feature
packages: [cabal-install]
prs: 11684
---

Add unit tests for the `active-repositories` cabal configuration field:

- `organizeByRepos`: ordering and strategy assignment with `:rest`, named repos, and error cases
- `filterSkippedActiveRepos`: filtering of skipped entries in the absence of `:rest`
- `CombineStrategy` index-combining logic (Skip/Merge/Override)
- Parse/pretty roundtrip for `ActiveRepos` (QuickCheck)

mergify bot added a commit that referenced this pull request Apr 2, 2026
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 2, 2026

Merge Queue Status

This pull request spent 10 minutes 45 seconds in the queue, including 4 seconds running CI.

Required conditions to merge
  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]

Reason

Pull request #11684 has been dequeued

merge conditions no longer match:

  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs

Hint

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

@mergify mergify bot removed the dequeued label Apr 2, 2026
mergify bot added a commit that referenced this pull request Apr 2, 2026
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 2, 2026

Merge Queue Status

This pull request spent 11 minutes 20 seconds in the queue, including 26 seconds running CI.

Required conditions to merge
  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-success = whitespace
    • check-neutral = whitespace
    • check-skipped = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-success = Check sdist post job
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-success = Changelogs
    • check-neutral = Changelogs
    • check-skipped = Changelogs

Reason

Pull request #11684 has been dequeued

merge conditions no longer match:

  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job

Hint

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

@mergify mergify bot removed the dequeued label Apr 2, 2026
mergify bot added a commit that referenced this pull request Apr 2, 2026
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 2, 2026

Merge Queue Status

This pull request spent 10 minutes 48 seconds in the queue, including 32 seconds running CI.

Required conditions to merge
  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-success = docs/readthedocs.org:cabal
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-success = whitespace
    • check-neutral = whitespace
    • check-skipped = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-success = Check sdist post job
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-success = Changelogs
    • check-neutral = Changelogs
    • check-skipped = Changelogs

Reason

Pull request #11684 has been dequeued

merge conditions no longer match:

  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job

Hint

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

@mergify mergify bot removed the dequeued label Apr 2, 2026
mergify bot added a commit that referenced this pull request Apr 2, 2026
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 2, 2026

Merge Queue Status

This pull request spent 6 hours 5 minutes 24 seconds in the queue, including 3 seconds running CI.

Required conditions to merge
  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]

Reason

Pull request #11684 has been dequeued

merge conditions no longer match:

  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs

Hint

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

mergify bot added a commit that referenced this pull request Apr 2, 2026
@mergify mergify bot added queued and removed queued labels Apr 2, 2026
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 3, 2026

Merge Queue Status

This pull request spent 1 hour 59 minutes 18 seconds in the queue, including 12 seconds running CI.

Required conditions to merge
  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]

Reason

Pull request #11684 has been dequeued

merge conditions no longer match:

  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs

Hint

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

mergify bot added a commit that referenced this pull request Apr 3, 2026
@mergify mergify bot removed the queued label Apr 3, 2026
@geekosaur
Copy link
Copy Markdown
Collaborator

Do we know why this is being repeatedly queued without a merge label? The Mergify summary doesn't show it matching any of the merge rules (correct), and even if it were the presence of unresolved comments and lack of reviews should be blocking it from entering the queue at all.

@geekosaur
Copy link
Copy Markdown
Collaborator

@Mergifyio refresh

@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 3, 2026

refresh

✅ Pull request refreshed

@erikd
Copy link
Copy Markdown
Member Author

erikd commented Apr 4, 2026

I will rebase against master and address @andreabedini 's comments on Tuesday, April 7th

@mergify mergify bot added the queued label Apr 5, 2026
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 5, 2026

Merge Queue Status

This pull request spent 1 hour 46 minutes 54 seconds in the queue, including 2 seconds running CI.

Required conditions to merge
  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]

Reason

Pull request #11684 has been dequeued

merge conditions no longer match:

  • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Meta checks
    • check-skipped = Meta checks
    • check-success = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
    • check-success = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Validate post job
    • check-skipped = Validate post job
    • check-success = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = fourmolu
    • check-skipped = fourmolu
    • check-success = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-neutral = hlint
    • check-skipped = hlint
    • check-success = hlint
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = whitespace
    • check-skipped = whitespace
    • check-success = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
    • check-success = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Changelogs
    • check-skipped = Changelogs
    • check-success = Changelogs

Hint

You should look at the reason for the failure and decide if the pull request needs to be fixed or if you want to requeue it.
If you do update this pull request, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio queue comment.

mergify bot added a commit that referenced this pull request Apr 5, 2026
@mergify mergify bot removed the queued label Apr 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants