Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ghc-ListLike for openSUSE:Factory checked in at 2022-08-01 21:29:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-ListLike (Old) and /work/SRC/openSUSE:Factory/.ghc-ListLike.new.1533 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-ListLike" Mon Aug 1 21:29:30 2022 rev:3 rq:987014 version:4.7.7 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-ListLike/ghc-ListLike.changes 2021-09-10 23:41:14.166554585 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-ListLike.new.1533/ghc-ListLike.changes 2022-08-01 21:29:31.497506019 +0200 @@ -1,0 +2,9 @@ +Mon Jun 20 16:44:10 UTC 2022 - Peter Simons <[email protected]> + +- Update ListLike to version 4.7.7 revision 1. + Upstream has edited the change log file since the last release in + a non-trivial way, i.e. they did more than just add a new entry + at the top. You can review the file at: + http://hackage.haskell.org/package/ListLike-4.7.7/src/CHANGELOG.md + +------------------------------------------------------------------- Old: ---- ListLike-4.7.6.tar.gz New: ---- ListLike-4.7.7.tar.gz ListLike.cabal ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-ListLike.spec ++++++ --- /var/tmp/diff_new_pack.3JCY5Z/_old 2022-08-01 21:29:32.033507557 +0200 +++ /var/tmp/diff_new_pack.3JCY5Z/_new 2022-08-01 21:29:32.037507568 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-ListLike # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,12 +19,13 @@ %global pkg_name ListLike %bcond_with tests Name: ghc-%{pkg_name} -Version: 4.7.6 +Version: 4.7.7 Release: 0 Summary: Generalized support for list-like structures License: BSD-3-Clause URL: https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-array-devel BuildRequires: ghc-bytestring-devel @@ -67,6 +68,7 @@ %prep %autosetup -n %{pkg_name}-%{version} +cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build ++++++ ListLike-4.7.6.tar.gz -> ListLike-4.7.7.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/CHANGELOG.md new/ListLike-4.7.7/CHANGELOG.md --- old/ListLike-4.7.6/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,8 +1,16 @@ CHANGES ======= -### 4.7.5 +### 4.7.7 (2022-05-26) + - methods `sequence` and `mapM`: relax `Monad` constraint to `Applicative` + - `LANGUAGE TypeOperators` to fix GHC 9.4 warning + - allow `text-2.0` + - tested with GHC 7.10 - 9.4 + +### 4.7.6 (2021-09-01) + + - new implementation of `tail` in `DList` instance - warning-free for `-Wall` and `-Wcompat` ### 4.7.4 (2021-01-07) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/ListLike.cabal new/ListLike-4.7.7/ListLike.cabal --- old/ListLike-4.7.6/ListLike.cabal 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/ListLike.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,5 +1,5 @@ Name: ListLike -Version: 4.7.6 +Version: 4.7.7 License: BSD3 Maintainer: David Fox <[email protected]>, Andreas Abel Author: John Goerzen @@ -23,8 +23,10 @@ Stability: Stable Tested-With: - GHC == 9.0.1 - GHC == 8.10.4 + GHC == 9.4.1 + GHC == 9.2.2 + GHC == 9.0.2 + GHC == 8.10.7 GHC == 8.8.4 GHC == 8.6.5 GHC == 8.4.4 @@ -66,7 +68,7 @@ ,containers >= 0.3 && < 0.7 ,bytestring >= 0.9.1 && < 0.12 ,array >= 0.3 && < 0.6 - ,text >= 0.11 && < 1.3 + ,text >= 0.11 && < 1.3 || == 2.0.* ,vector >= 0.5 && < 0.13 ,dlist >= 0.7 && < 1.1 ,fmlist >= 0.8 && < 0.10 @@ -84,7 +86,7 @@ -- 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. + -- However, this could involve a maintenance marathon to relax upper bounds. If !impl(ghc >= 8.4) Build-Depends: semigroups >= 0.16 && < 0.20 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/src/Data/ListLike/Base.hs new/ListLike-4.7.7/src/Data/ListLike/Base.hs --- old/ListLike-4.7.6/src/Data/ListLike/Base.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/src/Data/ListLike/Base.hs 2001-09-09 03:46:40.000000000 +0200 @@ -7,6 +7,7 @@ ,FlexibleContexts ,ConstraintKinds ,CPP #-} +{-# LANGUAGE TypeOperators #-} -- for GHC >= 9.4 {- Copyright (C) 2007 John Goerzen <[email protected]> @@ -38,19 +39,24 @@ InfiniteListLike(..), zip, zipWith, sequence_ ) where -import Prelude hiding (length, {-uncons,-} head, last, null, tail, map, filter, concat, - any, lookup, init, all, foldl, foldr, foldl1, foldr1, - maximum, minimum, iterate, span, break, takeWhile, - dropWhile, {-dropWhileEnd,-} reverse, zip, zipWith, sequence, - sequence_, mapM, mapM_, concatMap, and, or, sum, - product, repeat, replicate, cycle, take, drop, - splitAt, elem, notElem, unzip, lines, words, - unlines, unwords, foldMap) + +import Prelude + ( Applicative(..), Bool(..), Eq(..), Int, Integer, Integral + , Maybe(..), Monad, Monoid(..), Num(..), Ord(..), Ordering(..) + , ($), (.), (&&), (||), (++), asTypeOf, error, flip, fst, snd + , id, maybe, max, min, not, otherwise + , sequenceA + ) +#if MIN_VERSION_base(4,17,0) +import Data.Type.Equality -- GHC 9.4: type equality ~ is just an operator now +#endif + import qualified Data.List as L import Data.ListLike.FoldableLL -import qualified Control.Monad as M -import Data.Monoid -import Data.Maybe + ( FoldableLL(foldr, foldr1, foldl), fold, foldMap, sequence_ ) +import qualified Control.Applicative as A +import Data.Monoid ( All(All, getAll), Any(Any, getAny) ) +import Data.Maybe ( listToMaybe ) import GHC.Exts (IsList(Item, fromList, {-fromListN,-} toList)) {- | The class implementing list-like functions. @@ -364,18 +370,14 @@ ------------------------------ Monadic operations {- | Evaluate each action in the sequence and collect the results -} - sequence :: (Monad m, ListLike fullinp (m item)) => + sequence :: (Applicative m, ListLike fullinp (m item)) => fullinp -> m full - sequence l = foldr func (return empty) l - where func litem results = - do x <- litem - xs <- results - return (cons x xs) + sequence = foldr (A.liftA2 cons) (pure empty) {- | A map in monad space. Same as @'sequence' . 'map'@ See also 'rigidMapM' -} - mapM :: (Monad m, ListLike full' item') => + mapM :: (Applicative m, ListLike full' item') => (item -> m item') -> full -> m full' mapM func l = sequence mapresult where mapresult = asTypeOf (map func l) [] @@ -550,12 +552,12 @@ | count <= 0 = empty | otherwise = map (\_ -> x) [1..count] -#if __GLASGOW_HASKELL__ >= 708 + {-# MINIMAL (singleton, uncons, null) | (singleton, uncons, genericLength) | (singleton, head, tail, null) | (singleton, head, tail, genericLength) #-} -#endif + -- | A version of 'ListLike' with a single type parameter, the item -- type is obtained using the 'Item' type function from 'IsList'. @@ -646,7 +648,7 @@ elemIndex = L.elemIndex elemIndices item = fromList . L.elemIndices item findIndex = L.findIndex - sequence = M.sequence . toList + sequence = sequenceA . toList -- mapM = M.mapM nub = L.nub delete = L.delete @@ -671,7 +673,7 @@ ListLike fullb itemb, ListLike result (item, itemb)) => full -> fullb -> result -zip = zipWith (\a b -> (a, b)) +zip = zipWith (,) {- | Takes two lists and combines them with a custom combining function -} zipWith :: (ListLike full item, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/src/Data/ListLike/Instances.hs new/ListLike-4.7.7/src/Data/ListLike/Instances.hs --- old/ListLike-4.7.6/src/Data/ListLike/Instances.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/src/Data/ListLike/Instances.hs 2001-09-09 03:46:40.000000000 +0200 @@ -4,6 +4,9 @@ ,TypeFamilies ,TypeSynonymInstances #-} {-# OPTIONS -fno-warn-orphans #-} +#if __GLASGOW_HASKELL__ > 901 +{-# OPTIONS -fno-warn-incomplete-uni-patterns #-} +#endif {- Copyright (C) 2007 John Goerzen <[email protected]> @@ -39,7 +42,6 @@ splitAt, elem, notElem, unzip, lines, words, unlines, unwords) import qualified Prelude as P -import Control.Monad import qualified Data.List as L import qualified Data.Sequence as S import Data.Sequence ((><), (|>), (<|)) @@ -188,8 +190,8 @@ findIndices x = fromList . BS.findIndices x -- the default definitions don't work well for array-like things, so -- do monadic stuff via a list instead - sequence = liftM fromList . P.sequence . toList - mapM func = liftM fromList . P.mapM func . toList + sequence = fmap fromList . P.sequenceA . toList + mapM func = fmap fromList . P.traverse func . toList --nub = BS.nub --delete = BS.delete --deleteFirsts = BS.deleteFirsts @@ -311,8 +313,8 @@ --elemIndices x = fromList . L.map fromIntegral . BSL.elemIndices x findIndex f = mi64toi . BSL.findIndex f --findIndices x = fromList . L.map fromIntegral . BSL.findIndices x - sequence = liftM fromList . P.sequence . toList - mapM func = liftM fromList . P.mapM func . toList + sequence = fmap fromList . P.sequenceA . toList + mapM func = fmap fromList . P.traverse func . toList --sequence = BSL.sequence --mapM = BSL.mapM --mapM_ = BSL.mapM_ @@ -460,8 +462,8 @@ elemIndices i = fromList . L.elemIndices i . toList findIndex f = L.findIndex f . toList findIndices f = fromList . L.findIndices f . toList - sequence = liftM fromList . P.sequence . toList - mapM func = liftM fromList . P.mapM func . toList + sequence = fmap fromList . P.sequenceA . toList + mapM func = fmap fromList . P.traverse func . toList -- rigidMapM = mapM nub = fromList . L.nub . toList -- delete diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/src/Data/ListLike/Text/Text.hs new/ListLike-4.7.7/src/Data/ListLike/Text/Text.hs --- old/ListLike-4.7.6/src/Data/ListLike/Text/Text.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/src/Data/ListLike/Text/Text.hs 2001-09-09 03:46:40.000000000 +0200 @@ -7,7 +7,6 @@ where import Prelude as P -import Control.Monad import qualified Data.Text as T import qualified Data.Text.IO as TI import qualified Data.Text.Lazy as Lazy (toStrict) @@ -78,8 +77,8 @@ genericSplitAt i = T.splitAt (fromIntegral i) genericReplicate i = LL.replicate (fromIntegral i) - sequence = liftM fromList . P.sequence . toList - mapM func = liftM fromList . P.mapM func . toList + sequence = fmap fromList . P.sequenceA . toList + mapM func = fmap fromList . P.traverse func . toList instance ListLikeIO T.Text Char where hGetLine = TI.hGetLine diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/src/Data/ListLike/Text/TextLazy.hs new/ListLike-4.7.7/src/Data/ListLike/Text/TextLazy.hs --- old/ListLike-4.7.6/src/Data/ListLike/Text/TextLazy.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/src/Data/ListLike/Text/TextLazy.hs 2001-09-09 03:46:40.000000000 +0200 @@ -7,7 +7,6 @@ where import Prelude as P -import Control.Monad import qualified Data.Text.Lazy as T import qualified Data.Text.Lazy.IO as TI import Data.Text.Encoding (decodeUtf8) @@ -75,8 +74,8 @@ genericSplitAt i = T.splitAt (fromIntegral i) genericReplicate i = LL.replicate (fromIntegral i) - sequence = liftM fromList . P.sequence . toList - mapM func = liftM fromList . P.mapM func . toList + sequence = fmap fromList . P.sequenceA . toList + mapM func = fmap fromList . P.traverse func . toList instance ListLikeIO T.Text Char where hGetLine = TI.hGetLine diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/src/Data/ListLike/UTF8.hs new/ListLike-4.7.7/src/Data/ListLike/UTF8.hs --- old/ListLike-4.7.6/src/Data/ListLike/UTF8.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/src/Data/ListLike/UTF8.hs 2001-09-09 03:46:40.000000000 +0200 @@ -108,8 +108,8 @@ -- findIndices x = fromList . UTF8.findIndices x -- -- the default definitions don't work well for array-like things, so -- -- do monadic stuff via a list instead - -- sequence = liftM fromList . P.sequence . toList - -- mapM func = liftM fromList . P.mapM func . toList + -- sequence = fmap fromList . P.sequenceA . toList + -- mapM func = fmap fromList . P.traverse func . toList -- --nub = UTF8.nub -- --delete = UTF8.delete -- --deleteFirsts = UTF8.deleteFirsts @@ -231,8 +231,8 @@ -- findIndices x = fromList . UTF8.findIndices x -- -- the default definitions don't work well for array-like things, so -- -- do monadic stuff via a list instead - -- sequence = liftM fromList . P.sequence . toList - -- mapM func = liftM fromList . P.mapM func . toList + -- sequence = fmap fromList . P.sequenceA . toList + -- mapM func = fmap fromList . P.traverse func . toList -- --nub = UTF8.nub -- --delete = UTF8.delete -- --deleteFirsts = UTF8.deleteFirsts diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/src/Data/ListLike/Vector/Generic.hs new/ListLike-4.7.7/src/Data/ListLike/Vector/Generic.hs --- old/ListLike-4.7.6/src/Data/ListLike/Vector/Generic.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/src/Data/ListLike/Vector/Generic.hs 2001-09-09 03:46:40.000000000 +0200 @@ -4,6 +4,7 @@ ,FlexibleInstances ,TypeFamilies ,UndecidableInstances #-} +{-# LANGUAGE TypeOperators #-} -- for GHC >= 9.4 #if __GLASGOW_HASKELL__ < 710 {-# LANGUAGE OverlappingInstances #-} #endif @@ -17,7 +18,6 @@ where import Prelude as P -import Control.Monad import qualified Data.Vector.Generic as V import Data.Vector.Generic ((!)) import Data.ListLike.Base @@ -90,8 +90,8 @@ --genericSplitAt i = genericReplicate i = V.replicate (fromIntegral i) - sequence = liftM fromList . P.sequence . toList - mapM func = liftM fromList . P.mapM func . toList + sequence = fmap fromList . P.sequenceA . toList + mapM func = fmap fromList . P.traverse func . toList instance (Eq (v Char), V.Vector v Char) => IsString (v Char) where fromString = V.fromList diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/src/Data/ListLike/Vector/Storable.hs new/ListLike-4.7.7/src/Data/ListLike/Vector/Storable.hs --- old/ListLike-4.7.6/src/Data/ListLike/Vector/Storable.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/src/Data/ListLike/Vector/Storable.hs 2001-09-09 03:46:40.000000000 +0200 @@ -8,7 +8,6 @@ where import Prelude as P -import Control.Monad import qualified Data.Vector.Storable as V import Data.Vector.Storable ((!)) import Data.ListLike.Base @@ -76,8 +75,8 @@ --genericSplitAt i = genericReplicate i = V.replicate (fromIntegral i) - sequence = liftM fromList . P.sequence . toList - mapM func = liftM fromList . P.mapM func . toList + sequence = fmap fromList . P.sequenceA . toList + mapM func = fmap fromList . P.traverse func . toList instance IsString (V.Vector Char) where fromString = fromList diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/src/Data/ListLike/Vector/Unboxed.hs new/ListLike-4.7.7/src/Data/ListLike/Vector/Unboxed.hs --- old/ListLike-4.7.6/src/Data/ListLike/Vector/Unboxed.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/src/Data/ListLike/Vector/Unboxed.hs 2001-09-09 03:46:40.000000000 +0200 @@ -8,7 +8,6 @@ where import Prelude as P -import Control.Monad import qualified Data.Vector.Unboxed as V import Data.Vector.Unboxed (Unbox, (!)) import Data.ListLike.Base @@ -74,8 +73,8 @@ --genericSplitAt i = genericReplicate i = V.replicate (fromIntegral i) - sequence = liftM fromList . P.sequence . toList - mapM func = liftM fromList . P.mapM func . toList + sequence = fmap fromList . P.sequenceA . toList + mapM func = fmap fromList . P.traverse func . toList instance IsString (V.Vector Char) where fromString = fromList diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ListLike-4.7.6/src/Data/ListLike/Vector/Vector.hs new/ListLike-4.7.7/src/Data/ListLike/Vector/Vector.hs --- old/ListLike-4.7.6/src/Data/ListLike/Vector/Vector.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/ListLike-4.7.7/src/Data/ListLike/Vector/Vector.hs 2001-09-09 03:46:40.000000000 +0200 @@ -8,7 +8,6 @@ where import Prelude as P -import Control.Monad import qualified Data.Vector as V import Data.Vector ((!)) import Data.ListLike.Base @@ -73,8 +72,8 @@ --genericSplitAt i = genericReplicate i = V.replicate (fromIntegral i) - sequence = liftM fromList . P.sequence . toList - mapM func = liftM fromList . P.mapM func . toList + sequence = fmap fromList . P.sequenceA . toList + mapM func = fmap fromList . P.traverse func . toList instance IsString (V.Vector Char) where fromString = fromList ++++++ ListLike.cabal ++++++ Name: ListLike Version: 4.7.7 x-revision: 1 License: BSD3 Maintainer: David Fox <[email protected]>, Andreas Abel Author: John Goerzen Copyright: Copyright (c) 2007-2008 John Goerzen license-file: COPYRIGHT Category: list, string, text, bytestring, vector Cabal-Version: >= 1.10 Build-Type: Simple homepage: http://github.com/ddssff/listlike synopsis: Generalized support for list-like structures Description: Generalized support for list-like structures in Haskell. . The ListLike module provides a common interface to the various Haskell types that are list-like. Predefined interfaces include standard Haskell lists, Arrays, ByteStrings, and lazy ByteStrings. Custom types can easily be made ListLike instances as well. . ListLike also provides for String-like types, such as String and ByteString, for types that support input and output, and for types that can handle infinite lists. Stability: Stable Tested-With: GHC == 9.4.1 GHC == 9.2.2 GHC == 9.0.2 GHC == 8.10.7 GHC == 8.8.4 GHC == 8.6.5 GHC == 8.4.4 GHC == 8.2.2 GHC == 8.0.2 GHC == 7.10.3 extra-source-files: README.md CHANGELOG.md Library default-language: Haskell2010 GHC-Options: -Wall Hs-Source-Dirs: src Exposed-Modules: Data.ListLike Data.ListLike.Base Data.ListLike.Chars Data.ListLike.CharString Data.ListLike.FoldableLL Data.ListLike.IO Data.ListLike.Instances Data.ListLike.String Data.ListLike.Text Data.ListLike.Text.Builder Data.ListLike.Text.Text Data.ListLike.Text.TextLazy Data.ListLike.UTF8 Data.ListLike.Utils Data.ListLike.Vector Data.ListLike.Vector.Generic Data.ListLike.Vector.Storable Data.ListLike.Vector.Unboxed Data.ListLike.Vector.Vector Data.ListLike.DList Data.ListLike.FMList -- Other-Modules: Data.ConfigFile.Lexer Build-Depends: base >= 4.8 && < 5 ,containers >= 0.3 && < 0.7 ,bytestring >= 0.9.1 && < 0.12 ,array >= 0.3 && < 0.6 ,text >= 0.11 && < 1.3 || == 2.0.* ,vector >= 0.5 && < 0.14 ,dlist >= 0.7 && < 1.1 ,fmlist >= 0.8 && < 0.10 ,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 marathon to relax upper bounds. If !impl(ghc >= 8.4) Build-Depends: semigroups >= 0.16 && < 0.20 if impl(ghc >= 8.0) ghc-options: -Wcompat Test-suite listlike-tests default-language: Haskell2010 Hs-source-dirs: testsrc Main-is: runtests.hs Type: exitcode-stdio-1.0 Other-modules: TestInfrastructure Build-depends: base ,ListLike ,HUnit >= 1.2 && < 2 ,QuickCheck >= 2.4 && < 3 ,random >= 1 && < 2 ,array ,bytestring ,containers ,dlist ,fmlist ,text ,vector ,utf8-string If !impl(ghc >= 8.4) Build-Depends: semigroups >= 0.16 && < 0.20 source-repository head type: git location: git://github.com/ddssff/listlike.git
