packages feed

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 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