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
 

Reply via email to