parameterized-utils 2.2.0.0 → 2.3.0.0
raw patch · 6 files changed
+20/−31 lines, 6 filesdep −microlens-prodep −profunctors
Dependencies removed: microlens-pro, profunctors
Files
- Changelog.md +5/−0
- parameterized-utils.cabal +1/−3
- src/Data/Parameterized/Classes.hs +5/−0
- src/Data/Parameterized/Compose.hs +2/−1
- src/Data/Parameterized/Fin.hs +0/−26
- src/Data/Parameterized/TraversableFC/WithIndex.hs +7/−1
Changelog.md view
@@ -1,5 +1,10 @@ # Changelog for the `parameterized-utils` package +## 2.3.0.0 -- 2026-03-06++ * BREAKING: Remove the `Iso`s `fin0Void`, `fin1Unit`, and `fin2Bool`.+ * Deprecate `Data.Parameterized.Compose`.+ ## 2.2.0.0 -- 2026-01-22 * Replace dependency on `lens` with `microlens` and `microlens-pro`.
parameterized-utils.cabal view
@@ -1,6 +1,6 @@ Cabal-version: 2.2 Name: parameterized-utils-Version: 2.2.0.0+Version: 2.3.0.0 Author: Galois Inc. Maintainer: kquick@galois.com, rscott@galois.com stability: stable@@ -60,9 +60,7 @@ , hashtables >=1.2 && <1.5 , indexed-traversable , microlens >=0.5 && <0.6- , microlens-pro >=0.2 && <0.3 , mtl- , profunctors >=5.6 && < 5.7 , template-haskell , text , vector >=0.12 && < 0.14
src/Data/Parameterized/Classes.hs view
@@ -8,6 +8,11 @@ "Data.Functor.Classes" types as they work with any kind @k@, and are not restricted to '*'. -}++-- TODO(#221): This is for the deprecation warning on+-- Data.Parameterized.Compose, remove this when that module is removed.+{-# OPTIONS_GHC -Wno-deprecations #-}+ {-# LANGUAGE AllowAmbiguousTypes #-} {-# LANGUAGE CPP #-} {-# LANGUAGE DefaultSignatures #-}
src/Data/Parameterized/Compose.hs view
@@ -16,7 +16,7 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeOperators #-} {-# LANGUAGE Safe #-}-module Data.Parameterized.Compose+module Data.Parameterized.Compose {-# DEPRECATED "See #170" #-} ( testEqualityComposeBare ) where @@ -37,3 +37,4 @@ case (testEquality_ x y :: Maybe (g x :~: g y)) of Just Refl -> Just (Refl :: x :~: y) Nothing -> Nothing+{-# DEPRECATED testEqualityComposeBare "See #170" #-}
src/Data/Parameterized/Fin.hs view
@@ -32,14 +32,9 @@ , minFin , incFin , fin0Absurd- , fin0Void- , fin1Unit- , fin2Bool ) where -import Data.Void (Void, absurd) import GHC.TypeNats (KnownNat)-import Lens.Micro.Pro (Iso', iso) import Numeric.Natural (Natural) import Data.Parameterized.NatRepr@@ -133,24 +128,3 @@ case plusComm x (knownNat @1) of Refl -> case addIsLeqLeft1 @1 @o @0 LeqProof of {})--fin0Void :: Iso' (Fin 0) Void-fin0Void = iso fin0Absurd absurd--fin1Unit :: Iso' (Fin 1) ()-fin1Unit = iso (const ()) (const minFin)--fin2Bool :: Iso' (Fin 2) Bool-fin2Bool =- iso- (viewFin- (\n ->- case isZeroNat n of- ZeroNat -> False- NonZeroNat -> True))- (\b -> if b then maxBound else minBound)--{-# DEPRECATED- fin0Void, fin1Unit, fin2Bool- "These will be removed in the next release of parameterized-utils, see #208."-#-}
src/Data/Parameterized/TraversableFC/WithIndex.hs view
@@ -24,15 +24,21 @@ , ifoldMapFCDefault ) where +import Data.Coerce (Coercible, coerce) import Data.Functor.Const (Const(Const, getConst)) import Data.Functor.Identity (Identity(Identity, runIdentity)) import Data.Kind import Data.Monoid (All(..), Any(..), Endo(Endo), appEndo, Dual(Dual, getDual))-import Data.Profunctor.Unsafe ((#.)) import GHC.Exts (build) import Data.Parameterized.Classes import Data.Parameterized.TraversableFC++-- See Note [Function coercion] in+-- https://hackage-content.haskell.org/package/ghc-internal-9.1401.0/src/src/GHC/Internal/Data/Functor/Utils.hs+(#.) :: Coercible b c => (b -> c) -> (a -> b) -> (a -> c)+(#.) _f = coerce+{-# INLINE (#.) #-} class FunctorFC t => FunctorFCWithIndex (t :: (k -> Type) -> l -> Type) where -- | Like 'fmapFC', but with an index.