The deriving-compat package
Provides Template Haskell functions that mimic deriving extensions that were introduced or modified in recent versions of GHC. Currently, the following typeclasses/extensions are covered:
Deriving Eq, Eq1, and Eq2
Deriving Ord, Ord1, and Ord2
Deriving Read, Read1, and Read2
Deriving Show, Show1, and Show2
See the Data.Deriving module for a full list of backported changes.
Note that some recent GHC typeclasses/extensions are not covered by this package:
DeriveGeneric, which was introducted in GHC 7.2 for deriving Generic instances, and modified in GHC 7.6 to allow derivation of Generic1 instances. Use Generics.Deriving.TH from generic-deriving to derive Generic(1) using Template Haskell.
DeriveLift, which was introduced in GHC 8.0 for deriving Lift instances. Use Language.Haskell.TH.Lift from th-lift to derive Lift using Template Haskell.
The Bifunctor typeclass, which was introduced in GHC 7.10, as well as the Bifoldable and Bitraversable typeclasses, which were introduced in GHC 8.2. Use Data.Bifunctor.TH from bifunctors to derive these typeclasses using Template Haskell.
[Skip to Readme]
|Versions||0.1, 0.2, 0.2.1, 0.2.2, 0.3, 0.3.1, 0.3.2, 0.3.3, 0.3.4, 0.3.5, 0.3.6 (info)|
|Dependencies||base (>=4.3 && <5), containers (>=0.1 && <0.6), ghc-boot-th, ghc-prim, template-haskell (>=2.5 && <2.13), transformers (>=0.2), transformers-compat (>=0.5) [details]|
|Copyright||(C) 2015-2017 Ryan Scott|
|Maintainer||Ryan Scott <firstname.lastname@example.org>|
|Source repository||head: git clone https://github.com/haskell-compat/deriving-compat|
|Uploaded||Tue Apr 11 00:11:05 UTC 2017 by ryanglscott|
|Distributions||LTSHaskell:0.3.6, NixOS:0.3.6, Stackage:0.3.6, Tumbleweed:0.3.6|
|Downloads||896 total (110 in the last 30 days)|
|Status||Docs available [build log]
Last success reported on 2017-04-11 [all 1 reports]
Hackage Matrix CI
|base-4-9||Use base-4.9 or later.||Enabled||Automatic|
|template-haskell-2-11||Use template-haskell-126.96.36.199 or later.||Enabled||Automatic|
|new-functor-classes||Use a version of transformers or transformers-compat with a modern-style Data.Functor.Classes module. This flag cannot be used when building with transformers-0.4, since it comes with a different version of Data.Functor.Classes.||Enabled||Automatic|
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
For package maintainers and hackage trustees