nomeata / cabal-plan-bounds

Calculate Haskell dependency ranges from multiple build plans
BSD 2-Clause "Simplified" License
33 stars 3 forks source link

Add a warning of too strict version constraints to README #12

Open maralorn opened 1 year ago

maralorn commented 1 year ago

Everytime I look at this package I break into cold sweat. I agree that it is a very useful tool and that having very loose lower bounds can sometimes be considered a lie. On the other hand too strict version constraints can limit the possibility for users to find valid build plans and are a bane for stackage and nixpkgs maintainers. We already discussed this on discourse.

Because of those concerns I suggest adding a note about this into the readme. I think there is a correct way to use this package, and I am actually considering using it for my own libraries. But I think that setup requires medium complex ci and I am afraid of people simply rerunning cabal-plan-bounds with the freshest possible versions from hackage, whenever they want to raise any of their bounds.

The suggested text is just a suggestion and I am neither married to the wording not the content. I am very open to workshop it, but I would be really happy if you agreed to put some wording to this effect into the README.

nomeata commented 1 year ago

Good point. It could even be moved above “Simple example”. And maybe give more concrete advise, e.g. refer to section “More sophisticated setup”, and then this section could also point out deliberately using an older index-state (if feasible), or explicitly test older versions of dependencies (using constraints:).