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:
JsonConvertersoptionencodeDecodeUristo 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
@Transientfields. - New: Conversion option
doNotWriteNullsfor 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
escapeUnicodeoption toJsonWriterto disable Unicode escaping. - Chg:
JsonConverters.toJsonVal()now has a defaultfantomTypeparam. - Chg: Converting from JSON to Obj now allows objs (e.g. Maps) to pass though.
- Bug:
Json.prettyPrint()didn't do pretty unlesstruewas passed as an option.
v2.0.10
- New:
JsonConverters.normaliseKeyNamesFn()now also normalisessnake_casenames. - Chg: Deprecated
JsonConverters.normaliseDotNetKeyNamesin favour of the more genericnormaliseKeyNamesFn.
v2.0.8
- New: Support for dynamic typing via
_typefields.
v2.0.6
- Bug: Could not convert Lists with
nullvalues - added workaround to the Nullable Generic Lists Fantom bug.
v2.0.4
- New:
serializableModefor when you just want to pickle your objects - see this Fantom defect for details. - Chg:
JsonConverterCtxis now passed toJsonPropertyCacheto give more context to subclasses. - Chg: Allow null
fantomTypein 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
DateandDateTimewith customisable locale formatting. - Chg: Made
JsonPropertyDatamore 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
fieldValsparameter toObjConverter.surplusJson(...)
v0.0.4
- New: Methods may also be annotated with
@JsonProperty. - New:
JsonWriternow 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
@NoDocfor now. - Chg: Fields declared as
Objmay capture any obj. - Bug: Numbers weren't converted to their correct sub-type.
v0.0.2
- New: Initial release.