
On Wed, May 7, 2014 at 1:34 PM, Tom Ellis < tom-lists-haskell-cafe-2013@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/b1137852e4f58520ad65d01b2...
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