Cabal revisions of validated-literals-0.3.0
Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.
revision 1
-Name: validated-literals-Version: 0.3.0--Homepage: https://github.com/merijn/validated-literals-Bug-Reports: https://github.com/merijn/validated-literals/issues--Author: Merijn Verstraaten-Maintainer: Merijn Verstraaten <merijn@inconsistent.nl>-Copyright: Copyright © 2015-2018 Merijn Verstraaten--License: BSD3-License-File: LICENSE--Category: Data-Cabal-Version: >= 1.10-Build-Type: Simple-Tested-With: GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.3--Synopsis: Compile-time checking for partial smart-constructors--Description:- To disallow invalid input it is common to define (new)types with hidden- data constructors. Forcing the user to go through a smart-constructor that- enforces invariants and returns @Maybe ResultType@, preventing the- construction of data with invalid values.- .- However, it is __also__ common to want to include literal values of such- types in source text. Things of textual literals for HTML, HTTP, etc.- In such cases smart-constructors force us to handle potential conversion- failures at runtime, or abusing functions like @fromJust@ to break away all- the safety smart-constructors provide. All this despite the fact that we- can statically know at compile time that the conversion will always succeed- or always fails.- .- This package provides a typeclasses for using TH to validate the- correctness of provided literals at compile. This lets you define, e.g.,- @newtype Even = Even Integer@ and write:- .- @- x :: Even- x = $$(valid 38)- @- .- This will check, at compile time, that the provided @Integer@ is, in fact,- even and unwrap it from @Maybe@, avoiding the runtime check.--Extra-Source-Files: README.md, CHANGELOG.md--Library- Default-Language: Haskell2010- GHC-Options: -Wall-- Other-Extensions: DefaultSignatures, FlexibleContexts,- MultiParamTypeClasses, ScopedTypeVariables,- TemplateHaskell-- Exposed-Modules: ValidLiterals-- Build-Depends: base >= 4.9 && < 4.13- , template-haskell--Test-Suite examples- Default-Language: Haskell2010- Type: exitcode-stdio-1.0- Main-Is: Examples.hs- Other-Modules: ByteString- Even-- GHC-Options: -Wall -fno-warn-unused-do-bind- Other-Extensions: DeriveGeneric, DeriveLift, FlexibleInstances,- MultiParamTypeClasses, TemplateHaskell- Hs-Source-Dirs: examples- Build-Depends: base- , bytestring == 0.10.*- , deepseq == 1.4.*- , tasty >= 0.11 && < 1.2- , tasty-hunit == 0.9.*- , tasty-travis >= 0.2 && < 0.3- , template-haskell- , validated-literals--Source-Repository head- Type: mercurial- Location: https://bitbucket.org/merijnv/validated-literals--Source-Repository head- Type: git+Name: validated-literals +Version: 0.3.0 +x-revision: 1 + +Homepage: https://github.com/merijn/validated-literals +Bug-Reports: https://github.com/merijn/validated-literals/issues + +Author: Merijn Verstraaten +Maintainer: Merijn Verstraaten <merijn@inconsistent.nl> +Copyright: Copyright © 2015-2019 Merijn Verstraaten + +License: BSD3 +License-File: LICENSE + +Category: Data +Cabal-Version: >= 1.10 +Build-Type: Simple +Tested-With: GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5, + GHC == 8.8.1 + +Synopsis: Compile-time checking for partial smart-constructors + +Description: + To disallow invalid input it is common to define (new)types with hidden + data constructors. Forcing the user to go through a smart-constructor that + enforces invariants and returns @Maybe ResultType@, preventing the + construction of data with invalid values. + . + However, it is __also__ common to want to include literal values of such + types in source text. Things of textual literals for HTML, HTTP, etc. + In such cases smart-constructors force us to handle potential conversion + failures at runtime, or abusing functions like @fromJust@ to break away all + the safety smart-constructors provide. All this despite the fact that we + can statically know at compile time that the conversion will always succeed + or always fails. + . + This package provides a typeclasses for using TH to validate the + correctness of provided literals at compile. This lets you define, e.g., + @newtype Even = Even Integer@ and write: + . + @ + x :: Even + x = $$(valid 38) + @ + . + This will check, at compile time, that the provided @Integer@ is, in fact, + even and unwrap it from @Maybe@, avoiding the runtime check. + +Extra-Source-Files: README.md, CHANGELOG.md + +Library + Default-Language: Haskell2010 + GHC-Options: -Wall + + Other-Extensions: DefaultSignatures, FlexibleContexts, + MultiParamTypeClasses, ScopedTypeVariables, + TemplateHaskell + + Exposed-Modules: ValidLiterals + + Build-Depends: base >= 4.9 && < 4.14 + , template-haskell + +Test-Suite examples + Default-Language: Haskell2010 + Type: exitcode-stdio-1.0 + Main-Is: Examples.hs + Other-Modules: ByteString + Even + + GHC-Options: -Wall -fno-warn-unused-do-bind + Other-Extensions: DeriveGeneric, DeriveLift, FlexibleInstances, + MultiParamTypeClasses, TemplateHaskell + Hs-Source-Dirs: examples + Build-Depends: base + , bytestring == 0.10.* + , deepseq == 1.4.* + , tasty >= 0.11 && < 1.3 + , tasty-hunit >= 0.9 && < 0.11 + , tasty-travis >= 0.2 && < 0.3 + , template-haskell + , validated-literals + +Source-Repository head + Type: mercurial + Location: https://bitbucket.org/merijnv/validated-literals + +Source-Repository head + Type: git Location: git+ssh://github.com:merijn/validated-literals
revision 2
Name: validated-literals Version: 0.3.0 -x-revision: 1 +X-Revision: 2 Homepage: https://github.com/merijn/validated-literals Bug-Reports: https://github.com/merijn/validated-literals/issues Author: Merijn Verstraaten Maintainer: Merijn Verstraaten <merijn@inconsistent.nl> -Copyright: Copyright © 2015-2019 Merijn Verstraaten +Copyright: Copyright © 2015-2020 Merijn Verstraaten License: BSD3 License-File: LICENSE Cabal-Version: >= 1.10 Build-Type: Simple Tested-With: GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5, - GHC == 8.8.1 + GHC == 8.8.4, GHC == 8.10.2 Synopsis: Compile-time checking for partial smart-constructors Exposed-Modules: ValidLiterals - Build-Depends: base >= 4.9 && < 4.14 + Build-Depends: base >= 4.9 && < 4.15 , template-haskell Test-Suite examples MultiParamTypeClasses, TemplateHaskell Hs-Source-Dirs: examples Build-Depends: base - , bytestring == 0.10.* + , bytestring >= 0.10 && < 0.12 , deepseq == 1.4.* - , tasty >= 0.11 && < 1.3 + , tasty >= 0.11 && < 1.4 , tasty-hunit >= 0.9 && < 0.11 , tasty-travis >= 0.2 && < 0.3 , template-haskell , validated-literals - -Source-Repository head - Type: mercurial - Location: https://bitbucket.org/merijnv/validated-literals Source-Repository head Type: git
revision 3
Name: validated-literals Version: 0.3.0 -X-Revision: 2 +x-revision: 3 Homepage: https://github.com/merijn/validated-literals Bug-Reports: https://github.com/merijn/validated-literals/issues Exposed-Modules: ValidLiterals Build-Depends: base >= 4.9 && < 4.15 - , template-haskell + , template-haskell >= 2.11 && < 2.17 Test-Suite examples Default-Language: Haskell2010 , tasty >= 0.11 && < 1.4 , tasty-hunit >= 0.9 && < 0.11 , tasty-travis >= 0.2 && < 0.3 - , template-haskell + , template-haskell >= 2.11 && < 2.17 , validated-literals Source-Repository head Type: git - Location: git+ssh://github.com:merijn/validated-literals+ Location: git+ssh://github.com:merijn/validated-literals
revision 4
Name: validated-literals Version: 0.3.0 -x-revision: 3 +X-Revision: 4 Homepage: https://github.com/merijn/validated-literals Bug-Reports: https://github.com/merijn/validated-literals/issues Build-Depends: base , bytestring >= 0.10 && < 0.12 , deepseq == 1.4.* - , tasty >= 0.11 && < 1.4 + , tasty >= 0.11 && < 1.5 , tasty-hunit >= 0.9 && < 0.11 , tasty-travis >= 0.2 && < 0.3 , template-haskell >= 2.11 && < 2.17