ListLike 4.7.3 → 4.7.4
raw patch · 15 files changed
+64/−42 lines, 15 filesdep ~utf8-stringnew-uploaderPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: utf8-string
API changes (from Hackage documentation)
- Data.ListLike.Instances: instance GHC.Exts.IsList Data.ByteString.Internal.ByteString
- Data.ListLike.Instances: instance GHC.Exts.IsList Data.ByteString.Lazy.Internal.ByteString
- Data.ListLike.UTF8: instance Data.String.IsString (Data.String.UTF8.UTF8 Data.ByteString.Internal.ByteString)
- Data.ListLike.UTF8: instance Data.String.IsString (Data.String.UTF8.UTF8 Data.ByteString.Lazy.Internal.ByteString)
Files
- CHANGELOG.md +28/−0
- ListLike.cabal +19/−3
- README.md +4/−14
- src/Data/ListLike/CharString.hs +0/−1
- src/Data/ListLike/Chars.hs +1/−1
- src/Data/ListLike/DList.hs +1/−2
- src/Data/ListLike/FMList.hs +0/−1
- src/Data/ListLike/FoldableLL.hs +0/−1
- src/Data/ListLike/Instances.hs +1/−3
- src/Data/ListLike/UTF8.hs +6/−0
- src/Data/ListLike/Utils.hs +0/−1
- src/Data/ListLike/Vector/Generic.hs +1/−2
- src/Data/ListLike/Vector/Storable.hs +1/−4
- src/Data/ListLike/Vector/Unboxed.hs +1/−5
- src/Data/ListLike/Vector/Vector.hs +1/−4
+ CHANGELOG.md view
@@ -0,0 +1,28 @@+CHANGES+=======++### 4.7.4 (2021-01-07)++ - support utf8-string-1.0.2 ([#10](https://github.com/ddssff/listlike/issues/10))++### 4.7.3 (2020-12-31)++ - support bytestring-0.10.12 ([#7](https://github.com/ddssff/listlike/pull/7)) for ghc 8.10.3+ - removed support for ghc 7.6 and 7.8 ([#6](https://github.com/ddssff/listlike/issues/6))++### 4.7.2 (2020-08-21)++ - support dlist-1.0 ([#4](https://github.com/ddssff/listlike/issues/4))++### 4.7.1 (2020-07-03)++ - support QuickCheck-2.14++## 4.7++ - make `GHC.Exts.IsList` a superclass of `ListLike` and use its `fromList` and `toList` methods+ - make `Data.String.IsString` a superclass of `Stringlike` and use its `fromString` method+ - add methods to `StringLike`: `show`, `fromText`, `fromLazyText`+ - add a class `ListOps`, alternative to `ListLike`, that uses the `GHC.Exts.Item` instead of+ the `item` type parameter+ - supply `instance IsString Seq` for old versions of container
ListLike.cabal view
@@ -1,11 +1,10 @@ Name: ListLike-Version: 4.7.3+Version: 4.7.4 License: BSD3 Maintainer: David Fox <dsf@seereason.com> Author: John Goerzen Copyright: Copyright (c) 2007-2008 John Goerzen license-file: COPYRIGHT-extra-source-files: COPYRIGHT, README.md Category: list, string, text, bytestring, vector Cabal-Version: >= 1.10 Build-Type: Simple@@ -32,6 +31,10 @@ GHC == 8.0.2 GHC == 7.10.3 +extra-source-files:+ README.md+ CHANGELOG.md+ Library default-language: Haskell2010 GHC-Options: -Wall@@ -66,8 +69,21 @@ ,vector >= 0.5 && < 0.13 ,dlist >= 0.7 && < 1.1 ,fmlist >= 0.8 && < 0.10- ,utf8-string+ ,utf8-string >= 0.3.1 && < 1.1 ,deepseq++ -- Remark: Atm, we don't comply with the Haskell Package Versioning Policy+ -- https://pvp.haskell.org/+ -- > §6. Client defines orphan instance.+ -- > If a package defines an orphan instance, it MUST depend on the+ -- > minor version of the packages that define the data type and the+ -- > type class to be backwards compatible. For example,+ -- > build-depends: mypkg >= 2.1.1 && < 2.1.2.+ --+ -- Since ListLike defines orphan instances, we would need to include+ -- the minor version number in the upper bounds.+ -- (See issues #7 and #10.)+ -- However, this could involve a maintenance to relax upper bounds. If !impl(ghc >= 8.4) Build-Depends: semigroups >= 0.16 && < 0.20
README.md view
@@ -4,18 +4,8 @@ ListLike ======== -The `ListLike` package provides typeclasses and instances to allow-polymorphism over many common datatypes.--CHANGES-=======--Version 4.7------------+The `ListLike` package provides typeclasses and instances that+polymorphically generalize list operations to many list-like types+such as vectors, text, or difference lists. - * Make `GHC.Exts.IsList` a superclass of `ListLike` and use its `fromList` and `toList` methods- * make `Data.String.IsString` a superclass of `Stringlike` and use its `fromString` method- * Add methods to `StringLike`: `show`, `fromText`, `fromLazyText`- * Add a class `ListOps`, alternative to `ListLike`, that uses the `GHC.Exts.Item` instead of- the `item` type parameter.- * Supply `instance IsString Seq` for old versions of container+Read the [introduction](https://hackage.haskell.org/package/ListLike/docs/Data-ListLike.html).
src/Data/ListLike/CharString.hs view
@@ -49,7 +49,6 @@ import Data.ListLike.IO import Data.ListLike.FoldableLL import Data.Int-import Data.Monoid import Data.Semigroup (Semigroup(..)) import Data.String (IsString(..)) import qualified Data.ByteString.Char8 as BS
src/Data/ListLike/Chars.hs view
@@ -14,7 +14,7 @@ #endif import Control.DeepSeq --import Control.Monad-import Data.String as String (IsString(fromString))+import Data.String as String (IsString) import Data.Semigroup (Semigroup(..)) import qualified Data.Text.Lazy as T --import qualified Data.Text.Lazy.IO as TI
src/Data/ListLike/DList.hs view
@@ -8,7 +8,7 @@ import Data.ListLike.FoldableLL --import Data.ListLike.IO import Data.ListLike.String-import Data.DList (DList(..))+import Data.DList (DList) import qualified Data.DList as D --import Data.Foldable (Foldable) import qualified Data.Foldable as F@@ -18,7 +18,6 @@ import qualified Data.String as S import Control.Category import Data.Char (Char)-import GHC.Exts (IsList(..)) instance FoldableLL (DList a) a where foldl = F.foldl
src/Data/ListLike/FMList.hs view
@@ -18,7 +18,6 @@ import Control.Monad.Zip (MonadZip) import qualified Control.Monad.Zip as Z --import Data.Function-import Data.Char (Char) import GHC.Exts (IsList(..)) instance FoldableLL (FMList a) a where
src/Data/ListLike/FoldableLL.hs view
@@ -33,7 +33,6 @@ ) where import Prelude hiding (foldl, foldr, foldr1, sequence_, mapM_, foldMap) import qualified Data.Foldable as F-import Data.Monoid import Data.Maybe import qualified Data.List as L
src/Data/ListLike/Instances.hs view
@@ -39,7 +39,6 @@ splitAt, elem, notElem, unzip, lines, words, unlines, unwords) import qualified Prelude as P-import Control.Applicative ((<$>), (<*>)) import Control.Monad import qualified Data.List as L import qualified Data.Sequence as S@@ -54,7 +53,6 @@ import Data.ListLike.Vector () import Data.Int --import Data.Maybe (fromMaybe)-import Data.Monoid import Data.Semigroup (Semigroup(..)) import qualified Data.ByteString as BS import qualified Data.ByteString.Char8 as BSC@@ -64,7 +62,7 @@ import Data.Array.IArray((!), (//), Ix(..)) import qualified Data.ByteString.Lazy as BSL import qualified Data.ByteString.Lazy.Char8 as BSLC-import Data.String (IsString(fromString))+import Data.String (IsString) --import Data.String.UTF8 (UTF8) --import qualified Data.String.UTF8 as UTF8 import qualified System.IO as IO
src/Data/ListLike/UTF8.hs view
@@ -31,7 +31,9 @@ import Data.Maybe (fromMaybe) import Data.Monoid (Monoid(..)) import Data.Semigroup (Semigroup(..))+#if !MIN_VERSION_utf8_string(1,0,2) import Data.String (IsString(fromString))+#endif import Data.String.UTF8 (UTF8{-, UTF8Bytes-}) import qualified Data.String.UTF8 as UTF8 import GHC.Exts (IsList(..))@@ -147,8 +149,10 @@ -- writeFile = BS.writeFile -- appendFile = BS.appendFile +#if !MIN_VERSION_utf8_string(1,0,2) instance IsString (UTF8 BS.ByteString) where fromString = UTF8.fromString+#endif instance StringLike (UTF8 BS.ByteString) where toString = UTF8.toString@@ -271,8 +275,10 @@ instance Semigroup (UTF8 BSL.ByteString) where (<>) = mappend +#if !MIN_VERSION_utf8_string(1,0,2) instance IsString (UTF8 BSL.ByteString) where fromString = UTF8.fromString+#endif instance StringLike (UTF8 BSL.ByteString) where toString = UTF8.toString
src/Data/ListLike/Utils.hs view
@@ -40,7 +40,6 @@ import Control.Monad (MonadPlus(..)) import Data.ListLike.Base import Data.ListLike.FoldableLL-import Data.Maybe (maybe) import Data.Monoid -- | Returns True if all elements are True
src/Data/ListLike/Vector/Generic.hs view
@@ -23,8 +23,7 @@ import Data.ListLike.Base import Data.ListLike.FoldableLL import Data.ListLike.String-import Data.Monoid-import Data.String (IsString(fromString))+import Data.String (IsString) import GHC.Exts (IsList(..)) instance {-# OVERLAPPABLE #-} V.Vector v a => FoldableLL (v a) a where
src/Data/ListLike/Vector/Storable.hs view
@@ -14,11 +14,9 @@ import Data.ListLike.Base import Data.ListLike.FoldableLL import Data.ListLike.String-import Data.String (IsString(fromString))+import Data.String (IsString) -import Data.Monoid import Foreign.Storable (Storable)-import GHC.Exts (IsList(..)) instance Storable a => FoldableLL (V.Vector a) a where@@ -107,4 +105,3 @@ haystack | V.length needle == V.length haystack = needle == haystack | otherwise = False-
src/Data/ListLike/Vector/Unboxed.hs view
@@ -14,10 +14,7 @@ import Data.ListLike.Base import Data.ListLike.FoldableLL import Data.ListLike.String-import Data.String (IsString(fromString))--import Data.Monoid-import GHC.Exts (IsList(..))+import Data.String (IsString) instance Unbox a => FoldableLL (V.Vector a) a where@@ -106,4 +103,3 @@ haystack | V.length needle == V.length haystack = needle == haystack | otherwise = False-
src/Data/ListLike/Vector/Vector.hs view
@@ -14,10 +14,7 @@ import Data.ListLike.Base import Data.ListLike.FoldableLL import Data.ListLike.String-import Data.String (IsString(fromString))--import Data.Monoid-import GHC.Exts (IsList(..))+import Data.String (IsString) instance FoldableLL (V.Vector a) a where foldl = V.foldl