functor-classes-compat 1.0.1 → 2
raw patch · 11 files changed
+14/−168 lines, 11 filesdep −hashabledep −unordered-containersdep −vectordep ~transformers-compatPVP ok
version bump matches the API change (PVP)
Dependencies removed: hashable, unordered-containers, vector
Dependency ranges changed: transformers-compat
API changes (from Hackage documentation)
Files
- changelog.md +5/−0
- functor-classes-compat.cabal +9/−67
- src-explicit/unordered-containers/Data/HashMap/Functor/Classes.hs +0/−42
- src-explicit/unordered-containers/Data/HashSet/Functor/Classes.hs +0/−9
- src-explicit/vector/Data/Vector/Functor/Classes.hs +0/−20
- src-implicit/unordered-containers/Data/HashMap/Functor/Classes.hs +0/−10
- src-implicit/unordered-containers/Data/HashSet/Functor/Classes.hs +0/−7
- src-implicit/vector/Data/Vector/Functor/Classes.hs +0/−10
- src-none/unordered-containers/Data/HashMap/Functor/Classes.hs +0/−1
- src-none/unordered-containers/Data/HashSet/Functor/Classes.hs +0/−1
- src-none/vector/Data/Vector/Functor/Classes.hs +0/−1
changelog.md view
@@ -1,3 +1,8 @@+# 2++Drop `unordered-containers` and `vector` support.+This package have included instance for long enough already.+ # 1.0.1 Add instances for `Tree` and `Seq`
functor-classes-compat.cabal view
@@ -1,14 +1,14 @@ name: functor-classes-compat-version: 1.0.1+version: 2 synopsis: Data.Functor.Classes instances for core packages description: "Data.Functor.Classes" instances for core packages: . * containers .- * vector- .- * unordered-containers+ This package used to provide instances for @unordered-containers@+ and @vector@, but these packages are since been upgraded.+ Use @unordered-containers >=0.2.8.0@ and @vector >=0.12@. homepage: https://github.com/phadej/functor-classes-compat#readme bug-reports: https://github.com/phadej/functor-classes-compat/issues@@ -31,7 +31,9 @@ || ==8.4.4 || ==8.6.5 || ==8.8.4- || ==8.10.3+ || ==8.10.4+ || ==9.0.1+ || ==9.2.1 flag base-transformers-1 description:@@ -45,21 +47,11 @@ manual: False default: True -flag vector- description: 'vector >= 0.12'- manual: False- default: True- flag containers description: 'containers >= 0.5.9.1' manual: False default: True -flag unordered-containers- description: 'unordered-containers >= 0.2.8.0'- manual: False- default: True- source-repository head type: git location: https://github.com/phadej/functor-classes-compat@@ -71,13 +63,9 @@ Data.IntMap.Functor.Classes Data.Sequence.Functor.Classes Data.Tree.Functor.Classes- Data.Vector.Functor.Classes- Data.HashSet.Functor.Classes- Data.HashMap.Functor.Classes default-language: Haskell2010 ghc-options: -Wall- build-depends: hashable >=1.0.1.1 && <1.4 -- base and transformer dependencies: -- t t: base >= 4.9@@ -88,7 +76,7 @@ -- The order is chosen so 'f f' combination is only requiring src-old if flag(base-transformers-1) if flag(base-transformers-2)- build-depends: base >=4.9 && <4.16+ build-depends: base >=4.9 && <4.17 else build-depends:@@ -102,7 +90,7 @@ build-depends: base >=4.5 && <4.9 , transformers >=0 && <0.4- , transformers-compat >=0.5 && <0.7+ , transformers-compat >=0.5 && <0.8 else build-depends:@@ -131,49 +119,3 @@ else hs-source-dirs: src-explicit/containers-- -- unordered-containers- if flag(unordered-containers)- build-depends: unordered-containers >=0.2.8.0 && <0.3-- if (flag(base-transformers-1) && flag(base-transformers-2))- hs-source-dirs: src-none/unordered-containers-- else- if (!flag(base-transformers-1) && !flag(base-transformers-2))- hs-source-dirs: src-implicit/unordered-containers-- else- hs-source-dirs: src-explicit/unordered-containers-- else- build-depends: unordered-containers >=0.2.7.1 && <0.2.8.0-- if (!flag(base-transformers-1) && !flag(base-transformers-2))- hs-source-dirs: src-implicit/unordered-containers-- else- hs-source-dirs: src-explicit/unordered-containers-- -- vector- if flag(vector)- build-depends: vector ==0.12.*-- if (flag(base-transformers-1) && flag(base-transformers-2))- hs-source-dirs: src-none/vector-- else- if (!flag(base-transformers-1) && !flag(base-transformers-2))- hs-source-dirs: src-implicit/vector-- else- hs-source-dirs: src-explicit/vector-- else- build-depends: vector >=0.11.0.0 && <0.12-- if (!flag(base-transformers-1) && !flag(base-transformers-2))- hs-source-dirs: src-implicit/vector-- else- hs-source-dirs: src-explicit/vector
− src-explicit/unordered-containers/Data/HashMap/Functor/Classes.hs
@@ -1,42 +0,0 @@-{-# OPTIONS_GHC -fno-warn-orphans #-}-module Data.HashMap.Functor.Classes () where--import Data.Functor.Classes-import Data.Hashable (Hashable)-import Data.HashMap.Strict (HashMap, fromList, size, toList)--import qualified Data.Map as M-import Data.Map.Functor.Classes ()---- | Unordered-containers don't export internals, so we cannot write correct `Eq2`--- instance. For the same reason, the context is over-restrictive too.-instance Ord k => Eq1 (HashMap k) where- liftEq eqv m n =- size m == size n && equals eqv m n--instance Show2 HashMap where- liftShowsPrec2 spk slk spv slv d m =- showsUnaryWith (liftShowsPrec sp sl) "fromList" d (toList m)- where- sp = liftShowsPrec2 spk slk spv slv- sl = liftShowList2 spk slk spv slv--instance Show k => Show1 (HashMap k) where- liftShowsPrec = liftShowsPrec2 showsPrec showList--instance (Eq k, Hashable k, Read k) => Read1 (HashMap k) where- liftReadsPrec rp rl = readsData $- readsUnaryWith (liftReadsPrec rp' rl') "fromList" fromList- where- rp' = liftReadsPrec rp rl- rl' = liftReadList rp rl------------------------------------------------------------------------------------ unordered-containers don't expose internals, so this is difficult--equals- :: Ord k- => (v -> v' -> Bool)- -> HashMap k v -> HashMap k v'- -> Bool-equals eqv m n = liftEq eqv (M.fromList $ toList m) (M.fromList $ toList n)
− src-explicit/unordered-containers/Data/HashSet/Functor/Classes.hs
@@ -1,9 +0,0 @@-{-# OPTIONS_GHC -fno-warn-orphans #-}-module Data.HashSet.Functor.Classes () where--import Data.Functor.Classes-import Data.HashSet (HashSet, toList)--instance Show1 HashSet where- liftShowsPrec sp sl d m =- showsUnaryWith (liftShowsPrec sp sl) "fromList" d (toList m)
− src-explicit/vector/Data/Vector/Functor/Classes.hs
@@ -1,20 +0,0 @@-{-# OPTIONS_GHC -fno-warn-orphans #-}-module Data.Vector.Functor.Classes () where--import Data.Functor.Classes-import Data.Vector (Vector, fromList, length, toList)--instance Eq1 Vector where- liftEq eq m n =- Data.Vector.length m == Data.Vector.length n && liftEq eq (toList m) (toList n)--instance Ord1 Vector where- liftCompare cmp m n =- liftCompare cmp (toList m) (toList n)--instance Show1 Vector where- liftShowsPrec _sp sl _d m = sl (toList m)--instance Read1 Vector where- liftReadsPrec _rp rl _d s =- [ (fromList l, s') | (l, s') <- rl s ]
− src-implicit/unordered-containers/Data/HashMap/Functor/Classes.hs
@@ -1,10 +0,0 @@-{-# OPTIONS_GHC -fno-warn-orphans #-}-module Data.HashMap.Functor.Classes () where--import Data.Functor.Classes-import Data.Hashable (Hashable)-import Data.HashMap.Strict (HashMap)--instance Eq k => Eq1 (HashMap k) where eq1 = (==)-instance Show k => Show1 (HashMap k) where showsPrec1 = showsPrec-instance (Eq k, Hashable k, Read k) => Read1 (HashMap k) where readsPrec1 = readsPrec
− src-implicit/unordered-containers/Data/HashSet/Functor/Classes.hs
@@ -1,7 +0,0 @@-{-# OPTIONS_GHC -fno-warn-orphans #-}-module Data.HashSet.Functor.Classes () where--import Data.Functor.Classes-import Data.HashSet (HashSet)--instance Show1 HashSet where showsPrec1 = showsPrec
− src-implicit/vector/Data/Vector/Functor/Classes.hs
@@ -1,10 +0,0 @@-{-# OPTIONS_GHC -fno-warn-orphans #-}-module Data.Vector.Functor.Classes () where--import Data.Functor.Classes-import Data.Vector (Vector)--instance Eq1 Vector where eq1 = (==)-instance Ord1 Vector where compare1 = compare-instance Show1 Vector where showsPrec1 = showsPrec-instance Read1 Vector where readsPrec1 = readsPrec
− src-none/unordered-containers/Data/HashMap/Functor/Classes.hs
@@ -1,1 +0,0 @@-module Data.HashMap.Functor.Classes () where
− src-none/unordered-containers/Data/HashSet/Functor/Classes.hs
@@ -1,1 +0,0 @@-module Data.HashSet.Functor.Classes () where
− src-none/vector/Data/Vector/Functor/Classes.hs
@@ -1,1 +0,0 @@-module Data.Vector.Functor.Classes () where