slist 0.2.0.1 → 0.2.1.0
raw patch · 4 files changed
+22/−7 lines, 4 filesdep ~basedep ~containersdep ~hedgehogPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base, containers, hedgehog, hspec-hedgehog
API changes (from Hackage documentation)
- Slist.Type: instance GHC.Exts.IsList (Slist.Type.Slist a)
+ Slist.Type: instance GHC.IsList.IsList (Slist.Type.Slist a)
Files
- CHANGELOG.md +5/−0
- slist.cabal +8/−2
- src/Slist.hs +8/−4
- src/Slist/Maybe.hs +1/−1
CHANGELOG.md view
@@ -3,6 +3,11 @@ `slist` uses [PVP Versioning][1]. The changelog is available [on GitHub][2]. +## 0.2.1.0 – Nov 3, 2022++* [#56](https://github.com/kowainik/slist/issues/56):+ Support GHC-9.4.+ ## 0.2.0.1 – Oct 7, 2022 * [#53](https://github.com/kowainik/slist/issues/53):
slist.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.4 name: slist-version: 0.2.0.1+version: 0.2.1.0 synopsis: Sized list description: This package implements @Slist@ data structure that stores the size of the list along with the list itself.@@ -23,13 +23,14 @@ , GHC == 8.10.7 , GHC == 9.0.2 , GHC == 9.2.4+ , GHC == 9.4.2 source-repository head type: git location: https://github.com/kowainik/slist.git common common-options- build-depends: base >= 4.10.1.0 && < 4.17+ build-depends: base >= 4.10.1.0 && < 4.18 ghc-options: -Wall -Wincomplete-uni-patterns@@ -43,6 +44,11 @@ -Werror=missing-deriving-strategies if impl(ghc >= 8.10.1) ghc-options: -Wunused-packages+ if impl(ghc >= 9.0)+ ghc-options: -Winvalid-haddock+ if impl(ghc >= 9.2)+ ghc-options: -Wredundant-bang-patterns+ -Woperator-whitespace default-extensions: ConstraintKinds DeriveGeneric
src/Slist.hs view
@@ -385,6 +385,7 @@ 1 >>> head mempty *** Exception: Prelude.head: empty list+... -} head :: Slist a -> a@@ -415,6 +416,7 @@ 'y' >>> last mempty *** Exception: Prelude.last: empty list+... @ >> last $ infiniteSlist [1..]@@ -677,7 +679,7 @@ go :: Int -> Int -> Int go !acc 0 = acc- go !acc n = go (acc * n) (n - 1)+ go acc n = go (acc * n) (n - 1) {-# INLINE permutations #-} ----------------------------------------------------------------------------@@ -937,7 +939,7 @@ where go :: Int -> [a] -> (Int, [a]) go !n [] = (n, [])- go !n (x:xs) =+ go n (x:xs) = if p x then let (i, l) = go (n + 1) xs in (i, x:l) else (n, [])@@ -967,7 +969,7 @@ where go :: Int -> [a] -> (Int, [a]) go !n [] = (n, [])- go !n (x:xs) =+ go n (x:xs) = if p x then go (n + 1) xs else (n, x:xs)@@ -997,7 +999,7 @@ where go :: Int -> [a] -> (Int, [a], [a]) go !n [] = (n, [], [])- go !n (x:xs) =+ go n (x:xs) = if p x then let (s, l, r) = go (n + 1) xs in (s, x:l, r) else (n, [], x:xs)@@ -1476,8 +1478,10 @@ 1 >>> unsafeAt (-1) sl *** Exception: Prelude.!!: negative index+... >>> unsafeAt 11 sl *** Exception: Prelude.!!: index too large+... >>> unsafeAt 9 sl 10 -}
src/Slist/Maybe.hs view
@@ -133,7 +133,7 @@ where go :: Int -> [a] -> (Int, [b]) go !accSize [] = (accSize, [])- go !accSize (x:xs) = case f x of+ go accSize (x:xs) = case f x of Nothing -> go accSize xs Just r -> second (r:) $ go (accSize + 1) xs