Haskell library (stack + hpack). Edit package.yaml, never generated .cabal.
- build and test (GHC 9.10):
stack build --test --ghc-options=-Werror - build and test (GHC 9.12): add
--stack-yaml stack-ghc-9.12.yaml - format:
fourmolu -i src test(fourmolu 0.21.0.0, config infourmolu.yaml) - lint:
hlint src test(rules in.hlint.yaml; HLS has no hlint plugin on GHC 9.10)
CI (.github/workflows/ci.yml) runs all of the above; keep it green.
fmapovermap,<>over++(enforced by hlint)- curried constraints:
Read a => Ord a => a, not(Read a, Ord a) => a; not enforced by tooling; constraint aliases such asCLIEffectsstay tuples -Wredundant-constraintson: only addShow eforthrowErrorwhere needed
- public Hackage only: no git or private
extra-deps. http-client-effectful-1.0.0capseffectful < 2.7; GHC 9.12 nightly config relaxes bounds withallow-newer-depsinstead of pinning olderpackage.yamlversion bounds span the versions both CI configs resolve; widen them when a snapshot moves