Changelog for semigroupoids-5.3.7
5.3.7 [2022.01.09]
-
Relax the
Bind
constraints in the following instances toFunctor
:-instance (Bind f, Monad f) => Alt (MaybeT f) -instance (Bind f, Monad f) => Plus (MaybeT f) +instance (Functor f, Monad f) => Alt (MaybeT f) +instance (Functor f, Monad f) => Plus (MaybeT f) -instance (Bind f, Monad f, Semigroup e) => Alt (ExceptT e f) -instance (Bind f, Monad f, Semigroup e, Monoid e) => Plus (ExceptT e f) +instance (Functor f, Monad f, Semigroup e) => Alt (ExceptT e f) +instance (Functor f, Monad f, Semigroup e, Monoid e) => Plus (ExceptT e f) -- If building with transformers-0.5.* or older -instance (Bind f, Monad f) => Alt (ErrorT e f) -instance (Bind f, Monad f, Error e) => Plus (ErrorT e f +instance (Functor f, Monad f) => Alt (ErrorT e f) +instance (Functor f, Monad f, Error e) => Plus (ErrorT e f)
5.3.6 [2021.10.07]
- Allow building with GHC 9.2.
- Allow building with
transformers-0.6.*
. - Add
Alt
instance forIdentity
. - Add
Conclude
,Decide
andDivise
type classes and instances. - Add
(<.*>)
,(<*.>)
, andtraverseMaybe
functions, which make it easier to definedTraversable1
instances for data types that have fields with a combination ofTraversable
andTraversable1
instances. - Add
Semigroupoids.Do
module with overloads for use withQualifiedDo
. - Add
Apply
,Alt
,Plus
,Bind
andBindTrans
instances for the CPS versions ofWriterT
andRWST
. - Add
psum
function toData.Functor.Plus
. - Add
Categorical
data type.
5.3.5 [2020.12.31]
- The build-type has been changed from
Custom
toSimple
. To achieve this, thedoctests
test suite has been removed in favor of usingcabal-docspec
to run the doctests. - Explicitly mark modules as
Safe
.
5.3.4 [2019.11.26]
- Achieve forward compatibility with GHC proposal 229.
5.3.3 [2019.08.27]
- Add
Alt
andPlus
instances forHashMap
from theunordered-containers
package.
5.3.2 [2019.01.04]
- Bump the lower bound on
semigroups
to 0.16.2, and avoid incurring the dependency entirely on recent GHCs. - Fix the build on GHC 7.0 and 7.2.
5.3.1 [2018.07.02]
- Fix a regression introduced in
semigroupoids-5.3
in which some modules regressed fromTrustworthy
toUnsafe
.
5.3 [2018.07.02]
- Allow building with
containers-0.6
. - Add
Alt
instances forFirst
andLast
fromData.Semigroup
, andAlt
andPlus
instances forFirst
andLast
fromData.Monoid
. - Add missing
Apply
,Bind
,Extend
,Foldable1
andTraversable1
instances forData.Semigroups
,Data.Monoid
andGHC.Generics
.
5.2.2 [2018.01.18]
- Add
optional
toData.Functor.Alt
(analogous to theoptional
function inControl.Applicative
) liftF2
is now a class method ofApply
(mirroring the fact thatliftA2
is now a class method ofApplicative
).liftF2
and(<.>)
have default definitions in terms of the other.- Allow building with GHC 8.4
Apply
andBind
instances forQ
, from thetemplate-haskell
package. (As a consequence,Data.Semigroup.Foldable
is no longer aTrustworthy
module.)- Add instances for
(:~:)
and(:~~:)
fromData.Type.Equality
, andCoercion
fromData.Type.Coercion
5.2.1
- Add the
toNonEmpty
method toFoldable1
. AddfoldrM1
andfoldlM1
functions toData.Semigroup.Foldable
that are defined in terms oftoNonEmpty
. - Add
Apply
,Bind
,Foldable1
, andTraversable1
instances forComplex
- Add
Apply
andBind
instances forHashMap
from theunordered-containers
package (on whichsemigroupoids
now depends) - Add
Semigroupoid
instances forTagged
andConst
5.2
- Revamp
Setup.hs
to usecabal-doctest
. This makes it build withCabal-1.25
, and makes thedoctest
s work withcabal new-build
and sandboxes. - Added instances to
Alt
,Plus
,Apply
,Bind
andExtend
forGHC.Generics
,Tagged
andProxy
where appropriate.
5.1
- The remaining orphan instances in
Data.Traversable.Instances
have been replaced in favor of the orphan instances fromtransformers-compat-0.5
. - The documentation now states laws that instances of
Apply
are expected to uphold. doctest-0.11
support- Fixed compilation of tests with
stack
5.0.1
transformers-compat
0.5 support- Removed some redundant constraints.
- GHC 8 support
5.0.0.4
doctest
0.10 support
5.0.0.2
- Bugfix for GHC 7.4. PolyKinds on 7.4 cause all sorts of haskell interface file errors. One of the #if guards that turned it off on 7.4 was missing and has been fixed.
5.0.0.1
- Added the CHANGELOG to the distribution so that
hackage
can link to it in the haddocks.
5
- Absorbed
Data.Bifunctor.Apply
,Data.Semigroup.Bifoldable
andData.Semigroup.Traversable
frombifunctors
. - This caused us to pick up a dependency on
tagged
. - Exiled
Data.Semifunctor.*
,Data.Semigroupoid.Product
andData.Semigroupoid.Coproduct
tosemigroupoid-extras
. - This let us open up to older versions of GHC again.
- Set an explicit fixity for
-<-
and->-
.
4.5
- Major changes to the API to support PolyKinds and DataKinds. This necessarily shuts off GHC <= 7.4.
- Orphan instances have moved upstream into a common
base-orphans
package.
4.3.1
- Added
asum1
toData.Semigroup.Foldable
.
4.3.0.1
- Support for 'ConstrainedClassMethods' is currently required for GHC HEAD.
4.3
- Added missing instances for
ExceptT
. Obtain it viatransformers-compat
if need be for oldtransformers
versions. - Several
Bind
andApply
instances now require somewhat more minimal contexts.
4.2
- Backported
Foldable
/Traversable
instances fromlens
4.1
Foldable1
/Traversable1
for tuples
4.0.4
contravariant
1.0 support.
4.0.3
- Added flags to provide unsupported cabal sandbox build modes.
4.0.1
- Fixed bitrot in the
Data.Functor.Extend
documentation. - Fixed warnings on GHC 7.8.1rc2 caused by importing
Control.Monad.Instances
.
4.0
- Merged in the contents of the
groupoids
andsemigroupoid-extras
packages.
3.1
- Added the rectangular band
Semigroupoid
for(,)
. Would that make it a Bandoid?
3.0.3
- Claim to be
Trustworthy
where necessary
3.0.2
- Tightened the upper bounds slightly to enable PVP compliance while retaining a flexible development cycle.
- Raised the upper bound on
contravariant
.
3.0.1
- Removed upper bounds relative to my other packages
- Refactored directory layout