tomland v1.3.0.0 Release Notes
Release Date: 2020-05-19 // almost 4 years ago-
- #253: Support GHC-8.10.1. Move to GHC-8.8.3 from 8.8.1.
- ⬇️ Drop support of GHC-8.2.2.
- #271:
Use
Validation
fromvalidation-selective
inTomlEnv
. This allows to accumulate and display all errors that occurs during the decoding phase. All previous decode functions return list of allTomlDecodeError
s.
Note: Due to the specific of
Validation
data type, there is noMonad
instanse ofCodec
anymore. However, this doesn't limit any previously released features.- ➕ Add
decodeValidation
,decodeFileValidation
functions to returnValidation
instead ofEither
. - #263:
Simplify
Codec
abstraction. Instead of havingCodec r w c a
now it isCodec TomlEnv TomlState c a
.
Remove
BiCodec
as it is simpleTomlCodec
with this change.Migration guide: If you use
Toml
module (as advised by the library) then no changes required in your code. If you import some particular modules fromtomland
here is the renaming scheme you can use to apply to your imports:| Old | New | |-----|-----| |
Toml.Bi
|Toml.Codec
| |Toml.Bi.Combinators
|Toml.Codec.Combinator
| |Toml.Bi.Monad
|Toml.Codec.Types
| |Toml.Bi.Code
|Toml.Codec.Code
orToml.Codec.Types
orToml.Codec.Error
| |Toml.Bi.Map
|Toml.Codec.BiMap
orToml.Codec.BiMap.Conversion
| |Toml.Generic
|Toml.Codec.Generic
| |Toml.Edsl
|Toml.Type.Edsl
| |Toml.Printer
|Toml.Type.Printer
| |Toml.PrefixTree
|Toml.Type.PrefixTree
orToml.Type.Key
|- #283:
Documentation improvements:
- Add Codec Tables to each kind of codecs with examples
- Add high-level description to each reexported module
- Add @since annotations
- Improve README
- Add more examples into functions
- #237:
Add
BiMap
_Validate
and codecsvalidate
andvalidateIf
for custom validation. - #289:
Add
_Coerce
TomlBiMap
. - #270:
Add
pair
andtriple
codecs for tuples. - #261:
Implement
tableMap
codec to use TOML keys asMap
keys. - #243:
Implement
hashMap
,tableHashMap
,intMap
,tableIntMap
codec combinators. - ➕ Add
intSet
codec. - ➕ Add
_KeyInt
BiMap
for key-as-int approach. - #242:
Add
HasCodec
instances forMap
,HashMap
andIntMap
forGeneric
deriving. - #272:
Add
TomlTable
newtype to be used in genericDerivingVia
. - #251:
Implement
ByteStringAsText
,ByteStringAsBytes
,LByteStringAsText
,LByteStringAsBytes
newtypes. Add correspondingHasCodec
instances for these data types. - #311:
Reimplement custom
TomlState
instead of usingMaybeT
andState
. - 👀 Rename
ParseException
toTomlParseError
. - 📇 Rename
DecodeException
toTomlDecodeError
. - ➕ Add
TableArrayNotFound
constructor toTomlDecodeError
. - ✂ Remove
TrivialError
andTypeMismatch
constructors of theTomlDecodeError
type. - #313:
Store
Key
in theBiMapError
constructor ofTomlDecodeError
. - ➕ Add
decodeFileEither
andencodeToFile
functions. - 🛠 Fix
sum
andproduct
behaviour on missing fields. Now it returns the wrapper ofmempty
instead of failure. - #302:
nonEmpty
codec throwsTableArrayNotFound
instead ofTableNotFound
. - #318:
Export a function for parsing TOML keys
parseKey
. - #310:
Add tests on all kinds of
TomlDecodeError
withdecode
function. - #218: Add tests for TOML validation.
- #252:
Move to
hspec-*
family of libraries fromtasty-*
. - #297: Tests parallelism and speed-up.
- #246:
Bump up
megaparsec
version to8.0.0
.