Feedback on potential change in boot library

Adam Gundry adam at well-typed.com
Thu Nov 28 08:05:30 UTC 2024


On 27/11/2024 18:59, Oleg Grenrus wrote:
>
>> So to repeat: if clients don't care to specify their compatibility 
>> correctly, have courage to say it's their fault their code broke.

In the general case, I agree: if a library introduces new exports and 
correctly bumps the minor version bound per the PVP, then the library 
author is not responsible for their clients having overly lax bounds. 
And perhaps it would be better if the language defaulted to encouraging 
more precise imports.

However for boot libraries specifically, clients may de facto be forced 
to upgrade to a newer library version in order to use a new GHC release 
(at least, if lib:ghc is in the install plan or they are using a 
Stackage-style universal package set). Correctly specified bounds don't 
help, they just result in a solver failure rather than a build failure. 
That's why I think GHC should aim to minimize boot library API changes 
within a single release series, at least until we can relax the coupling 
of boot libraries.

Adam


-- 
Adam Gundry, Haskell Consultant
Well-Typed LLP, https://www.well-typed.com/

Registered in England & Wales, OC335890
27 Old Gloucester Street, London WC1N 3AX, England



More information about the ghc-devs mailing list