Skip to main content

Testing Dependency Version Lower Bounds

Joachim Breitner started an interesting Haskell discourse discussion titled “Dependency version bounds are a lie.” My summary of the problem is that many people test and maintain upper bounds but fail to test and maintain lower bounds. I test and maintain the lower bounds of my projects using Stack, but there has not been an easy way to do so using Cabal. I am very happy that there is already an effort to improve Cabal so that it will be easy to do so in the future.

I test my public Haskell packages using both Cabal and Stack, and my lower dependency version bounds are determined by the versions included in the oldest tested Stack snapshot. The lower bounds are therefore tested in CI with every push.

I realized, however, that I have inadvertently made an exception for the base package. I will audit the dependency version lower bounds of my projects and resolve any such issues so that all lower bounds are tested.

Author

Travis Cardwell

Published

Tags
Related Blog Entries