base-compat-batteries 0.10.0 → 0.10.1
raw patch · 5 files changed
+112/−14 lines, 5 filesdep ~base-compatdep ~bifunctorsdep ~failPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base-compat, bifunctors, fail, nats, semigroups, tagged, transformers-compat, void
API changes (from Hackage documentation)
+ Data.List.NonEmpty.Compat: (!!) :: () => NonEmpty a -> Int -> a
+ Data.List.NonEmpty.Compat: (:|) :: a -> [a] -> NonEmpty a
+ Data.List.NonEmpty.Compat: (<|) :: () => a -> NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: break :: () => (a -> Bool) -> NonEmpty a -> ([a], [a])
+ Data.List.NonEmpty.Compat: cons :: () => a -> NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: cycle :: () => NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: data NonEmpty a :: * -> *
+ Data.List.NonEmpty.Compat: drop :: () => Int -> NonEmpty a -> [a]
+ Data.List.NonEmpty.Compat: dropWhile :: () => (a -> Bool) -> NonEmpty a -> [a]
+ Data.List.NonEmpty.Compat: filter :: () => (a -> Bool) -> NonEmpty a -> [a]
+ Data.List.NonEmpty.Compat: fromList :: () => [a] -> NonEmpty a
+ Data.List.NonEmpty.Compat: group :: (Foldable f, Eq a) => f a -> [NonEmpty a]
+ Data.List.NonEmpty.Compat: group1 :: Eq a => NonEmpty a -> NonEmpty NonEmpty a
+ Data.List.NonEmpty.Compat: groupAllWith :: Ord b => (a -> b) -> [a] -> [NonEmpty a]
+ Data.List.NonEmpty.Compat: groupAllWith1 :: Ord b => (a -> b) -> NonEmpty a -> NonEmpty NonEmpty a
+ Data.List.NonEmpty.Compat: groupBy :: Foldable f => (a -> a -> Bool) -> f a -> [NonEmpty a]
+ Data.List.NonEmpty.Compat: groupBy1 :: () => (a -> a -> Bool) -> NonEmpty a -> NonEmpty NonEmpty a
+ Data.List.NonEmpty.Compat: groupWith :: (Foldable f, Eq b) => (a -> b) -> f a -> [NonEmpty a]
+ Data.List.NonEmpty.Compat: groupWith1 :: Eq b => (a -> b) -> NonEmpty a -> NonEmpty NonEmpty a
+ Data.List.NonEmpty.Compat: head :: () => NonEmpty a -> a
+ Data.List.NonEmpty.Compat: infixr 5 <|
+ Data.List.NonEmpty.Compat: init :: () => NonEmpty a -> [a]
+ Data.List.NonEmpty.Compat: inits :: Foldable f => f a -> NonEmpty [a]
+ Data.List.NonEmpty.Compat: insert :: (Foldable f, Ord a) => a -> f a -> NonEmpty a
+ Data.List.NonEmpty.Compat: intersperse :: () => a -> NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: isPrefixOf :: Eq a => [a] -> NonEmpty a -> Bool
+ Data.List.NonEmpty.Compat: iterate :: () => (a -> a) -> a -> NonEmpty a
+ Data.List.NonEmpty.Compat: last :: () => NonEmpty a -> a
+ Data.List.NonEmpty.Compat: length :: () => NonEmpty a -> Int
+ Data.List.NonEmpty.Compat: map :: () => (a -> b) -> NonEmpty a -> NonEmpty b
+ Data.List.NonEmpty.Compat: nonEmpty :: () => [a] -> Maybe NonEmpty a
+ Data.List.NonEmpty.Compat: nub :: Eq a => NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: nubBy :: () => (a -> a -> Bool) -> NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: partition :: () => (a -> Bool) -> NonEmpty a -> ([a], [a])
+ Data.List.NonEmpty.Compat: repeat :: () => a -> NonEmpty a
+ Data.List.NonEmpty.Compat: reverse :: () => NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: scanl :: Foldable f => (b -> a -> b) -> b -> f a -> NonEmpty b
+ Data.List.NonEmpty.Compat: scanl1 :: () => (a -> a -> a) -> NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: scanr :: Foldable f => (a -> b -> b) -> b -> f a -> NonEmpty b
+ Data.List.NonEmpty.Compat: scanr1 :: () => (a -> a -> a) -> NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: some1 :: Alternative f => f a -> f NonEmpty a
+ Data.List.NonEmpty.Compat: sort :: Ord a => NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: sortBy :: () => (a -> a -> Ordering) -> NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: sortWith :: Ord o => (a -> o) -> NonEmpty a -> NonEmpty a
+ Data.List.NonEmpty.Compat: span :: () => (a -> Bool) -> NonEmpty a -> ([a], [a])
+ Data.List.NonEmpty.Compat: splitAt :: () => Int -> NonEmpty a -> ([a], [a])
+ Data.List.NonEmpty.Compat: tail :: () => NonEmpty a -> [a]
+ Data.List.NonEmpty.Compat: tails :: Foldable f => f a -> NonEmpty [a]
+ Data.List.NonEmpty.Compat: take :: () => Int -> NonEmpty a -> [a]
+ Data.List.NonEmpty.Compat: takeWhile :: () => (a -> Bool) -> NonEmpty a -> [a]
+ Data.List.NonEmpty.Compat: toList :: () => NonEmpty a -> [a]
+ Data.List.NonEmpty.Compat: transpose :: () => NonEmpty NonEmpty a -> NonEmpty NonEmpty a
+ Data.List.NonEmpty.Compat: uncons :: () => NonEmpty a -> (a, Maybe NonEmpty a)
+ Data.List.NonEmpty.Compat: unfold :: () => (a -> (b, Maybe a)) -> a -> NonEmpty b
+ Data.List.NonEmpty.Compat: unfoldr :: () => (a -> (b, Maybe a)) -> a -> NonEmpty b
+ Data.List.NonEmpty.Compat: unzip :: Functor f => f (a, b) -> (f a, f b)
+ Data.List.NonEmpty.Compat: xor :: NonEmpty Bool -> Bool
+ Data.List.NonEmpty.Compat: zip :: () => NonEmpty a -> NonEmpty b -> NonEmpty (a, b)
+ Data.List.NonEmpty.Compat: zipWith :: () => (a -> b -> c) -> NonEmpty a -> NonEmpty b -> NonEmpty c
+ Data.Monoid.Compat: (<>) :: Semigroup a => a -> a -> a
+ Data.Monoid.Compat: infixr 6 <>
Files
- CHANGES.markdown +10/−2
- base-compat-batteries.cabal +13/−11
- src/Data/List/NonEmpty/Compat.hs +78/−0
- src/Data/List/NonEmpty/Compat/Repl/Batteries.hs +8/−0
- src/Data/Monoid/Compat.hs +3/−1
CHANGES.markdown view
@@ -1,5 +1,13 @@+## Changes in 0.10.1 [2018.04.10]+- Add `Data.List.NonEmpty.Compat`.+- Reexport `(Data.Semigroup.<>)` from `Data.Monoid.Compat`.+- Tighten lower bounds of compat package dependencies.+ - This coincides with the `base-compat-0.10.1` release. Refer to the+ [`base-compat` changelog](https://github.com/haskell-compat/base-compat/blob/master/base-compat/CHANGES.markdown#changes-in-0101-20180410)+ for more details.+ ## Changes in 0.10.0 [2018.04.05] - Sync with `base-4.11`/GHC 8.4 - This coincides with the `base-compat-0.10` release. Refer to the- [`base-compat` changelog](https://github.com/haskell-compat/base-compat/blob/master/base-compat/CHANGES.markdown#changes-in-0100-????????)- for details.+ [`base-compat` changelog](https://github.com/haskell-compat/base-compat/blob/master/base-compat/CHANGES.markdown#changes-in-0100-20180405)+ for more details.
base-compat-batteries.cabal view
@@ -1,5 +1,5 @@ name: base-compat-batteries-version: 0.10.0+version: 0.10.1 license: MIT license-file: LICENSE copyright: (c) 2012-2018 Simon Hengel,@@ -54,24 +54,24 @@ ghc-options: -Wall build-depends:- base >= 4.3 && < 5,- base-compat >= 0.10 && < 0.11+ base >= 4.3 && < 5,+ base-compat >= 0.10.1 && < 0.11 if !impl(ghc >= 7.8) build-depends:- tagged >= 0.8 && < 0.9+ tagged >= 0.8.5 && < 0.9 if !impl(ghc >= 7.10) build-depends:- nats >= 1.1 && < 1.2,- void >= 0.7 && < 0.8+ nats >= 1.1.2 && < 1.2,+ void >= 0.7.2 && < 0.8 if !impl(ghc >= 8.0) build-depends:- fail >= 4.9 && < 4.10,- semigroups >= 0.16 && < 0.19,- transformers >= 0.2 && < 0.6,- transformers-compat >= 0.3 && < 0.7+ fail >= 4.9.0.0 && < 4.10,+ semigroups >= 0.18.4 && < 0.19,+ transformers >= 0.2 && < 0.6,+ transformers-compat >= 0.6 && < 0.7 if !impl(ghc >= 8.2) build-depends:- bifunctors >= 5.4.1 && < 5.6+ bifunctors >= 5.5.2 && < 5.6 ghc-options: -fno-warn-duplicate-exports @@ -103,6 +103,7 @@ Data.Functor.Sum.Compat Data.IORef.Compat Data.List.Compat+ Data.List.NonEmpty.Compat Data.Monoid.Compat Data.Proxy.Compat Data.Ratio.Compat@@ -157,6 +158,7 @@ Data.Functor.Sum.Compat.Repl.Batteries Data.IORef.Compat.Repl.Batteries Data.List.Compat.Repl.Batteries+ Data.List.NonEmpty.Compat.Repl.Batteries Data.Monoid.Compat.Repl.Batteries Data.Proxy.Compat.Repl.Batteries Data.Ratio.Compat.Repl.Batteries
+ src/Data/List/NonEmpty/Compat.hs view
@@ -0,0 +1,78 @@+{-# LANGUAGE CPP, NoImplicitPrelude, PackageImports #-}+-- | This backports the modern "Data.Semigroup" interface back to+-- @base-4.9@/GHC 8.0.+module Data.List.NonEmpty.Compat (+ -- * The type of non-empty streams+ NonEmpty(..)++ -- * Non-empty stream transformations+ , map + , intersperse + , scanl + , scanr + , scanl1 + , scanr1 + , transpose + , sortBy + , sortWith + -- * Basic functions+ , length + , head + , tail + , last + , init + , (<|), cons + , uncons + , unfoldr + , sort + , reverse + , inits + , tails + -- * Building streams+ , iterate + , repeat + , cycle + , unfold + , insert + , some1 + -- * Extracting sublists+ , take + , drop + , splitAt + , takeWhile + , dropWhile + , span + , break + , filter + , partition + , group + , groupBy + , groupWith + , groupAllWith + , group1 + , groupBy1 + , groupWith1 + , groupAllWith1 + -- * Sublist predicates+ , isPrefixOf + -- * \"Set\" operations+ , nub + , nubBy + -- * Indexing streams+ , (!!) + -- * Zipping and unzipping streams+ , zip + , zipWith + , unzip + -- * Converting to and from a list+ , fromList + , toList + , nonEmpty + , xor +) where++#if MIN_VERSION_base(4,9,0)+import "base-compat" Data.List.NonEmpty.Compat+#else+import "semigroups" Data.List.NonEmpty+#endif
+ src/Data/List/NonEmpty/Compat/Repl/Batteries.hs view
@@ -0,0 +1,8 @@+{-# LANGUAGE PackageImports #-}+{-# OPTIONS_GHC -fno-warn-dodgy-exports -fno-warn-unused-imports #-}+-- | Reexports "Data.List.NonEmpty.Compat"+-- from a globally unique namespace.+module Data.List.NonEmpty.Compat.Repl.Batteries (+ module Data.List.NonEmpty.Compat+) where+import "this" Data.List.NonEmpty.Compat
src/Data/Monoid/Compat.hs view
@@ -1,6 +1,8 @@ {-# LANGUAGE CPP, NoImplicitPrelude, PackageImports #-} module Data.Monoid.Compat ( module Base+, (<>) ) where -import "base-compat" Data.Monoid.Compat as Base+import "base-compat" Data.Monoid.Compat as Base hiding ((<>))+import Data.Semigroup ((<>))