Files
zeekay a61bcad919 fix(haskell): green build+test on GHC 9.6 + provision zap front-end in CI
Library + zapc-haskell already compiled; this finishes the test suite and CI:
- SchemaGeneration.hs: import Control.Monad (replicateM) — mtl 2.3 stopped
  re-exporting Control.Monad from Control.Monad.State.Strict.
- Module/Zap/Rpc.hs (expectException): GHC 9.6's stricter ambiguity check +
  waitPipeline's ReprFor a ~ 'Ptr pr rewrite broke the fundep-resolved Parse
  constraint. Pin the parsed type to  and annotate the bound result
  (forall + ScopedTypeVariables) so GHC discharges Parse a (Parsed a) directly.
- Regression.hs: regenerate the issue-#56 abort-message wire bytes — the rebrand
  find-replaced capnproto->zap INSIDE the binary literal, shortening the embedded
  text without updating the list-pointer length -> TraversalLimitError. Rebuilt
  via parsedToLBS of the expected Message.
- zap-tests.cabal: drop the phantom 'benchmark bench' stanza (bench/Main.hs was
  never in the repo) and the broken examples/ test source dirs.
- cabal.project: allow-newer lifetimes:transformers (stale upstream bound; GHC
  9.4+ ships transformers 0.6 and lifetimes compiles against it).
- ci.yml: build+install the zap schema front-end from cpp-core (the integration
  tests shell out to it), mirroring the Rust install-zap step.

Local: cabal build all + cabal test all => 165 examples, 0 failures (GHC 9.6.7).
2026-06-20 12:33:31 -07:00
..