jgm/commonmark-hs

Too-wide version bounds in commonmark-extensions

david-christiansen opened this issue · 5 comments

I just tried building a new Hakyll project, and got the following error from commonmark-extensions:

src/Commonmark/Extensions/FancyList.hs:32:17: error:
    Variable not in scope:
      getParentListType
        :: ParsecT [Tok] (BPState m il bl) m (Maybe ListType)
   |
32 |   mbListType <- getParentListType
   |                 ^^^^^^^^^^^^^^^^^

The issue seems to be that commonmark-extensions version 0.2.3.1 specifies a lower bound of 0.2 for commonmark, but Commonmark.Blocks in that package didn't export getParentListType until version 0.2.2.

Would you mind making a metadata revision to the 0.2.3.1 release, please?

jgm commented

The issue is fixed in 0.2.3.3, is it not?

It is, but it is still important to correct version bounds on all releases of a package, not just the latest. If 0.2.3.1 has incorrectly lenient bounds, then cabal's constraint solver just ends up deciding to use 0.2.3.1, and people's builds fail after attempting to compile what it has no way of knowing is an incompatible set of packages.

jgm commented

ok, done

Thank you ❤️