data-compat 0.1.0.4 → 0.1.0.5
raw patch · 3 files changed
+16/−8 lines, 3 filesdep ~basedep ~constraintsPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base, constraints
API changes (from Hackage documentation)
- Data.Compat: type CompatConstraint a :: * -> Constraint;
+ Data.Compat: type CompatConstraint a :: Type -> Constraint;
- Data.Compat: type CompatF a :: * -> *;
+ Data.Compat: type CompatF a :: Type -> Type;
- Data.Compat: type Pred a :: *;
+ Data.Compat: type Pred a :: Type;
Files
- CHANGELOG.md +5/−0
- data-compat.cabal +4/−4
- src/Data/Compat.hs +7/−4
CHANGELOG.md view
@@ -1,5 +1,10 @@ # Revision history for data-compat +## 0.1.0.5 -- 2024-11-09++* Bump bounds.+* Fix warnings that will become errors in future GHC releases.+ ## 0.1.0.4 -- 2022-09-27 * Bump bounds.
data-compat.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.2 name: data-compat-version: 0.1.0.4+version: 0.1.0.5 synopsis: Define Backwards Compatibility Schemes for Arbitrary Data description: Define Backwards Compatibility Schemes for Arbitrary Data homepage: https://github.com/TravisWhitaker/data-compat@@ -9,7 +9,7 @@ license-file: LICENSE author: Travis Whitaker maintainer: pi.boy.travis@gmail.com-copyright: Travis Whitaker 2019-2021+copyright: Travis Whitaker 2019-2024 category: Data extra-source-files: CHANGELOG.md @@ -17,7 +17,7 @@ exposed-modules: Data.Compat -- other-modules: -- other-extensions:- build-depends: base >= 4.12.0.0 && < 4.18- , constraints >= 0.10 && < 0.14+ build-depends: base >= 4.12.0.0 && < 5+ , constraints >= 0.10 && < 0.15 hs-source-dirs: src default-language: Haskell2010
src/Data/Compat.hs view
@@ -1,7 +1,7 @@ {-| Module : Data.Compat Description : Backwards Compatibility Schemes for Arbitrary Data-Copyright : Travis Whitaker 2019+Copyright : Travis Whitaker 2019-2024 License : MIT Maintainer : pi.boy.travis@gmail.com Stability : Provisional@@ -18,6 +18,7 @@ , ScopedTypeVariables , TypeFamilies , TypeApplications+ , TypeOperators #-} module Data.Compat where@@ -26,20 +27,22 @@ import Data.Constraint +import Data.Kind+ import Data.Proxy -- | A class for backwards-compatible data. class Compat a where -- | The predecessor for this type, i.e. the type for the data schema -- directly preceeding 'a'.- type Pred a :: *+ type Pred a :: Type -- | Any additional constraints required to yield data values. Typically -- this will be a class that provides a parser.- type CompatConstraint a :: * -> Constraint+ type CompatConstraint a :: Type -> Constraint -- | A type for wrapping migration results. It is most useful if this type -- has `Alternative` and `Monad` instances, enabling the use of -- `getCompatible`. `Maybe` is a good first choice.- type CompatF a :: * -> *+ type CompatF a :: Type -> Type -- | How to migrate from a value of the preceeding schema to the current -- schema. migrate :: Pred a -> (CompatF a) a