[QuickCheck] 2.7 is a huge pain in the ass

Bryan O'Sullivan bos at serpentine.com
Mon Apr 28 17:53:44 BST 2014


On Mon, Apr 28, 2014 at 1:33 AM, Nick Smallbone <nicsma at chalmers.se> wrote:

> Sorry to hear this. I do try hard to avoid making breaking changes to
> QuickCheck, but as there hadn't been a significant QuickCheck release
> for nearly two years (my fault) there were a couple of API changes
> this time. Can I ask what exactly you ran into?
>

There have been a few things.

Turning Property into a newtype led to completely mysterious breakages,
where it is completely unclear from the type errors why code that used to
work no longer does.

Here's the first example:
https://github.com/bos/text/commit/47844197b09efe9b36f3d89855c0dc05079046b3

I had absolutely no idea what was wrong above, I just got lucky in finding
a fix.

This is a more complex version of the same problem, where I finally had to
break down and actually read the QuickCheck source to figure out why my
code had suddenly broken:
https://github.com/bos/text/commit/be120c5a83137ab83b8de7ec2221e1932ad5b1f5

Yet another version of the same thing:
https://github.com/bos/statistics/commit/9a973b54747fb7250916cb7c5c96c8c874fac046

Code renaming:
https://github.com/bos/statistics/commit/d0ce236e690d3e3ba80248c9dc02a04582a2bc5a

These are pretty disruptive changes, given that they appear to buy us
nothing.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://projects.haskell.org/pipermail/quickcheck/attachments/20140428/00869849/attachment.htm>


More information about the QuickCheck mailing list