packages feed

exon 1.7.1.0 → 1.7.2.0

raw patch · 2 files changed

+18/−10 lines, 2 filesdep ~basedep ~ghcdep ~hedgehogPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: base, ghc, hedgehog, template-haskell

API changes (from Hackage documentation)

- Exon: Empty :: Result a
- Exon: Expression :: a -> Segment a
- Exon: Result :: a -> Result a
- Exon: String :: String -> Segment a
- Exon: Whitespace :: String -> Segment a
- Exon: data Result a
- Exon: data Segment a
- Exon: intercalate :: Exon a => Monoid a => Foldable t => a -> t a -> a
- Exon: intercalate1 :: Exon a => a -> NonEmpty a -> a
- Exon: intercalateMay :: Exon a => Foldable t => a -> t a -> Maybe a
+ Exon: ($dmexonAppend) :: (ExonAppend result builder, Semigroup builder) => builder -> builder -> Result builder
+ Exon: ($dmexonBuilder) :: (ExonBuilder inner builder, inner ~ builder) => inner -> builder
+ Exon: ($dmexonBuilderExtract) :: (ExonBuilder inner builder, Monoid builder, inner ~ builder) => Result builder -> inner
+ Exon: ($dmexonString) :: (ExonString result builder, IsString builder) => String -> Result builder
+ Exon: ($dmexonWhitespace) :: ExonString result builder => String -> Result builder
+ Exon.Class.Exon: ($dmexonAppend) :: (ExonAppend result builder, Semigroup builder) => builder -> builder -> Result builder
+ Exon.Class.Exon: ($dmexonBuilder) :: (ExonBuilder inner builder, inner ~ builder) => inner -> builder
+ Exon.Class.Exon: ($dmexonBuilderExtract) :: (ExonBuilder inner builder, Monoid builder, inner ~ builder) => Result builder -> inner
+ Exon.Class.Exon: ($dmexonString) :: (ExonString result builder, IsString builder) => String -> Result builder
+ Exon.Class.Exon: ($dmexonWhitespace) :: ExonString result builder => String -> Result builder
- Exon: class Exon (result :: Type)
+ Exon: class Exon result
- Exon: class ExonAppend (result :: Type) (builder :: Type)
+ Exon: class ExonAppend result builder
- Exon: class ExonBuild (result :: Type) (inner :: Type)
+ Exon: class ExonBuild result inner
- Exon: class ExonBuilder (inner :: Type) (builder :: Type) | inner -> builder
+ Exon: class ExonBuilder inner builder | inner -> builder
- Exon: class ExonExpression (result :: Type) (inner :: Type) (builder :: Type)
+ Exon: class ExonExpression result inner builder
- Exon: class ExonSegment (result :: Type) (inner :: Type) (builder :: Type)
+ Exon: class ExonSegment result inner builder
- Exon: class ExonString (result :: Type) (builder :: Type)
+ Exon: class ExonString result builder
- Exon: exonAppend :: (ExonAppend result builder, Semigroup builder) => builder -> builder -> Result builder
+ Exon: exonAppend :: ExonAppend result builder => builder -> builder -> Result builder
- Exon: exonBuilder :: (ExonBuilder inner builder, inner ~ builder) => inner -> builder
+ Exon: exonBuilder :: ExonBuilder inner builder => inner -> builder
- Exon: exonBuilderExtract :: (ExonBuilder inner builder, Monoid builder) => inner ~ builder => Result builder -> inner
+ Exon: exonBuilderExtract :: ExonBuilder inner builder => Result builder -> inner
- Exon: exonString :: (ExonString result builder, IsString builder) => String -> Result builder
+ Exon: exonString :: ExonString result builder => String -> Result builder
- Exon.Class.Exon: class Exon (result :: Type)
+ Exon.Class.Exon: class Exon result
- Exon.Class.Exon: class ExonAppend (result :: Type) (builder :: Type)
+ Exon.Class.Exon: class ExonAppend result builder
- Exon.Class.Exon: class ExonBuild (result :: Type) (inner :: Type)
+ Exon.Class.Exon: class ExonBuild result inner
- Exon.Class.Exon: class ExonBuilder (inner :: Type) (builder :: Type) | inner -> builder
+ Exon.Class.Exon: class ExonBuilder inner builder | inner -> builder
- Exon.Class.Exon: class ExonExpression (result :: Type) (inner :: Type) (builder :: Type)
+ Exon.Class.Exon: class ExonExpression result inner builder
- Exon.Class.Exon: class ExonSegment (result :: Type) (inner :: Type) (builder :: Type)
+ Exon.Class.Exon: class ExonSegment result inner builder
- Exon.Class.Exon: class ExonString (result :: Type) (builder :: Type)
+ Exon.Class.Exon: class ExonString result builder
- Exon.Class.Exon: exonAppend :: (ExonAppend result builder, Semigroup builder) => builder -> builder -> Result builder
+ Exon.Class.Exon: exonAppend :: ExonAppend result builder => builder -> builder -> Result builder
- Exon.Class.Exon: exonBuilder :: (ExonBuilder inner builder, inner ~ builder) => inner -> builder
+ Exon.Class.Exon: exonBuilder :: ExonBuilder inner builder => inner -> builder
- Exon.Class.Exon: exonBuilderExtract :: (ExonBuilder inner builder, Monoid builder) => inner ~ builder => Result builder -> inner
+ Exon.Class.Exon: exonBuilderExtract :: ExonBuilder inner builder => Result builder -> inner
- Exon.Class.Exon: exonProcessWith :: forall wrapped result. Exon wrapped => (result -> wrapped) -> (wrapped -> result) -> NonEmpty (Segment result) -> result
+ Exon.Class.Exon: exonProcessWith :: Exon wrapped => (result -> wrapped) -> (wrapped -> result) -> NonEmpty (Segment result) -> result
- Exon.Class.Exon: exonString :: (ExonString result builder, IsString builder) => String -> Result builder
+ Exon.Class.Exon: exonString :: ExonString result builder => String -> Result builder
- Exon.Class.Newtype: class OverNewtype (current :: Type) (wrapped :: Maybe Type) (inner :: Type) | current -> inner
+ Exon.Class.Newtype: class OverNewtype current (wrapped :: Maybe Type) inner | current -> inner
- Exon.Class.Newtype: class OverNewtypes (result :: Type) (inner :: Type) | result -> inner
+ Exon.Class.Newtype: class OverNewtypes result inner | result -> inner
- Exon.Combinators: intercalate :: Exon a => Monoid a => Foldable t => a -> t a -> a
+ Exon.Combinators: intercalate :: (Exon a, Monoid a, Foldable t) => a -> t a -> a
- Exon.Combinators: intercalateMay :: Exon a => Foldable t => a -> t a -> Maybe a
+ Exon.Combinators: intercalateMay :: (Exon a, Foldable t) => a -> t a -> Maybe a

Files

exon.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack  name:           exon-version:        1.7.1.0+version:        1.7.2.0 synopsis:       Customizable quasiquote interpolation description:    See https://hackage.haskell.org/package/exon/docs/Exon.html category:       String@@ -13,7 +13,7 @@ bug-reports:    https://github.com/tek/exon/issues author:         Torsten Schmits maintainer:     hackage@tryp.io-copyright:      2023 Torsten Schmits+copyright:      2025 Torsten Schmits license:        BSD-2-Clause-Patent license-file:   LICENSE build-type:     Simple@@ -82,11 +82,11 @@       NoFieldSelectors   ghc-options: -Wall -Widentities -Wincomplete-uni-patterns -Wmissing-deriving-strategies -Wredundant-constraints -Wunused-type-patterns -Wunused-packages   build-depends:-      base >=4.16.4.0 && <5-    , ghc >=9.2.8 && <9.11+      base >=4.16.4.0 && <4.22+    , ghc >=9.2.8 && <9.13     , incipit-base >=0.5.0.0 && <0.7     , parsec >=3.1.15.0 && <3.2-    , template-haskell >=2.18.0.0 && <2.23+    , template-haskell >=2.18.0.0 && <2.24   mixins:       base hiding (Prelude)     , incipit-base (IncipitBase as Prelude)@@ -144,13 +144,13 @@       NoFieldSelectors   ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall -Widentities -Wincomplete-uni-patterns -Wmissing-deriving-strategies -Wredundant-constraints -Wunused-type-patterns -Wunused-packages   build-depends:-      base >=4.16.4.0 && <5+      base >=4.16.4.0 && <4.22     , exon     , hedgehog >=1.1 && <1.6     , incipit-base >=0.5.0.0 && <0.7     , tasty >=1.4.0.3 && <1.6     , tasty-hedgehog >=1.1.0.0 && <1.5-    , template-haskell >=2.18.0.0 && <2.23+    , template-haskell >=2.18.0.0 && <2.24   mixins:       base hiding (Prelude)     , incipit-base (IncipitBase as Prelude)@@ -200,7 +200,7 @@       NoFieldSelectors   ghc-options: -Wall -Widentities -Wincomplete-uni-patterns -Wmissing-deriving-strategies -Wredundant-constraints -Wunused-type-patterns -Wunused-packages   build-depends:-      base >=4.16.4.0 && <5+      base >=4.16.4.0 && <4.22     , criterion >=1.5.11.0 && <1.7     , exon     , incipit-base >=0.5.0.0 && <0.7
lib/Exon/Haskell/Translate.hs view
@@ -123,7 +123,9 @@   = TH.AppE (TH.VarE 'negate) (toExp d . unLoc $ e)  -- NOTE: for lambda, there is only one match-#if MIN_VERSION_ghc(9,10,0)+#if MIN_VERSION_ghc(9,12,0)+toExp d (Expr.HsLam _ _ (Expr.MG _ (unLoc -> (map unLoc -> [Expr.Match _ _ (map unLoc . unLoc -> ps) (Expr.GRHSs _ [unLoc -> Expr.GRHS _ _ (unLoc -> e)] _)]))))+#elif MIN_VERSION_ghc(9,10,0) toExp d (Expr.HsLam _ _ (Expr.MG _ (unLoc -> (map unLoc -> [Expr.Match _ _ (map unLoc -> ps) (Expr.GRHSs _ [unLoc -> Expr.GRHS _ _ (unLoc -> e)] _)])))) #elif MIN_VERSION_ghc(9,6,0) toExp d (Expr.HsLam _ (Expr.MG _ (unLoc -> (map unLoc -> [Expr.Match _ _ (map unLoc -> ps) (Expr.GRHSs _ [unLoc -> Expr.GRHS _ _ (unLoc -> e)] _)]))))@@ -194,7 +196,11 @@     extractFieldLabel (DotFieldOcc _ locatedStr) = field_label <$> locatedStr     extractFieldLabel _ = error "Don't know how to handle XHsFieldLabel constructor..."   in+#if MIN_VERSION_ghc(9, 12, 0)+    TH.ProjectionE (NonEmpty.map (unpackFS . unLoc . extractFieldLabel) locatedFields)+#else     TH.ProjectionE (NonEmpty.map (unpackFS . unLoc . extractFieldLabel . unLoc) locatedFields)+#endif  toExp d (Expr.HsGetField _ expr locatedField) =   let@@ -232,7 +238,9 @@     TH.GetFieldE (toExp d (unLoc expr)) (unpackFS . unLoc . extractFieldLabel . unLoc $ locatedField) #endif -#if MIN_VERSION_ghc(9, 6, 0)+#if MIN_VERSION_ghc(9, 12, 0)+toExp _ (Expr.HsOverLabel _ fastString) = TH.LabelE (unpackFS fastString)+#elif MIN_VERSION_ghc(9, 6, 0) toExp _ (Expr.HsOverLabel _ _ fastString) = TH.LabelE (unpackFS fastString) #else toExp _ (Expr.HsOverLabel _ fastString) = TH.LabelE (unpackFS fastString)