safe-json: Automatic JSON format versioning

[ json, library, mit ] [ Propose Tags ]

This library aims to make the updating of JSON formats or contents, while keeping backward compatibility, as painless as possible. The way this is achieved is through versioning and defined migration functions to migrate older (or newer) versions to the one used.

The library mainly consists of two classes:

  • SafeJSON a: Defines the version of a and if (and how) it is migratable.

  • Migrate a: Defines the data type (MigrateFrom a) that can be migrated to a and how to migrate from that type.

Using these two classes, JSON serialized data types will stay parsable, even after format changes.

For a more in-depth explanation and examples, please see the README at https://github.com/Vlix/safe-json#readme


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0, 1.0.0, 1.1.0, 1.1.1, 1.1.1.1, 1.1.2.0, 1.1.3.0, 1.1.3.1, 1.1.4.0, 1.2.0.0, 1.2.0.1
Change log ChangeLog.md
Dependencies aeson (>=1.4.1 && <2.1), base (>=4.9 && <5), bytestring (>=0.10.8.1 && <0.12), containers (>=0.5.7.1 && <0.7), dlist (>=0.8.0.3 && <2), hashable (>=1.2.6.1 && <1.5), scientific (>=0.3.5.2 && <0.4), tasty (>=0.11.3 && <1.5), tasty-hunit (>=0.9.2 && <0.11), tasty-quickcheck (>=0.8.4 && <0.11), text (>=1.2.3 && <2.1), time (>=1.6.0.1 && <1.10), unordered-containers (>=0.2.9 && <0.3), uuid-types (>=1.0.3 && <1.1), vector (>=0.12.0.1 && <0.13) [details]
License MIT
Copyright 2019 Felix Paulusma
Author Felix Paulusma
Maintainer felix.paulusma@gmail.com
Category JSON
Home page https://github.com/Vlix/safe-json#readme
Bug tracker https://github.com/Vlix/safe-json/issues
Source repo head: git clone https://github.com/Vlix/safe-json
Uploaded by nideco at 2022-03-09T01:44:43Z
Distributions LTSHaskell:1.2.0.1, NixOS:1.2.0.1, Stackage:1.2.0.1
Downloads 2526 total (42 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2022-03-09 [all 1 reports]

Readme for safe-json-1.1.3.0

[back to package description]
Please see README at https://github.com/Vlix/safe-json#readme