Tue, 10 Nov 2026 06:58:27 UTC Log in
Backports of GHC deriving extensions 86.49 KB built 2026-10-14 00:01:04 GMT

Description

'deriving-compat' 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 'Bounded' * Deriving 'Enum' * Deriving 'Ix' * Deriving 'Eq' * Deriving 'Ord' * Deriving 'Read' * Deriving 'Show' * 'DeriveFoldable' * 'DeriveFunctor' * 'DeriveTraversable' * 'GeneralizedNewtypeDeriving' (with GHC 8.2 or later) * 'DerivingVia' (with GHC 8.2 or later) See the "Data.Deriving" module for a full list of backported changes. In addition, 'deriving-compat' also provides some additional 'deriving' functionality that has not yet been merged into upstream GHC. Aside from the GHC 'deriving' extensions mentioned above, 'deriving-compat' also permits deriving instances of classes in the 'Data.Functor.Classes' module, covering the 'Eq1', 'Eq2', 'Ord1', 'Ord2', 'Read1', 'Read2', 'Show1', and 'Show2' classes. This extra functionality is outside of the main scope of 'deriving-compat', as it does not backport extensions that exist in today's GHC. Nevertheless, the underlying Template Haskell machinery needed to derive 'Eq' and friends extends very naturally to 'Eq1' and friends, so this extra functionality is included in 'deriving-compat' as a convenience. Note that some recent GHC typeclasses/extensions are not covered by this package: * 'DeriveDataTypeable' * '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 '<http://hackage.haskell.org/package/generic-deriving 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 '<http://hackage.haskell.org/package/th-lift 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 '<http://hackage.haskell.org/package/bifunctors bifunctors>' to derive these typeclasses using Template Haskell.

Dependencies

14 total
Requires12
  • ghc-Cabal-devel
  • ghc-QuickCheck-devel
  • ghc-base-devel
  • ghc-containers-devel
  • ghc-ghc-boot-th-devel
  • ghc-hspec-devel
  • ghc-hspec-discover-devel
  • ghc-rpm-macros
  • ghc-template-haskell-devel
  • ghc-th-abstraction-devel
  • rpmlib(CompressedFileNames) <= 3.0.4-1
  • rpmlib(FileDigests) <= 4.6.0-1
Provides2
  • ghc-deriving-compat = 0.6.8-2.fc45
  • ghc-deriving-compat-devel = 0.6.8-2.fc45
ObsoletesNo Obsoletes
ConflictsNo Conflicts
RecommendsNo Recommends
SuggestsNo Suggests
SupplementsNo Supplements
EnhancesNo Enhances

Files

2
Files 1–2 of 2

Component of

buildroots that installed this RPM

No Buildroots