Hello community, here is the log from the commit of package ghc-vector-builder for openSUSE:Factory checked in at 2018-08-20 16:21:02 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-vector-builder (Old) and /work/SRC/openSUSE:Factory/.ghc-vector-builder.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-vector-builder" Mon Aug 20 16:21:02 2018 rev:2 rq:630376 version:0.3.6 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-vector-builder/ghc-vector-builder.changes 2018-07-25 16:10:21.505596861 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-vector-builder.new/ghc-vector-builder.changes 2018-08-20 16:21:05.152963607 +0200 @@ -1,0 +2,6 @@ +Fri Aug 17 09:43:14 UTC 2018 - psim...@suse.com + +- Update vector-builder to version 0.3.6. + Upstream does not provide a change log file. + +------------------------------------------------------------------- Old: ---- vector-builder-0.3.4.1.tar.gz New: ---- vector-builder-0.3.6.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-vector-builder.spec ++++++ --- /var/tmp/diff_new_pack.iWebch/_old 2018-08-20 16:21:05.588964224 +0200 +++ /var/tmp/diff_new_pack.iWebch/_new 2018-08-20 16:21:05.588964224 +0200 @@ -19,7 +19,7 @@ %global pkg_name vector-builder %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.3.4.1 +Version: 0.3.6 Release: 0 Summary: Vector builder License: MIT @@ -33,11 +33,8 @@ BuildRequires: ghc-vector-devel %if %{with tests} BuildRequires: ghc-QuickCheck-devel -BuildRequires: ghc-bug-devel -BuildRequires: ghc-criterion-devel -BuildRequires: ghc-foldl-devel +BuildRequires: ghc-attoparsec-devel BuildRequires: ghc-quickcheck-instances-devel -BuildRequires: ghc-rebase-devel BuildRequires: ghc-rerebase-devel BuildRequires: ghc-tasty-devel BuildRequires: ghc-tasty-hunit-devel ++++++ vector-builder-0.3.4.1.tar.gz -> vector-builder-0.3.6.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vector-builder-0.3.4.1/foldl-benchmark/Main.hs new/vector-builder-0.3.6/foldl-benchmark/Main.hs --- old/vector-builder-0.3.4.1/foldl-benchmark/Main.hs 2017-11-12 12:31:51.000000000 +0100 +++ new/vector-builder-0.3.6/foldl-benchmark/Main.hs 1970-01-01 01:00:00.000000000 +0100 @@ -1,43 +0,0 @@ -module Main where - -import Prelude -import Criterion -import Criterion.Main -import qualified Control.Foldl as A -import qualified Data.Vector as F -import qualified Data.Vector.Unboxed as G -import qualified VectorBuilder.Builder as N -import qualified VectorBuilder.Vector as O - - -main = - defaultMain [boxed, unboxed] - where - comparisons name builderSubject growingSubject = - bgroup name (map comparison sizes) - where - sizes = - [1000, 10000, 100000, 1000000, 10000000] - comparison size = - bgroup (show size) - [ - bench "builder" (nf builderSubject input), - bench "growing" (nf growingSubject input) - ] - where - input = - [0..size] - boxed = - comparisons "boxed" builderSubject growingSubject - where - builderSubject input = - A.fold (A.foldMap N.singleton O.build) input :: Vector Int - growingSubject input = - runST (A.foldM A.vector input) :: Vector Int - unboxed = - comparisons "unboxed" builderSubject growingSubject - where - builderSubject input = - A.fold (A.foldMap N.singleton O.build) input :: G.Vector Int - growingSubject input = - runST (A.foldM A.vector input) :: G.Vector Int diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vector-builder-0.3.4.1/foldl-profiling/Main.hs new/vector-builder-0.3.6/foldl-profiling/Main.hs --- old/vector-builder-0.3.4.1/foldl-profiling/Main.hs 2017-11-12 12:31:51.000000000 +0100 +++ new/vector-builder-0.3.6/foldl-profiling/Main.hs 1970-01-01 01:00:00.000000000 +0100 @@ -1,15 +0,0 @@ -module Main where - -import Prelude -import qualified Data.Vector.Unboxed as V -import qualified Control.Foldl as L -import qualified VectorBuilder.Builder as N -import qualified VectorBuilder.Vector as O - -main :: IO () -main = (print . V.maximum) (L.fold fold input) where - input = [1..1000000] :: [Int] - fold = L.Fold step begin done where - begin = N.empty - step x a = x <> N.singleton a - done = O.build diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vector-builder-0.3.4.1/library/VectorBuilder/Alternative.hs new/vector-builder-0.3.6/library/VectorBuilder/Alternative.hs --- old/vector-builder-0.3.4.1/library/VectorBuilder/Alternative.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/vector-builder-0.3.6/library/VectorBuilder/Alternative.hs 2018-08-03 14:51:04.000000000 +0200 @@ -0,0 +1,30 @@ +{-| +Alternative utilities. +For instance, they can be applied with parsing libraries. +-} +module VectorBuilder.Alternative +where + +import VectorBuilder.Prelude hiding (many, some) +import Data.Vector (Vector) +import qualified VectorBuilder.Builder as A +import qualified VectorBuilder.Vector as B + + +{-# INLINABLE many #-} +many :: Alternative m => m a -> m (Vector a) +many = fmap B.build . manyBuilder + +{-# INLINABLE manyBuilder #-} +manyBuilder :: Alternative m => m a -> m (A.Builder a) +manyBuilder m = let + loop = ((<>) <$> A.singleton <$> m <*> loop) <|> pure mempty + in loop + +{-# INLINABLE some #-} +some :: Alternative m => m a -> m (Vector a) +some m = B.build <$> someBuilder m + +{-# INLINABLE someBuilder #-} +someBuilder :: Alternative m => m a -> m (A.Builder a) +someBuilder m = (<>) <$> A.singleton <$> m <*> manyBuilder m diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vector-builder-0.3.4.1/tests/Main/Sample.hs new/vector-builder-0.3.6/tests/Main/Sample.hs --- old/vector-builder-0.3.4.1/tests/Main/Sample.hs 2017-11-12 12:31:51.000000000 +0100 +++ new/vector-builder-0.3.6/tests/Main/Sample.hs 2018-08-03 14:51:04.000000000 +0200 @@ -1,9 +1,9 @@ module Main.Sample where -import Rebase.Prelude +import Prelude import Test.QuickCheck.Instances import qualified VectorBuilder.Builder as A -import qualified Rebase.Data.Vector as B +import qualified Data.Vector as B import qualified Test.Tasty.QuickCheck as C diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vector-builder-0.3.4.1/tests/Main.hs new/vector-builder-0.3.6/tests/Main.hs --- old/vector-builder-0.3.4.1/tests/Main.hs 2017-11-12 12:31:51.000000000 +0100 +++ new/vector-builder-0.3.6/tests/Main.hs 2018-08-03 14:51:04.000000000 +0200 @@ -1,13 +1,16 @@ module Main where -import Rebase.Prelude +import Prelude import Test.Tasty import Test.Tasty.Runners import Test.Tasty.HUnit import Test.Tasty.QuickCheck import qualified VectorBuilder.Builder as A import qualified VectorBuilder.Vector as B +import qualified VectorBuilder.Alternative as F import qualified Main.Sample as C +import qualified Data.Attoparsec.Text as D +import qualified Data.Vector as E main = @@ -17,5 +20,13 @@ testProperty "" $ \(samples :: [C.Sample Int]) -> foldMap C.toVector samples === B.build (foldMap C.toBuilder samples) + , + testCase "Alternative.some" $ assertEqual "" + (Right (E.fromList "1234")) + (D.parseOnly (F.some D.anyChar) "1234") + , + testCase "Alternative.some on empty" $ assertEqual "" + (Left "not enough input") + (D.parseOnly (F.some D.anyChar) "") ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vector-builder-0.3.4.1/vector-builder.cabal new/vector-builder-0.3.6/vector-builder.cabal --- old/vector-builder-0.3.4.1/vector-builder.cabal 2017-11-12 12:31:51.000000000 +0100 +++ new/vector-builder-0.3.6/vector-builder.cabal 2018-08-03 14:51:04.000000000 +0200 @@ -1,7 +1,7 @@ name: vector-builder version: - 0.3.4.1 + 0.3.6 synopsis: Vector builder description: @@ -70,15 +70,16 @@ VectorBuilder.MVector VectorBuilder.Vector VectorBuilder.MonadPlus + VectorBuilder.Alternative other-modules: VectorBuilder.Prelude VectorBuilder.Core.Update VectorBuilder.Core.Builder build-depends: - vector >= 0.11 && < 0.13, - semigroups >= 0.16 && < 0.20, - base-prelude < 2, - base >= 4.6 && < 5 + vector >=0.11 && <0.13, + semigroups >=0.16 && <0.20, + base-prelude <2, + base >=4.6 && <5 test-suite tests type: @@ -94,62 +95,60 @@ default-language: Haskell2010 build-depends: - -- testing: - tasty >=0.12 && <0.13, - tasty-quickcheck >=0.9 && <0.10, - tasty-hunit >=0.9 && <0.10, - quickcheck-instances >=0.3.11 && <0.4, + attoparsec >=0.13 && <0.14, QuickCheck >=2.8.1 && <3, - -- - vector-builder, - -- - rebase + quickcheck-instances >=0.3.11 && <0.4, + rerebase ==1.*, + tasty >=1.0.1 && <1.2, + tasty-hunit >=0.10 && <0.11, + tasty-quickcheck >=0.10 && <0.11, + vector-builder -benchmark foldl-benchmark - type: - exitcode-stdio-1.0 - hs-source-dirs: - foldl-benchmark - main-is: - Main.hs - ghc-options: - -O2 - -threaded - "-with-rtsopts=-N" - -rtsopts - default-extensions: - Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples - default-language: - Haskell2010 - build-depends: - vector-builder, - foldl == 1.2.*, - -- benchmarking: - criterion >= 1.1 && < 2, - -- general: - rerebase < 2 +-- benchmark foldl-benchmark +-- type: +-- exitcode-stdio-1.0 +-- hs-source-dirs: +-- foldl-benchmark +-- main-is: +-- Main.hs +-- ghc-options: +-- -O2 +-- -threaded +-- "-with-rtsopts=-N" +-- -rtsopts +-- default-extensions: +-- Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples +-- default-language: +-- Haskell2010 +-- build-depends: +-- vector-builder, +-- foldl >=1.2 && <2, +-- -- benchmarking: +-- criterion >=1.1 && <2, +-- -- general: +-- rerebase <2 -test-suite foldl-profiling - type: - exitcode-stdio-1.0 - hs-source-dirs: - foldl-profiling - main-is: - Main.hs - ghc-options: - -O2 - -threaded - "-with-rtsopts=-N" - -rtsopts - default-extensions: - Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples - default-language: - Haskell2010 - build-depends: - vector-builder, - foldl == 1.2.*, - -- benchmarking: - criterion >= 1.1 && < 2, - -- general: - bug == 1.*, - rerebase < 2 +-- test-suite foldl-profiling +-- type: +-- exitcode-stdio-1.0 +-- hs-source-dirs: +-- foldl-profiling +-- main-is: +-- Main.hs +-- ghc-options: +-- -O2 +-- -threaded +-- "-with-rtsopts=-N" +-- -rtsopts +-- default-extensions: +-- Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples +-- default-language: +-- Haskell2010 +-- build-depends: +-- vector-builder, +-- foldl >=1.2 && <2, +-- -- benchmarking: +-- criterion >=1.1 && <2, +-- -- general: +-- bug ==1.*, +-- rerebase <2