# Cabal meeting (07/12/2023) Previous meeting notes: https://hackmd.io/YmGTliI_Qf6kvlXwEzShLw # Mandatory for the 3.10.3 release Mikolaj: - stuff to be backported are [here](https://github.com/haskell/cabal/issues?q=label%3A%22attention%3A+needs-backport+3.10%22) (each of the 4 ticket there at this time needs some extra work to finish/backport; volunteers welcome) - we need a release 3.10.3 to not depend on an old (3.6) patched (with a security patch we already have in 3.10) GHCup version. - no ETA, but ASAP - GHC extensions, after a quickfix and the release, let's make a postmortem: why did we miss `TypeAbstractions`? (f-a will check) # Fixing a serious pkg-config-related issue for the 3.12 release Kristen: - performance issue on `pkg-config` one https://github.com/haskell/cabal/issues/8930 - Mikolaj: is a fix already on master? in 3.10? backportable? a cheap quickfix only for 3.10? --- the answers are "no" - Mikolaj: Kristen, you are right, a related PR is merged to master, marked as needs-backport, but not backported yet: https://github.com/haskell/cabal/pull/9391 - Three ideas for the actual fixes are proposed: - Caching all pkg-config queries - Lazy IO for querying pkg-config only as needed - Flag to disable pkg-config queries at start of dependency solving - Two PRs for caching (not merged to master yet): - https://github.com/haskell/cabal/pull/9360 - https://github.com/haskell/cabal/pull/9422 # `package-constraints` RFC - [ticket](https://github.com/haskell/cabal/issues/9477) - Javier illustrates them - there will be a new section `package-contsraints` - you can specify bounds there - just syntactic sugar - as now, have to topologically sort component in my mind, which is error prone. - questions: “should PC change _the solver_? If I depend on a package that depends on `aeson`, should that be transitive?” Might be complicated, edge cases. - name: `package-bounds` maybe? ? - Michael: general constraints but `cabal check` say “don’t do it” - because there are actually legitimate use cases, I will put them in the issue. - it could be easier to explain to users. - Gershom: syntactic sugar is convenient, transitive dependencies could be very weird for users. - name: `default-package-bounds`? - propose we stick to the initial syntax. - Experimental release? - brandon: it will be not used until it is accepted by Hackage, and then it will be frozen. - Javier will summarise on the RFC ticket. # Other stuff Rodrigo: * On applying for the second round of STF funding --- feedback is needed (please send to rodrigo@well-typed.com) on what to work on next, what to continue, what related work to tackle, e.g., one idea is per-module build plans that builds on the Hooks work * Finished the re-design of coverage reporting https://github.com/haskell/cabal/pull/9464 (needs final reviews!) Kristen: * Status of https://github.com/haskell/cabal/pull/8999 -- @Hecate, do we need to redo the PR at our leisure later on?