Skip to content

Releases: Kale-Ko/BJSL

2.1.1

02 Jan 02:48
3d416d8
Compare
Choose a tag to compare

A few more internal changes

2.1.0

02 Jan 02:15
452d103
Compare
Choose a tag to compare

The project now uses JDK 21.

Added ParsedElement#to{Type}() as well as ParsedElement#to(primitiveType) for converting primitive values even if they are not the exact correct type.
Added ParsedArray#addAll(ParsedElement...)

Parser is now an interface and not an abstract class, JacksonParser is still an abstract class.

Possible speed ups for parsing and processing.

Added some missing javadocs in DefaultTypeProcessors for the different Options enums.
Fixed a bunch of javadocs.

2.0.1 / 2.0.2

21 Dec 09:18
2.0.2
441c840
Compare
Choose a tag to compare

Dependency updates.

2.0.0

02 Dec 08:04
dca3917
Compare
Choose a tag to compare

We finally have a proper readme!

You can now use anything* as a Map key!

A few small speed ups.

Separated out the Parser interface from JacksonParser for better api usability.

Added @ExpectGreaterThan and @ExpectLessThan for checking bounds.

Moved default type processors to their own class (DefaultTypeProcessors) so they can be enabled and disabled individually.
Added options to default type processors (ObjectProcessor.Builder#setDefaultTypeProcessorsOptions).
UUIDs can be represented as Strings, Byte Arrays, Short Arrays, Integer Arrays, Long Arrays, or BigIntegers.
InetAddresses and InetSocketAddresses can be represented as Strings or BigIntegers.
Dates, Calendars, and Instants can be represented as Strings in a specified format or BigIntegers.
Note: The old and new Date and Calendar formats are incompatible, there is also a slight difference between the old and new Instant implementation, it will no longer accept a number encoded as a String.

Removed XmlParser, TomlParser, PropertiesParser, and CsvParser as they never really worked.
ParsingException is now ParserException.
DontSerialize is now NeverSerialize, no behavior change.
Removed @Default.

Addded ParsedObject#getOrNull and ParsedArray#getOrNull.

ignoreNulls now properly only effects maps and objects and ignoreArrayNulls now properly only effects lists and arrays
ignoreArrayNulls is now false by default.

Allow 0 tab width for JsonParser to remove line breaks.
Fixed trailing spaces in JsonParser output.
Fixed YamlParser ignoring indentLevel and crlf.

Added missing JavaDocs for @Expects.
Updated and fixed some JavaDocs.
Changed some javadoc generation options.
Source is now included in JavaDocs.
JavaDocs now link to external JavaDocs for used libraries.

There is now an option to allow non-static member classes to be initialized by also initializing their parent, see InitializationUtil.

* Map keys must be translated to a ParsedPrimitive type. This can be done using TypeProcessors, just output some type of ParsedPrimitive. This is already done for all default types.

1.13.0 / 1.13.1

17 Oct 19:02
aef0a8e
Compare
Choose a tag to compare

Updated Jackson

Fixed some issues with the pom.xml

1.12.0 / 1.12.1

03 Sep 04:14
6bd34cc
Compare
Choose a tag to compare

Use new shade plugin
Everything should function the same

1.11.1

29 Aug 00:55
26dabad
Compare
Choose a tag to compare

Remove usages of sun.misc.Unsafe.
As consequence of this a default zero-arg constructor is now required on all objects (Defining no constructor should do the trick as well).

1.11.0

28 Aug 23:47
5ad8e9f
Compare
Choose a tag to compare

Add a new expectations system.

Currently the only added expectations are @ExpectNotNull and @ExpectIsNull.
Upon a failed expectation an ExpectationFailedException is thrown with the failed condition and variable.

1.10.8

17 Aug 21:54
c26d537
Compare
Choose a tag to compare

Updated dependencies (gradle, jackson)
Fixed a confusing @Nullable annotation

1.10.7

01 Jun 07:15
e8823f0
Compare
Choose a tag to compare

Updated dependencies (gradle, jackson)