Meeting URL: https://meet.jit.si/StableHaskellMeetBiWeekly
Previous meeting notes
-
David: Conversations about GHC nightlies
- Pending for next meeting
-
Ben: Carry
base
stability proposal to CLC.-
Possible mechanisms for codifying the internal/external distinction (this should really be a post on HF proposal 47)
- Just an out-of-band human-readable list
- Hijack the Stability field of Haddock. But this is free text, and although machine-readable the machine doesn't read it.
- Add a new Haddock field for this purpose.
- Establish the convention that "
Internal
" in the module name means "internal". A bit more visible. - Split base into two packages:
ghc-base
andbase
. The latter starts as a shim over the former. But we'd want some kind of warning to say "don't depend on me lightly". - Add a new field in
.cabal
files,alongsideexposed-modules
-
HF tech group is seeking buy-in from GHC devs and from CLC. Action Ben to reply on behalf of GHC team.
-
Ben: Bring ask of defining "Technology Preview" to GHC team.
- Some compiler features are "tech previews", but neither this term, nor which features constiute a tech preview, are clearly defined/communicated.
- This was discussed on the GHC call. Key points about a tech preview:
- Expectation that work will continue -- unlikely to just disappear
- Doesn’t implement all features (best to enumerate: TH…)
- A list of known bugs/shortcomings listed here (wiki page)
- Isn’t optimized (produces suboptimal code)
- Behavior may change in the future, although we will try to document such changes
- How should this be advertised?
- Simon: Define it on the web site, describe which things are this.
- Next step:
- Place this definition on the Wiki,
- Use this terminology in the release notes to say which features are tech-previews (give a full list of tech-previews, rather than just the diffs)
- Link to from release notes where appropriate
- David: does GHC have a process for tracking when things transition?
- Answer: no.
-
Compiler extension stability etc
- https://gitlab.haskell.org/ghc/ghc/-/issues/21475.
- Some to and fro about this on the GHC steering committee email list
- Classifying extensions considered not very useful by the stability working group.
- Alternatively, have the table, make it part of GHC source code, and add warning flags to let you know if you use an unstable extension.
- Not clear how much user pressure there is here.
-
Chris: Add to
mtl
migration guide- No update
-
Trevis: Examine TH users for possibility of
th-abstraction
- No update on this yet
- Interior NULs in
FilePath
s (CLC #144)- Has potential stability issues because of changing file path semantics, although no observably so for most clients.
- Probably want to backport
- Should we bump the
base
version number? Major or minor? - Basically a question for CLC.
- Worth mentioning in the proposal/comment that exceptions are already thrown for bogus filenames
- Cabal 3.10 released
-
Bulletin discussed previously
- Previously holding the token: Chris
-
GHC warning policy document as discussed previously
- Previously holding the token: Chris
-
Creating and maintaining a set of hlint rules to promote stability
- Previously holding the token: Trevis
- Opened issue asking if we can write rules for typeclasses.
-
GHC API discussed previously
- Previously holding the token: David
-
Update on Language/compiler features to help stability, specifically #4879
- Previously holding the token: David + Simon