Bug 2262768

Summary: Review Request: ghc-deriving-compat - Backports of GHC deriving extensions
Product: [Fedora] Fedora Reporter: Frank Dedden <frank>
Component: Package ReviewAssignee: Jens Petersen <petersen>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: haskell-devel, package-review
Target Milestone: ---Flags: petersen: fedora-review+
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://hackage.haskell.org/package/deriving-compat
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-07-02 15:18:46 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Frank Dedden 2024-02-05 11:31:08 UTC
Spec URL: https://fdedden.fedorapeople.org/ghc-deriving-compat.spec
SRPM URL: https://fdedden.fedorapeople.org/ghc-deriving-compat-0.6.5-1.fc40.src.rpm

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.

Fedora Account System Username: fdedden

Comment 1 Frank Dedden 2024-02-05 11:31:11 UTC
This package built on koji:  https://koji.fedoraproject.org/koji/taskinfo?taskID=112968129

Comment 2 Fedora Review Service 2024-02-05 11:42:34 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/6986324
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2262768-ghc-deriving-compat/fedora-rawhide-x86_64/06986324-ghc-deriving-compat/fedora-review/review.txt

Found issues:

- No gcc, gcc-c++ or clang found in BuildRequires
  Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/C_and_C++/

Please know that there can be false-positives.

---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 3 Jens Petersen 2024-05-28 14:48:20 UTC
The package complies with the packaging guidelines and installs.
Spec file is generated with cabal-rpm.
License is BSD3.

Package APPROVED

Comment 4 Jens Petersen 2024-05-28 14:50:25 UTC
Just noting that the testsuite could perhaps be enabled (according to cabal-rpm),
though I didn't try and its not a hard requirement.

Comment 5 Fedora Admin user for bugzilla script actions 2024-07-01 12:34:45 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/ghc-deriving-compat

Comment 6 Frank Dedden 2024-07-02 15:18:46 UTC
I have enabled the test-suite, and the package built successfully. It has been added to rawhide.