JSON Extractor NG v0.3.0
Pre-releaseThis is the third release of a custom, Scala reflection based extractor for Lift JSON's AST.
If you're not super familiar with Lift JSON, extraction is the point at which we take an AST, which is simply a dumb representation of JSON in memory, and turn it into a concrete Scala class (String, class of your choosing, etc). The code we currently use for extraction in Lift JSON relies on Java reflection and the Scala compiler library. This implementation, by contrast, uses Scala reflection and provides a much cleaner implementation for the same functionality.
Improvements in this release
- Custom deserializers will now work with
JValues other thanJObject(#3) - Cross built for Lift 3.1 and Lift 3.2
Using JSON Extractor NG
This module is a bit special because it's pretty strict on its requirements. Specifically, it requires:
- Lift 3.1.x or 3.2.x
- Scala 2.12.4
It is available as a Lift module on Maven Central. You can include it in your project by adding the following to your build file for Lift 3.1:
libraryDependencies += "net.liftmodules" %% "json-extractor-ng_3.1" % "0.3.0"... and the following for Lift 3.2:
libraryDependencies += "net.liftmodules" %% "json-extractor-ng_3.2" % "0.3.0"Try it out, let me know what you think, and file issues for any bugs you find!