Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ghc-criterion for openSUSE:Factory checked in at 2022-10-13 15:41:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-criterion (Old) and /work/SRC/openSUSE:Factory/.ghc-criterion.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-criterion" Thu Oct 13 15:41:31 2022 rev:6 rq:1008448 version:1.6.0.0 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-criterion/ghc-criterion.changes 2022-08-10 17:14:18.493865889 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-criterion.new.2275/ghc-criterion.changes 2022-10-13 15:41:38.630679202 +0200 @@ -1,0 +2,14 @@ +Thu Aug 11 23:00:45 UTC 2022 - Peter Simons <[email protected]> + +- Update criterion to version 1.6.0.0. + 1.6.0.0 + + * `criterion-measurement-0.2.0.0` adds the `measPeakMbAllocated` field to + `Measured` for reporting maximum megabytes allocated. Since `criterion` + re-exports `Measured` from `Criterion.Types`, this change affects `criterion` + as well. Naturally, this affects the behavior of `Measured`'s `{To,From}JSON` + and `Binary` instances. + * Fix a bug in which the `--help` text for the `--match` option was printed + twice in `criterion` applications. + +------------------------------------------------------------------- Old: ---- criterion-1.5.13.0.tar.gz criterion.cabal New: ---- criterion-1.6.0.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-criterion.spec ++++++ --- /var/tmp/diff_new_pack.Nf49e3/_old 2022-10-13 15:41:39.302680514 +0200 +++ /var/tmp/diff_new_pack.Nf49e3/_new 2022-10-13 15:41:39.310680530 +0200 @@ -19,13 +19,12 @@ %global pkg_name criterion %bcond_with tests Name: ghc-%{pkg_name} -Version: 1.5.13.0 +Version: 1.6.0.0 Release: 0 Summary: Robust, reliable performance measurement and analysis License: BSD-2-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/2.cabal#/%{pkg_name}.cabal BuildRequires: chrpath BuildRequires: ghc-Cabal-devel BuildRequires: ghc-Glob-devel @@ -92,7 +91,6 @@ %prep %autosetup -n %{pkg_name}-%{version} -cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build ++++++ criterion-1.5.13.0.tar.gz -> criterion-1.6.0.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/criterion-1.5.13.0/Criterion/Main/Options.hs new/criterion-1.6.0.0/Criterion/Main/Options.hs --- old/criterion-1.5.13.0/Criterion/Main/Options.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/criterion-1.6.0.0/Criterion/Main/Options.hs 2001-09-09 03:46:40.000000000 +0200 @@ -96,27 +96,47 @@ -- ^ Default configuration to use if options are not -- explicitly specified. -> Parser Mode -parseWith cfg = config cfg <**> runMode - -- Important: only run `config` once here, as we only want the - -- command-line options resulting from `config` to appear once - -- in the `--help` output. See #168. +parseWith cfg = + runOrRunIters <|> + (List <$ switch (long "list" <> short 'l' <> help "List benchmarks")) <|> + (Version <$ switch (long "version" <> help "Show version info")) where - runMode :: Parser (Config -> Mode) - runMode = - matchNames (pure $ \mt bs cfg' -> Run cfg' mt bs) <|> - runIters <|> - (const List <$ switch (long "list" <> short 'l' <> help "List benchmarks")) <|> - (const Version <$ switch (long "version" <> help "Show version info")) - - runIters :: Parser (Config -> Mode) - runIters = matchNames $ (\iters mt bs cfg' -> RunIters cfg' iters mt bs) - <$> option auto + runOrRunIters :: Parser Mode + runOrRunIters = + -- Because Run and RunIters are separate Modes, it's tempting to + -- split them out into their own Parsers and choose between them + -- using (<|>), i.e., + -- + -- (Run <$> config cfg <*> ...) + -- <|> (RunIters <$> config cfg <*> (... "iters") <*> ...) + -- + -- This is possible, but it has the unfortunate consequence of + -- invoking the same Parsers (e.g., @config@) multiple times. As a + -- result, the help text for each Parser would be duplicated when the + -- user runs --help. See #168. + -- + -- To avoid this problem, we combine Run and RunIters into a single + -- Parser that only runs each of its sub-Parsers once. The trick is + -- to make the Parser for "iters" (the key difference between Run and + -- RunIters) an optional Parser. If the Parser yields Nothing, select + -- Run, and if the Parser yields Just, select RunIters. + -- + -- This is admittedly a bit of a design smell, as the idiomatic way + -- to handle this would be to turn Run and RunIters into subcommands + -- rather than options. That way, each subcommand would have its own + -- --help prompt, thereby avoiding the need to deduplicate the help + -- text. Unfortunately, this would require breaking the CLI interface + -- of every criterion-based program, which seems like a leap too far. + -- The solution used here, while a bit grimy, gets the job done while + -- keeping Run and RunIters as options. + (\cfg' mbIters -> + case mbIters of + Just iters -> RunIters cfg' iters + Nothing -> Run cfg') + <$> config cfg + <*> optional (option auto (long "iters" <> short 'n' <> metavar "ITERS" <> - help "Run benchmarks, don't analyse") - - matchNames :: Parser (MatchType -> [String] -> Config -> Mode) - -> Parser (Config -> Mode) - matchNames wat = wat + help "Run benchmarks, don't analyse")) <*> option match (long "match" <> short 'm' <> metavar "MATCH" <> value Prefix <> help "How to match benchmark names (\"prefix\", \"glob\", \"pattern\", or \"ipattern\")") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/criterion-1.5.13.0/changelog.md new/criterion-1.6.0.0/changelog.md --- old/criterion-1.5.13.0/changelog.md 2001-09-09 03:46:40.000000000 +0200 +++ new/criterion-1.6.0.0/changelog.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,3 +1,13 @@ +1.6.0.0 + +* `criterion-measurement-0.2.0.0` adds the `measPeakMbAllocated` field to + `Measured` for reporting maximum megabytes allocated. Since `criterion` + re-exports `Measured` from `Criterion.Types`, this change affects `criterion` + as well. Naturally, this affects the behavior of `Measured`'s `{To,From}JSON` + and `Binary` instances. +* Fix a bug in which the `--help` text for the `--match` option was printed + twice in `criterion` applications. + 1.5.13.0 * Allow building with `optparse-applicative-0.17.*`. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/criterion-1.5.13.0/criterion.cabal new/criterion-1.6.0.0/criterion.cabal --- old/criterion-1.5.13.0/criterion.cabal 2001-09-09 03:46:40.000000000 +0200 +++ new/criterion-1.6.0.0/criterion.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,5 +1,5 @@ name: criterion -version: 1.5.13.0 +version: 1.6.0.0 synopsis: Robust, reliable performance measurement and analysis license: BSD3 license-file: LICENSE @@ -29,7 +29,7 @@ GHC==8.8.4, GHC==8.10.7, GHC==9.0.2, - GHC==9.2.1 + GHC==9.2.2 data-files: templates/*.css @@ -84,7 +84,7 @@ build-depends: -- TODO: Eventually, we should bump the lower version bounds to >=2 so that -- we can remove some CPP in Criterion.Report. See #247. - aeson >= 1 && < 2.1, + aeson >= 1 && < 2.2, ansi-wl-pprint >= 0.6.7.2, base >= 4.5 && < 5, base-compat-batteries >= 0.10 && < 0.13, @@ -94,7 +94,7 @@ cassava >= 0.3.0.0, code-page, containers, - criterion-measurement >= 0.1.1.0 && < 0.2, + criterion-measurement >= 0.2 && < 0.3, deepseq >= 1.1.0.0, directory, exceptions >= 0.8.2 && < 0.11, @@ -107,7 +107,7 @@ -- TODO: Depend on optparse-applicative-0.17 as the minimum (see #258) optparse-applicative >= 0.13 && < 0.18, parsec >= 3.1.0, - statistics >= 0.14 && < 0.16, + statistics >= 0.14 && < 0.17, text >= 0.11, time, transformers, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/criterion-1.5.13.0/examples/criterion-examples.cabal new/criterion-1.6.0.0/examples/criterion-examples.cabal --- old/criterion-1.5.13.0/examples/criterion-examples.cabal 2001-09-09 03:46:40.000000000 +0200 +++ new/criterion-1.6.0.0/examples/criterion-examples.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -22,7 +22,7 @@ GHC==8.8.4, GHC==8.10.7, GHC==9.0.2, - GHC==9.2.1 + GHC==9.2.2 flag conduit-vs-pipes default: True diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/criterion-1.5.13.0/tests/Tests.hs new/criterion-1.6.0.0/tests/Tests.hs --- old/criterion-1.5.13.0/tests/Tests.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/criterion-1.6.0.0/tests/Tests.hs 2001-09-09 03:46:40.000000000 +0200 @@ -12,7 +12,7 @@ r1 :: Report r1 = Report 0 "" [] v1 s1 (Outliers 0 0 0 0 0) [] where - m1 = Measured 4.613000783137977e-05 3.500000000000378e-05 31432 1 0 0 0 0.0 0.0 0.0 0.0 + m1 = Measured 4.613000783137977e-05 3.500000000000378e-05 31432 1 0 0 0 0 0.0 0.0 0.0 0.0 v1 = V.fromList [m1] est1 = estimateFromErr 0.0 (0.0, 0.0) (mkCL 0.0) s1 = SampleAnalysis [] est1 est1 (OutlierVariance Unaffected "" 0.0) @@ -24,6 +24,7 @@ , measIters = 1 , measAllocated = minBound + , measPeakMbAllocated = minBound , measNumGcs = minBound , measBytesCopied = minBound
