Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ghc-mmorph for openSUSE:Factory checked in at 2025-06-11 16:26:53 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-mmorph (Old) and /work/SRC/openSUSE:Factory/.ghc-mmorph.new.19631 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-mmorph" Wed Jun 11 16:26:53 2025 rev:10 rq:1284552 version:1.2.1 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-mmorph/ghc-mmorph.changes 2023-04-04 21:21:35.985597701 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-mmorph.new.19631/ghc-mmorph.changes 2025-06-11 16:28:37.673734284 +0200 @@ -1,0 +2,8 @@ +Sun Jun 8 03:52:03 UTC 2025 - Peter Simons <psim...@suse.com> + +- Update mmorph to version 1.2.1. + 1.2.1 + + - `MFunctor` and `MMonad` instances for `AccumT` + +------------------------------------------------------------------- Old: ---- mmorph-1.2.0.tar.gz mmorph.cabal New: ---- mmorph-1.2.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-mmorph.spec ++++++ --- /var/tmp/diff_new_pack.RAD2Fk/_old 2025-06-11 16:28:38.325761483 +0200 +++ /var/tmp/diff_new_pack.RAD2Fk/_new 2025-06-11 16:28:38.325761483 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-mmorph # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2025 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 mmorph %global pkgver %{pkg_name}-%{version} Name: ghc-%{pkg_name} -Version: 1.2.0 +Version: 1.2.1 Release: 0 Summary: Monad morphisms 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/3.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-base-devel BuildRequires: ghc-base-prof @@ -70,7 +69,6 @@ %prep %autosetup -n %{pkg_name}-%{version} -cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build ++++++ mmorph-1.2.0.tar.gz -> mmorph-1.2.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mmorph-1.2.0/CHANGELOG.md new/mmorph-1.2.1/CHANGELOG.md --- old/mmorph-1.2.0/CHANGELOG.md 2021-07-17 01:13:52.000000000 +0200 +++ new/mmorph-1.2.1/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,3 +1,7 @@ +1.2.1 + +- `MFunctor` and `MMonad` instances for `AccumT` + 1.2.0 * BREAKING CHANGE: Remove instances for `ErrorT` and `ListT` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mmorph-1.2.0/LICENSE new/mmorph-1.2.1/LICENSE --- old/mmorph-1.2.0/LICENSE 2021-07-17 01:13:52.000000000 +0200 +++ new/mmorph-1.2.1/LICENSE 2001-09-09 03:46:40.000000000 +0200 @@ -1,4 +1,4 @@ -Copyright (c) 2013, Gabriel Gonzalez +Copyright (c) 2013, Gabriella Gonzalez All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -9,7 +9,7 @@ * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. -* Neither the name of Gabriel Gonzalez nor the names of other contributors may +* Neither the name of Gabriella Gonzalez nor the names of other contributors may be used to endorse or promote products derived from this software without specific prior written permission. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mmorph-1.2.0/mmorph.cabal new/mmorph-1.2.1/mmorph.cabal --- old/mmorph-1.2.0/mmorph.cabal 2021-07-17 01:13:52.000000000 +0200 +++ new/mmorph-1.2.1/mmorph.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,13 +1,13 @@ Name: mmorph -Version: 1.2.0 +Version: 1.2.1 Cabal-Version: >= 1.10 Build-Type: Simple License: BSD3 License-File: LICENSE -Copyright: 2013 Gabriel Gonzalez -Author: Gabriel Gonzalez -Maintainer: gabriel...@gmail.com -Bug-Reports: https://github.com/Gabriel439/Haskell-MMorph-Library/issues +Copyright: 2013 Gabriella Gonzalez +Author: Gabriella Gonzalez +Maintainer: genuinegabrie...@gmail.com +Bug-Reports: https://github.com/Gabriella439/Haskell-MMorph-Library/issues Synopsis: Monad morphisms Description: This library provides monad morphism utilities, most commonly used for manipulating monad transformer stacks. @@ -15,15 +15,15 @@ Extra-Source-Files: CHANGELOG.md Source-Repository head Type: git - Location: https://github.com/Gabriel439/Haskell-MMorph-Library + Location: https://github.com/Gabriella439/Haskell-MMorph-Library Library Hs-Source-Dirs: src Build-Depends: base >= 4.5 && < 5 , - mtl >= 2.1 && < 2.3, - transformers >= 0.2.0.0 && < 0.6, - transformers-compat >= 0.3 && < 0.7 + mtl >= 2.1 && < 2.4, + transformers >= 0.2.0.0 && < 0.7, + transformers-compat >= 0.3 && < 0.8 if impl(ghc < 8.0) Build-Depends: fail == 4.9.* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mmorph-1.2.0/src/Control/Monad/Morph.hs new/mmorph-1.2.1/src/Control/Monad/Morph.hs --- old/mmorph-1.2.0/src/Control/Monad/Morph.hs 2021-07-17 01:13:52.000000000 +0200 +++ new/mmorph-1.2.1/src/Control/Monad/Morph.hs 2001-09-09 03:46:40.000000000 +0200 @@ -78,6 +78,7 @@ ) where import Control.Monad.Trans.Class (MonadTrans(lift)) +import qualified Control.Monad.Trans.Accum as A import qualified Control.Monad.Trans.Except as Ex import qualified Control.Monad.Trans.Identity as I import qualified Control.Monad.Trans.Maybe as M @@ -115,6 +116,9 @@ -} hoist :: (Monad m) => (forall a . m a -> n a) -> t m b -> t n b +instance MFunctor (A.AccumT w) where + hoist nat m = A.AccumT (nat . A.runAccumT m) + instance MFunctor (Ex.ExceptT e) where hoist nat m = Ex.ExceptT (nat (Ex.runExceptT m)) @@ -230,6 +234,11 @@ t |>= f = embed f t {-# INLINABLE (|>=) #-} +instance Monoid w => MMonad (A.AccumT w) where + embed f m = A.AccumT $ \w -> do + ((b, wInner), wOuter) <- A.runAccumT (f $ A.runAccumT m w) w + return (b, wInner `mappend` wOuter) + instance MMonad (Ex.ExceptT e) where embed f m = Ex.ExceptT (do x <- Ex.runExceptT (f (Ex.runExceptT m))