transformers 0.4: change in accessor function exports?

Michael Snoyman michael at snoyman.com
Wed May 7 11:10:42 UTC 2014


On Wed, May 7, 2014 at 1:34 PM, Tom Ellis <
tom-lists-haskell-cafe-2013 at jaguarpaw.co.uk> wrote:

> On Wed, May 07, 2014 at 12:15:58PM +0200, Herbert Valerio Riedel wrote:
> > On 2014-05-07 at 11:47:25 +0200, Henning Thielemann wrote:
> > > Am 07.05.2014 11:40, schrieb Herbert Valerio Riedel:
> > >> On 2014-05-07 at 00:32:33 +0200, Carter Schonwald wrote:
> > >>> should the 0.4 release be temporarily marked deprecated so that
> breakages
> > >>> stop for a wee bit?
> > >>
> > >> I know, some of you may not want to hear this, but this will only bite
> > >> packages not following the PVP (i.e. those that didn't have upper
> > >> bounds)... transformers-0.4 was a major version bump after all, so it
> > >> *is* allowed to break the API (whether that was a good design decision
> > >> is a different discussion though)
> > >
> > > However, turning the runIdentity function back into a record field
> > > name in 0.4.1.0, was another breaking change that only got a minor
> > > version bump. :-(
> >
> > Btw, as I can't think of an example right now, what would be an example
> > for code that works with transformers-0.4.0.0 but wouldn't compile
> > anymore with transformers-0.4.1.0?
>
> Surely just the reverse of the breaking change?
>
>
> https://github.com/ibotty/streaming-commons/commit/b1137852e4f58520ad65d01b20623a968c18ae8f
>

No, that code is compatible with transformers 0.3, 0.4, and 0.4.1. With the
syntax:

    import Data.Functor.Constant (Constant (Constant), getConstant)

We're importing the data type Constrant, the data construct Constant for
that data type, and the function getConstant. It doesn't matter if
getConstant is a normal function or a field accessor, it can still be
accessed by that syntax.

Michael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/libraries/attachments/20140507/21474359/attachment-0001.html>


More information about the Libraries mailing list