Skip to content

Use applicative parsing - #12193

Open
philderbeast wants to merge 1 commit into
haskell:masterfrom
cabalism:refactor/applicative-parsing
Open

Use applicative parsing#12193
philderbeast wants to merge 1 commit into
haskell:masterfrom
cabalism:refactor/applicative-parsing

Conversation

@philderbeast

Copy link
Copy Markdown
Collaborator

Split from #12015, these are the refactoring suggestions to use applicative style for parsing.


  • 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).

Comment thread Cabal-syntax/src/Distribution/Types/VersionRange/Internal.hs Outdated
@philderbeast
philderbeast force-pushed the refactor/applicative-parsing branch 2 times, most recently from 8ec3280 to 3adca9b Compare August 1, 2026 11:12
@philderbeast
philderbeast force-pushed the refactor/applicative-parsing branch from fd6b7f8 to 1cc21c5 Compare August 7, 2026 19:03
@philderbeast philderbeast added the merge me Tell Mergify Bot to merge label Aug 7, 2026
- Add colon = Parse.char ':'
- Applicative style for ELicense
- Applicative style for AbiDependency
- Applicative style for Module
- Applicative style for OpenModule
- Applicative style for OpenModuleVar
- Applicative style for Platform
- Applicative style for Fingerprint
- Applicative intersect && union version ranges
- Replace do with applicative style for leadRepo
- Avoid factor and term in both branches
@philderbeast
philderbeast force-pushed the refactor/applicative-parsing branch from 1cc21c5 to 86b81e3 Compare August 7, 2026 19:04
@mergify mergify Bot added ready and waiting Mergify is waiting out the cooldown period merge delay passed Applied (usually by Mergify) when PR approved and received no updates for 2 days queued labels Aug 7, 2026
@mergify

mergify Bot commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

Waiting for
  • any of: [🛡 GitHub branch protection]
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest 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 = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
All merge conditions
  • any of [🛡 GitHub branch protection]:
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
    • check-success = Doctest 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 = Bootstrap post job
    • check-skipped = Bootstrap post job
    • check-success = Bootstrap post job
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • github-review-approved [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-success = Meta checks
    • check-neutral = Meta checks
    • check-skipped = Meta checks
  • 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 = fourmolu
    • check-neutral = fourmolu
    • check-skipped = fourmolu
  • any of [🛡 GitHub branch protection]:
    • check-success = hlint
    • check-neutral = hlint
    • check-skipped = hlint
  • 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
Required conditions to stay in the queue
  • -closed [📌 queue requirement]
  • -conflict [📌 queue requirement]
  • -draft [📌 queue requirement]
  • any of [📌 queue -> configuration change requirements]:
    • -mergify-configuration-changed
    • check-success = Configuration changed
  • any of [🔀 queue conditions]:
    • all of [📌 queue conditions of queue rule default]:
      • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
      • github-review-approved [🛡 GitHub branch protection]
      • any of [🛡 GitHub branch protection]:
        • check-success = Doctest Cabal
        • check-neutral = Doctest Cabal
        • check-skipped = Doctest Cabal
      • any of [🛡 GitHub branch protection]:
        • check-success = Meta checks
        • check-neutral = Meta checks
        • check-skipped = Meta checks
      • 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 = Validate post job
        • check-neutral = Validate post job
        • check-skipped = Validate post job
      • any of [🛡 GitHub branch protection]:
        • check-success = fourmolu
        • check-neutral = fourmolu
        • check-skipped = fourmolu
      • any of [🛡 GitHub branch protection]:
        • check-success = hlint
        • check-neutral = hlint
        • check-skipped = hlint
      • any of [🛡 GitHub branch protection]:
        • check-success = Bootstrap post job
        • check-neutral = Bootstrap post job
        • check-skipped = Bootstrap post job
      • 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
    • all of [📌 queue conditions of queue rule squash-merge]:
      • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
      • github-review-approved [🛡 GitHub branch protection]
      • any of [🛡 GitHub branch protection]:
        • check-success = Doctest Cabal
        • check-neutral = Doctest Cabal
        • check-skipped = Doctest Cabal
      • any of [🛡 GitHub branch protection]:
        • check-success = Meta checks
        • check-neutral = Meta checks
        • check-skipped = Meta checks
      • 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 = Validate post job
        • check-neutral = Validate post job
        • check-skipped = Validate post job
      • any of [🛡 GitHub branch protection]:
        • check-success = fourmolu
        • check-neutral = fourmolu
        • check-skipped = fourmolu
      • any of [🛡 GitHub branch protection]:
        • check-success = hlint
        • check-neutral = hlint
        • check-skipped = hlint
      • any of [🛡 GitHub branch protection]:
        • check-success = Bootstrap post job
        • check-neutral = Bootstrap post job
        • check-skipped = Bootstrap post job
      • 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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge delay passed Applied (usually by Mergify) when PR approved and received no updates for 2 days merge me Tell Mergify Bot to merge queued ready and waiting Mergify is waiting out the cooldown period

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants