Hello community, here is the log from the commit of package ghc-Glob for openSUSE:Factory checked in at 2020-08-10 14:53:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-Glob (Old) and /work/SRC/openSUSE:Factory/.ghc-Glob.new.3399 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-Glob" Mon Aug 10 14:53:21 2020 rev:18 rq:824306 version:0.10.1 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-Glob/ghc-Glob.changes 2020-06-19 17:06:56.097028700 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-Glob.new.3399/ghc-Glob.changes 2020-08-10 14:53:29.071857512 +0200 @@ -1,0 +2,9 @@ +Mon Jul 20 02:00:58 UTC 2020 - [email protected] + +- Update Glob to version 0.10.1. + 0.10.1, 2020-07-19: + Updated code and dependencies to support dlist-1.0. + + Cabal-Version minimum bumped to 1.10 as Hackage now rejects older minima. + +------------------------------------------------------------------- Old: ---- Glob-0.10.0.tar.gz Glob.cabal New: ---- Glob-0.10.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-Glob.spec ++++++ --- /var/tmp/diff_new_pack.oebYS8/_old 2020-08-10 14:53:29.659857822 +0200 +++ /var/tmp/diff_new_pack.oebYS8/_new 2020-08-10 14:53:29.659857822 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-Glob # -# Copyright (c) 2019 SUSE LLC +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,13 +19,12 @@ %global pkg_name Glob %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.10.0 +Version: 0.10.1 Release: 0 Summary: Globbing library 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-containers-devel BuildRequires: ghc-directory-devel @@ -57,7 +56,6 @@ %prep %setup -q -n %{pkg_name}-%{version} -cp -p %{SOURCE1} %{pkg_name}.cabal chmod -x *.txt # https://github.com/Deewiant/glob/issues/31 %build ++++++ Glob-0.10.0.tar.gz -> Glob-0.10.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Glob-0.10.0/CHANGELOG.txt new/Glob-0.10.1/CHANGELOG.txt --- old/Glob-0.10.0/CHANGELOG.txt 1970-01-01 01:00:00.000000000 +0100 +++ new/Glob-0.10.1/CHANGELOG.txt 2001-09-09 03:46:40.000000000 +0200 @@ -1,3 +1,8 @@ +0.10.1, 2020-07-19: + Updated code and dependencies to support dlist-1.0. + + Cabal-Version minimum bumped to 1.10 as Hackage now rejects older minima. + 0.10.0, 2018-12-19: Bug fix: "**/" matched hidden directories in some scenarios even when matchDotsImplicitly was set to False. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Glob-0.10.0/Glob.cabal new/Glob-0.10.1/Glob.cabal --- old/Glob-0.10.0/Glob.cabal 1970-01-01 01:00:00.000000000 +0100 +++ new/Glob-0.10.1/Glob.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,7 +1,7 @@ -Cabal-Version: >= 1.9.2 +Cabal-Version: >= 1.10 Name: Glob -Version: 0.10.0 +Version: 0.10.1 Homepage: http://iki.fi/matti.niemenmaa/glob/ Synopsis: Globbing library Category: System @@ -28,17 +28,19 @@ Build-Depends: base >= 4 && < 5 , containers < 0.7 , directory < 1.4 - , dlist >= 0.4 && < 0.9 + , dlist >= 0.4 && < 1.1 , filepath >= 1.1 && < 1.5 , transformers >= 0.2 && < 0.6 , transformers-compat >= 0.3 && < 0.7 if impl(ghc < 8.0) - Build-Depends: semigroups >= 0.18 && < 0.19 + Build-Depends: semigroups >= 0.18 && < 0.20 if os(windows) Build-Depends: Win32 == 2.* + Default-Language: Haskell98 + Exposed-Modules: System.FilePath.Glob System.FilePath.Glob.Primitive Other-Modules: System.FilePath.Glob.Base @@ -58,7 +60,7 @@ Build-Depends: base >= 4 && < 5 , containers < 0.7 , directory < 1.4 - , dlist >= 0.4 && < 0.9 + , dlist >= 0.4 && < 1.1 , filepath >= 1.1 && < 1.5 , transformers >= 0.2 && < 0.6 , transformers-compat >= 0.3 && < 0.7 @@ -69,11 +71,13 @@ , test-framework-quickcheck2 >= 0.3 && < 1 if impl(ghc < 8.0) - Build-Depends: semigroups >= 0.18 && < 0.19 + Build-Depends: semigroups >= 0.18 && < 0.20 if os(windows) Build-Depends: Win32 == 2.* + Default-Language: Haskell98 + Other-Modules: System.FilePath.Glob.Base System.FilePath.Glob.Directory System.FilePath.Glob.Match diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Glob-0.10.0/System/FilePath/Glob/Base.hs new/Glob-0.10.1/System/FilePath/Glob/Base.hs --- old/Glob-0.10.0/System/FilePath/Glob/Base.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/Glob-0.10.1/System/FilePath/Glob/Base.hs 2001-09-09 03:46:40.000000000 +0200 @@ -1,6 +1,7 @@ -- File created: 2008-10-10 13:29:26 {-# LANGUAGE CPP #-} +{-# LANGUAGE PatternGuards #-} module System.FilePath.Glob.Base ( Token(..), Pattern(..) @@ -34,7 +35,11 @@ #if !MIN_VERSION_base(4,8,0) import Data.Monoid (Monoid, mappend, mempty, mconcat) #endif +#if MIN_VERSION_base(4,11,0) +import Data.Semigroup (sconcat, stimes) +#else import Data.Semigroup (Semigroup, (<>), sconcat, stimes) +#endif import Data.String (IsString(fromString)) import System.FilePath ( pathSeparator, extSeparator , isExtSeparator, isPathSeparator @@ -542,10 +547,10 @@ -- Has to be done here: we can't backtrack in go, but some cases might -- result in consecutive Literals being generated. -- E.g. "a[b]". - fin (x:y:xs) | isCharLiteral x && isCharLiteral y = - let (ls,rest) = span isCharLiteral xs + fin (x:y:xs) | Just x' <- isCharLiteral x, Just y' <- isCharLiteral y = + let (ls,rest) = spanMaybe isCharLiteral xs in fin $ LongLiteral (length ls + 2) - (foldr (\(Literal a) -> (a:)) [] (x:y:ls)) + (foldr (\a -> (a:)) [] (x':y':ls)) : rest -- concatenate LongLiterals @@ -608,11 +613,20 @@ , (OpenRange Nothing Nothing, \n -> replicate n anyDigit) ] - isCharLiteral (Literal _) = True - isCharLiteral _ = False + isCharLiteral (Literal x) = Just x + isCharLiteral _ = Nothing anyDigit = CharRange True [Right ('0', '9')] +-- | Like 'span', but let's use a -> Maybe b predicate +spanMaybe :: (a -> Maybe b) -> [a] -> ([b], [a]) +spanMaybe f = go + where + go xs@[] = ([], xs) + go xs@(x : xs') = case f x of + Nothing -> ([], xs) + Just y -> let (ys, zs) = go xs' in (y : ys, zs) + optimizeCharRange :: Bool -> Token -> Token optimizeCharRange precededBySlash (CharRange b rs) = fin . stripUnmatchable . go . sortCharRange $ rs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Glob-0.10.0/System/FilePath/Glob/Directory.hs new/Glob-0.10.1/System/FilePath/Glob/Directory.hs --- old/Glob-0.10.0/System/FilePath/Glob/Directory.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/Glob-0.10.1/System/FilePath/Glob/Directory.hs 2001-09-09 03:46:40.000000000 +0200 @@ -28,7 +28,7 @@ import System.FilePath.Glob.Utils ( getRecursiveContents , nubOrd , pathParts - , partitionDL + , partitionDL, tailDL , catchIO ) -- |Options which can be passed to the 'globDirWith' function. @@ -223,7 +223,7 @@ then ( DL.singleton $ DL.head contents ++ replicate n pathSeparator - , DL.tail contents + , tailDL contents ) else let (matches, nonMatches) = partitionDL fst diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Glob-0.10.0/System/FilePath/Glob/Utils.hs new/Glob-0.10.1/System/FilePath/Glob/Utils.hs --- old/Glob-0.10.0/System/FilePath/Glob/Utils.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/Glob-0.10.1/System/FilePath/Glob/Utils.hs 2001-09-09 03:46:40.000000000 +0200 @@ -8,7 +8,7 @@ , dropLeadingZeroes , pathParts , nubOrd - , partitionDL + , partitionDL, tailDL , getRecursiveContents , catchIO ) where @@ -154,6 +154,13 @@ then (DL.cons x ts, fs) else (ts, DL.cons x fs) +tailDL :: DList a -> DList a +#if MIN_VERSION_dlist(1,0,0) +tailDL = DL.fromList . DL.tail +#else +tailDL = DL.tail +#endif + nubOrd :: Ord a => [a] -> [a] nubOrd = go Set.empty where diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Glob-0.10.0/tests/Tests/Directory.hs new/Glob-0.10.1/tests/Tests/Directory.hs --- old/Glob-0.10.0/tests/Tests/Directory.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/Glob-0.10.1/tests/Tests/Directory.hs 2001-09-09 03:46:40.000000000 +0200 @@ -1,3 +1,4 @@ +{-# LANGUAGE CPP #-} module Tests.Directory where import Test.Framework @@ -6,7 +7,9 @@ import Test.QuickCheck (Property, (===)) import Test.HUnit.Base hiding (Test) import Data.Function (on) -import Data.Monoid ((<>)) +#if !MIN_VERSION_base(4,8,0) +import Data.Monoid (mappend) +#endif import Data.List ((\\), sort) import qualified Data.DList as DList @@ -99,7 +102,7 @@ prop_commonDirectory' str = let pat = compile str (a, b) = commonDirectory pat - in (pat, literal a <> b) + in (pat, literal a `mappend` b) prop_commonDirectory :: PString -> Property prop_commonDirectory = uncurry (===) . prop_commonDirectory' . unPS
