git.iko.soy/typeable/generic-arbitrary
on c3283f9 help sign in
.github/workflows/haskell-ci.yml+1−3
since splitsnapshots
unifiedsplit
@@ -1,5 +1,5 @@
1name: Haskell-CI
1name: Haskell-CI
2−on: [push, pull_request]
2+on: [push]
3jobs:
3jobs:
4 linux:
4 linux:
5 name: GHC-${{ matrix.ghc-version }}
5 name: GHC-${{ matrix.ghc-version }}
@@ -11,8 +11,6 @@ jobs:
11 - 8.10.7
11 - 8.10.7
12 - 9.0.2
12 - 9.0.2
13 - 9.2.4
13 - 9.2.4
14− - 9.4.3
15− - 9.8.1
16 steps:
14 steps:
17 - uses: actions/checkout@v3
15 - uses: actions/checkout@v3
18 - uses: haskell/actions/setup@v2
16 - uses: haskell/actions/setup@v2
CHANGELOG.md−16
@@ -1,19 +1,3 @@
1−1.0.1.2
2−-------
3−
4−* Fix dependency bounds (including retroactively), and compilation with warnings.
5−
6−1.0.1.1
7−-------
8−
9−* Fix compilation with GHC 9.8.3
10−
11−1.0.1
12−-----
13−
14−* Compillability by GHC-9.2.4
15−* Fix cabal `tested-with` field
16−
171.0.0
11.0.0
18-----
2-----
19
3
generic-arbitrary.cabal+12−16
@@ -1,5 +1,5 @@
1name: generic-arbitrary
1name: generic-arbitrary
2−version: 1.0.1.2
2+version: 1.0.0
3synopsis: Generic implementation for QuickCheck's Arbitrary
3synopsis: Generic implementation for QuickCheck's Arbitrary
4description:
4description:
5 Generic implementations of methods of the 'Arbitrary' class from the
5 Generic implementations of methods of the 'Arbitrary' class from the
@@ -16,13 +16,9 @@ category: Generic
16build-type: Simple
16build-type: Simple
17extra-source-files: CHANGELOG.md
17extra-source-files: CHANGELOG.md
18 , README.md
18 , README.md
19−cabal-version: 2.0
19+cabal-version: 1.22
20−tested-with: GHC == 8.6.5
20+tested-with: GHC == 8.10.7
21− , GHC == 8.10.7
22− , GHC == 9.0.2
21+ , GHC == 9.0.2
23− , GHC == 9.2.4
24− , GHC == 9.4.3
25− , GHC == 9.8.1
26
22
27source-repository head
23source-repository head
28 type: git
24 type: git
@@ -31,7 +27,7 @@ source-repository head
31library
27library
32 exposed-modules: Test.QuickCheck.Arbitrary.Generic
28 exposed-modules: Test.QuickCheck.Arbitrary.Generic
33 build-depends: base >=4.8 && <5
29 build-depends: base >=4.8 && <5
34− , QuickCheck >=2.8
30+ , QuickCheck
35 hs-source-dirs: src
31 hs-source-dirs: src
36 default-language: Haskell2010
32 default-language: Haskell2010
37 default-extensions: AllowAmbiguousTypes
33 default-extensions: AllowAmbiguousTypes
@@ -59,16 +55,15 @@ test-suite test
59 hs-source-dirs: test
55 hs-source-dirs: test
60 main-is: Test.hs
56 main-is: Test.hs
61 default-language: Haskell2010
57 default-language: Haskell2010
62− build-depends: base >=4.12 && <5
58+ build-depends: base >= 4.8 && <5
63− , QuickCheck >=2.10
59+ , QuickCheck
64 , deepseq
60 , deepseq
65 , generic-arbitrary
61 , generic-arbitrary
66− , tasty >=1.4.2 || <1.4.0.1
62+ , tasty
67− , tasty-discover >= 2.0.0
63+ , tasty-discover
68− , tasty-hunit >= 0.9.2
64+ , tasty-hunit
69 , tasty-quickcheck
65 , tasty-quickcheck
70 other-modules: Auxiliary
66 other-modules: Auxiliary
71− , EnumTest
72 , LimitationDemo
67 , LimitationDemo
73 , NoTypecheckTest
68 , NoTypecheckTest
74 , ParametersTest
69 , ParametersTest
@@ -94,8 +89,9 @@ test-suite test
94 , TypeSynonymInstances
89 , TypeSynonymInstances
95 , UndecidableInstances
90 , UndecidableInstances
96 , ViewPatterns
91 , ViewPatterns
97− build-tool-depends: tasty-discover:tasty-discover
92+ build-tools: tasty-discover
98 ghc-options: -Wall
93 ghc-options: -Wall
99 -threaded
94 -threaded
100 -rtsopts
95 -rtsopts
101 "-with-rtsopts=-N -A64m -qb0 -n4m -T -I1"
96 "-with-rtsopts=-N -A64m -qb0 -n4m -T -I1"
97+ default-extensions: DeriveGeneric
ghc-9.0.2.yamldeleted−1
@@ -1 +0,0 @@
1−resolver: lts-19.20
ghc-9.0.2.yaml.lockdeleted−12
@@ -1,12 +0,0 @@
1−# This file was autogenerated by Stack.
2−# You should not edit this file by hand.
3−# For more information, please see the documentation at:
4−# https://docs.haskellstack.org/en/stable/lock_files
5−
6−packages: []
7−snapshots:
8−- completed:
9− sha256: be747117bed6d462806c883352c3206325b23480825103f5c87884e97e52819a
10− size: 619173
11− url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/19/20.yaml
12− original: lts-19.20
ghc-9.2.4.yamldeleted−1
@@ -1 +0,0 @@
1−resolver: nightly-2022-08-24
ghc-9.2.4.yaml.lockdeleted−12
@@ -1,12 +0,0 @@
1−# This file was autogenerated by Stack.
2−# You should not edit this file by hand.
3−# For more information, please see the documentation at:
4−# https://docs.haskellstack.org/en/stable/lock_files
5−
6−packages: []
7−snapshots:
8−- completed:
9− sha256: ff431937a638ebfaa5e6fec13c7ae575f01e02744d6ca5e5b1554f78cb5f88ad
10− size: 631953
11− url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/nightly/2022/8/24.yaml
12− original: nightly-2022-08-24
ghc-9.4.3.yamldeleted−1
@@ -1 +0,0 @@
1−resolver: nightly-2022-12-26
ghc-9.4.3.yaml.lockdeleted−12
@@ -1,12 +0,0 @@
1−# This file was autogenerated by Stack.
2−# You should not edit this file by hand.
3−# For more information, please see the documentation at:
4−# https://docs.haskellstack.org/en/stable/lock_files
5−
6−packages: []
7−snapshots:
8−- completed:
9− sha256: bbe432b2abd6d866aa37f65a8129a5f858b7c6eaae9464f8bc2814ce92ac2d15
10− size: 573163
11− url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/nightly/2022/12/26.yaml
12− original: nightly-2022-12-26
ghc-9.8.1.yamldeleted−1
@@ -1 +0,0 @@
1−resolver: nightly-2024-01-12
ghc-9.8.1.yaml.lockdeleted−12
@@ -1,12 +0,0 @@
1−# This file was autogenerated by Stack.
2−# You should not edit this file by hand.
3−# For more information, please see the documentation at:
4−# https://docs.haskellstack.org/en/stable/lock_files
5−
6−packages: []
7−snapshots:
8−- completed:
9− sha256: 8f06e87750f95bc8620644ea22344ad023c3c5aa6efa854747aa70093898fd79
10− size: 556465
11− url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/nightly/2024/1/12.yaml
12− original: nightly-2024-01-12
src/Test/QuickCheck/Arbitrary/Generic.hs+1−9
@@ -1,10 +1,3 @@
1−#if __GLASGOW_HASKELL__ >= 806
2−{-# OPTIONS_GHC -Wno-star-is-type #-}
3−#endif
4−#if __GLASGOW_HASKELL__ >= 800
5−{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}
6−#endif
7−
8{-|
1{-|
9
2
10This module is a generic implementation of the 'arbitrary' method. Example
3This module is a generic implementation of the 'arbitrary' method. Example
@@ -153,14 +146,13 @@ module Test.QuickCheck.Arbitrary.Generic
153 ) where
146 ) where
154
147
155import Control.Applicative
148import Control.Applicative
149+import Data.Coerce (coerce)
156import Data.Proxy
150import Data.Proxy
157import Data.Type.Bool
151import Data.Type.Bool
158import GHC.Generics as G
152import GHC.Generics as G
159import GHC.TypeLits
153import GHC.TypeLits
160−import Prelude
161import Test.QuickCheck as QC
154import Test.QuickCheck as QC
162#if MIN_VERSION_QuickCheck(2, 14, 0)
155#if MIN_VERSION_QuickCheck(2, 14, 0)
163−import Data.Coerce (coerce)
164import Test.QuickCheck.Arbitrary (GSubterms, RecursivelyShrink)
156import Test.QuickCheck.Arbitrary (GSubterms, RecursivelyShrink)
165
157
166
158
test/EnumTest.hsdeleted−24
@@ -1,24 +0,0 @@
1−#if __GLASGOW_HASKELL__ >= 806 && __GLASGOW_HASKELL__ <= 900
2−{-# OPTIONS_GHC -fconstraint-solver-iterations=5 #-}
3−#elif __GLASGOW_HASKELL__ >= 902
4−{-# OPTIONS_GHC -fconstraint-solver-iterations=6 #-}
5−#endif
6−
7−
8−
9−module EnumTest where
10−
11−import Control.DeepSeq
12−import GHC.Generics
13−import Test.QuickCheck
14−import Test.QuickCheck.Arbitrary.Generic
15−
16−data Country = PL | GB | RU | RO | CZ | HR | SK | DE | NL | ES | BR
17− deriving (Generic, NFData, Show)
18−
19−instance Arbitrary Country where
20− arbitrary = genericArbitrary
21− shrink = genericShrink
22−
23−prop_CountryTest :: Country -> Property
24−prop_CountryTest = total
test/RecursiveTest.hs+1−2
@@ -1,14 +1,13 @@
1{-# LANGUAGE DerivingStrategies #-}
1{-# LANGUAGE DerivingStrategies #-}
2{-# LANGUAGE DerivingVia #-}
2{-# LANGUAGE DerivingVia #-}
3{-# LANGUAGE DeriveAnyClass #-}
3{-# LANGUAGE DeriveAnyClass #-}
4−{-# OPTIONS_GHC -fconstraint-solver-iterations=5 #-} -- GHC-9.2.4
5
4
6-- | Testing that our Arbitrary instances do not get stuck and respect the
5-- | Testing that our Arbitrary instances do not get stuck and respect the
7-- `size` parameter while generating.
6-- `size` parameter while generating.
8
7
9module RecursiveTest where
8module RecursiveTest where
10
9
11−import Control.DeepSeq (NFData)
10+import Control.DeepSeq
12import GHC.Generics (Generic)
11import GHC.Generics (Generic)
13import Test.QuickCheck
12import Test.QuickCheck
14import Test.QuickCheck.Arbitrary.Generic
13import Test.QuickCheck.Arbitrary.Generic