JsonRelease Notes
v2.0
Re-written to be simplier, yet even more powerful!
v2.0.16
- New: URIs are converted via
Uri.encode()
andUri.decode()
. - New:
JsonConverters
optionencodeDecodeUris
to turn off the new URI behaviour. - New: Errs thrown during conversion are re-thrown with a stack of conversion context.
v2.0.14
- New: PickleMode to serialise all fields of an class, except for
@Transient
fields. - New: Conversion option
doNotWriteNulls
for omitting null values when writing object properties. - Chg: Docs no longer cause warnings in SkySpark and FinStack.
- Chg: Exposed
JsonConvertersCtx.converters
. - Chg: Removed the
afJson.
prefix for converter option keys. - Chg:
JsonWriter.writeJsonToStream()
now returns the givenOutStream
.
v2.0.12
- New:
toJsonArray()
andfromJsonArray()
inJsonConverters
. - New: Added
escapeUnicode
option toJsonWriter
to disable Unicode escaping. - Chg:
JsonConverters.toJsonVal()
now has a defaultfantomType
param. - Chg: Converting from JSON to Obj now allows objs (e.g. Maps) to pass though.
- Bug:
Json.prettyPrint()
didn't do pretty unlesstrue
was passed as an option.
v2.0.10
- New:
JsonConverters.normaliseKeyNamesFn()
now also normalisessnake_case
names. - Chg: Deprecated
JsonConverters.normaliseDotNetKeyNames
in favour of the more genericnormaliseKeyNamesFn
.
v2.0.8
- New: Support for dynamic typing via
_type
fields.
v2.0.6
- Bug: Could not convert Lists with
null
values - added workaround to the Nullable Generic Lists Fantom bug.
v2.0.4
- New:
serializableMode
for when you just want to pickle your objects - see this Fantom defect for details. - Chg:
JsonConverterCtx
is now passed toJsonPropertyCache
to give more context to subclasses. - Chg: Allow null
fantomType
in JsonConverter methods, for convenience. - Bug: Maps and Lists could not be de-serialised into const fields (in non-const objects).
- Bug:
to/fromJson()
methods would only convert Maps / JSON Objects.
v2.0.2
- New: Bespoke converters for
Date
andDateTime
with customisable locale formatting. - Chg: Made
JsonPropertyData
more extensible. - Chg: Optimised some conversion code.
v2.0.0
- New: Re-written.
- New: Now a SkySpark extension.
v1.0
v1.0.2
- Chg: Simplified List / Map -> toFantom conversion.
- Chg: Converted lists and maps are always duplicated, even if they require no conversion
- Bug:
PrettyPrintOptions.toStr()
printed wrongmaxWidth
.
v1.0.0
- Chg: Added
fieldVals
parameter toObjConverter.surplusJson(...)
v0.0.4
- New: Methods may also be annotated with
@JsonProperty
. - New:
JsonWriter
now pretty prints! - Chg: Renamed everything! Well, pretty much all of the main methods. (Breaking change.)
- Chg: Added lots of hooks to
ObjInspector
. - Chg: Made more inspectors and converters public, but they're all
@NoDoc
for now. - Chg: Fields declared as
Obj
may capture any obj. - Bug: Numbers weren't converted to their correct sub-type.
v0.0.2
- New: Initial release.