packages feed

monoid-extras 0.6.2 → 0.6.3

raw patch · 3 files changed

+40/−5 lines, 3 filesdep ~base

Dependency ranges changed: base

Files

CHANGES view
@@ -1,8 +1,25 @@+* 0.6.3: 8 August 2024++- New instances (thanks to Clinton Mead):+  - `Action (First a) a`+  - `Action Void a`+  - `Action m a => Action (Identity m) a`+ * 0.6.2: 20 Dec 2022  - New class and newtypes in `Data.Monoid.Action` (thanks to Manuel Bärenz):     - `Torsor` class for transitive group actions     - `Regular` and `Conjugate` newtypes for groups acting on themselves++- r1 (27 March 2023):+  - allow `semigroupoids-6.0`+  - allow `base-4.18` and test on GHC 9.6.++- r2 (17 Oct 2023):+  - allow `base-4.19` and test on GHC 9.8.++- r3 (15 May 2024):+  - allow `base-4.20` and test on GHC 9.10.  * 0.6.1: 16 Nov 2021 
monoid-extras.cabal view
@@ -1,5 +1,5 @@ name:                monoid-extras-version:             0.6.2+version:             0.6.3 synopsis:            Various extra monoid-related definitions and utilities description:         Various extra monoid-related definitions and utilities,                      such as monoid actions, monoid coproducts, semi-direct@@ -14,7 +14,7 @@ category:            Data build-type:          Simple cabal-version:       >=1.10-tested-with:         GHC ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.4 || ==9.4.1+tested-with:         GHC ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.5 || ==9.8.2 || ==9.10.1  source-repository head   type: git@@ -36,9 +36,9 @@                      Data.Monoid.Split,                      Data.Monoid.WithSemigroup -  build-depends:     base >= 4.11 && < 4.18,+  build-depends:     base >= 4.11 && < 4.21,                      groups < 0.6,-                     semigroupoids >= 4.0 && < 5.4+                     semigroupoids >= 4.0 && < 6.1    hs-source-dirs:    src @@ -55,7 +55,7 @@   hs-source-dirs: benchmarks   main-is: SemiDirectProduct.hs   type: exitcode-stdio-1.0-  build-depends: base          >= 4.3 &&  < 4.18+  build-depends: base          >= 4.3 &&  < 4.21                , semigroups                , criterion                , monoid-extras
src/Data/Monoid/Action.hs view
@@ -19,8 +19,12 @@        , Torsor(..)        ) where +import           Data.Functor.Identity (Identity(Identity)) import           Data.Semigroup+import qualified Data.Semigroup as Semigroup import           Data.Group+import qualified Data.Monoid as Monoid+import           Data.Void (Void, absurd)  ------------------------------------------------------------ --  Monoid and semigroup actions@@ -128,3 +132,17 @@  instance Group m => Action m (Conjugate m) where   m1 `act` Conjugate m2 = Conjugate $ m1 <> m2 ~~ m1++instance Action (Semigroup.First a) a where+  act (Semigroup.First m) _ = m++instance Action (Monoid.First a) a where +  act (Monoid.First m) s = case m of+    Nothing -> s+    Just m' -> m'++instance Action Void a where+  act = absurd++instance Action m s => Action (Identity m) s where+  act (Identity m) = act m