Skip to content

Toolchain: advance the index-state, which moves warp to 3.4.19 - #85

Merged
aoinoikaz merged 2 commits into
mainfrom
toolchain/index-state
Nov 1, 2026
Merged

aoinoikaz merged 2 commits into
mainfrom
toolchain/index-state

Conversation

@aoinoikaz

@aoinoikaz aoinoikaz commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

cabal.project held the index at 2026-08-20, so the server, which the deploy job builds from this pin, ran warp 3.4.15. warp 3.4.17 changes two things that matter here:

The pin does not travel to consumers, so a Hackage build already resolves a current warp. No changelog entry.

Change

  • index-state moves to 2026-11-01T10:08:12Z. warp goes to 3.4.19, with http2 5.4.12, network 3.2.11.0 and time-manager 0.5.2 among 23 packages that move.
  • The test suite's QuickCheck cap rises from < 2.19 to < 2.20. The new index resolves 2.19. 2.19 adds instances and leaves Result as the suite matches it.
  • The three CI steps that name a test suite or run the tests without --enable-tests now pass it, and CONTRIBUTING quotes the same command.

Why the CI steps change

Without --enable-tests a test stanza is only a preference. The solver settles the library's goals first, and if the stanza then conflicts it drops the stanza rather than backjump. At this index the library takes tagged 0.9 while aeson, through wai-extra in the test stanza, needs an older one, so cabal build nova-cache-bzip2-test stops with "the solver did not find a plan that included the test suites". A plan exists, and --enable-tests finds it. The matrix step passed only because -f server makes those packages hard goals.

Checks

  • cabal build all -f server --enable-tests --ghc-options="-Werror", then cabal test -f server --enable-tests --ghc-options="-Werror": pass on macOS arm64, GHC 9.14.1, on warp 3.4.19.
  • actionlint: clean. ASCII only.

The pin held warp at 3.4.15, and the server is deployed from this pin. 3.4.17
makes a chunked body cut short by the end of input an error, and refuses a
request framing warp and a proxy could read differently.

The test suite's QuickCheck cap rises to admit 2.19, which the new index
resolves: with the old cap, cabal test finds no component it can build.
Without --enable-tests a test stanza is only a preference. The solver settles
the library's goals first, and when the stanza then conflicts with them it
drops the stanza rather than backjump into them: tagged 0.9 is newest for the
library, aeson through wai-extra needs an older one, and the job stops with no
plan for a test suite that has one. Asking for tests makes the stanza a goal.
@aoinoikaz
aoinoikaz merged commit 3758ca1 into main Nov 1, 2026
12 checks passed
@aoinoikaz
aoinoikaz deleted the toolchain/index-state branch November 1, 2026 13:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant