<div dir="ltr">## Current affairs<br><br>* Switching to Fourmolu 0.14: <a href="https://github.com/haskell/cabal/issues/9424">https://github.com/haskell/cabal/issues/9424</a><br><br>* Adds script to automatically generate GHCup metadata for Cabal releases: <a href="https://github.com/haskell/cabal/pull/9411">https://github.com/haskell/cabal/pull/9411</a><br><br>* Design a 'Hooks' build type to replace 'Custom': <a href="https://github.com/haskell/cabal/issues/9292">https://github.com/haskell/cabal/issues/9292</a><br><br>    Andrea's comments:<br>    - I think the implementation of the build-type is secondary; and indeed not useful by itself.<br>    - We need to come to an agreement on a design for the new Cabal/package-builder interface that will augment the CLI interface.<br>    - I don't think we will be able to completely remove the CLI interface. If we offer a shim for it, we will end up in a situation where stack will be able to build cabal packages with build-type custom (thanks to the shim) but cabal-install won't!<br><br>We need to build an architecture that is gradually extensible and where backwards compatibility is not a major roadblock.<br>Moreover, it is felt that many important details are lacking: motivations are scarce, there seems to be a disconnect in the discussion. As it is now, the design seems to be too rigid and there are legitimate fears that the cabal team is going to get stuck with it, with no possibility of evolution. If the work is a replication of what exists, we are going to the same dead-end that we're trying to get out of.<br><br>A meeting will be brokered with the WT consultants in charge of this.<br><br><br>## Reviews needed<br><br>* cabal-install-solver: fix pkgconf 1.9 --modversion regression: <a href="https://github.com/haskell/cabal/pull/9391">https://github.com/haskell/cabal/pull/9391</a><br><br>* Warn early that overwrite-policy is needed before build: <a href="https://github.com/haskell/cabal/pull/9268">https://github.com/haskell/cabal/pull/9268</a><br><br>* `cabal check` <a href="https://github.com/haskell/cabal/pull/8427">https://github.com/haskell/cabal/pull/8427</a><br>  It is not mission critical, but it is blocking some further work (e.g. [#8587](<a href="https://github.com/haskell/cabal/issues/8587#issuecomment-1435698751">https://github.com/haskell/cabal/issues/8587#issuecomment-1435698751</a>), [#6282](<a href="https://github.com/haskell/cabal/issues/6282#issuecomment-1436069519)">https://github.com/haskell/cabal/issues/6282#issuecomment-1436069519)</a>).<br>  The PR has one approval (Andreas Abel).<br>  <br>* Fix cabal haddock --open on Windows: <a href="https://github.com/haskell/cabal/pull/9428">https://github.com/haskell/cabal/pull/9428</a><br>  <br>## Food for thoughts<br> <br>- Andrea: I wish we could organise modules to separate code related to v1 commands, v2 commands, and common to both. I keep finding confusing what relates to what. Separate hierarchies would help to visualise the different code paths. I have a WIP for this at <a href="https://github.com/andreabedini/cabal/tree/split-legacy-commands">https://github.com/andreabedini/cabal/tree/split-legacy-commands</a>. It could be worth thinking of splitting v1 commands into a separate executable/library. I could open a RFC issue. <br><br>Hécate: I agree, it will certainly be helpful to distinguish these modules once time has come to remove the V1 modules. This may not be for tomorrow but at least this work will be useful.<br><br>fgaz: splitting them into a separate executable can put some pressure on the remaining v1 users to either maintain the v1 executable or improve v2 until it suits their needs. we effectively remove v1 (long overdue) while giving others the opportunity to continue using it<br><br>- Andrea: I find the situation of IndexUtils very frustrating. Different `Repo` are treated uniformly while their functionality and behaviours are quite different. The frequence of case splitting is evidence for this.<br>I have been working on-and-off on a refactor but there are many design decisions I have not settled upon: i.e. open (G?ADTs) vs closed (type-class). Any advice would be appreciated.<br><br>Gershom: A refactoring could be tricky but would be welcome. <br><br><div>---</div><div><br></div>Hécate will post a call for QA testers running Windows, in order to break the vicious circle of unusability. Toolchain experts are not necessarily needed at this time but would be welcome nonetheless.<br></div>