Releases: amazon-ion/ion-java
v1.11.9-ion-11-rc3
Preview release with support for writing and reading Ion 1.1 data in binary and text. Mutually intelligible with ion-rust v1.0.0-rc.10.
Ion 1.1 draft specification: https://amazon-ion.github.io/ion-docs/books/ion-1-1/
Certain features are not yet fully implemented. Such features include:
- Tagless encodings
- Macro-shaped parameters
- Module imports
Full Changelog: v1.11.9-ion-11-rc2...v1.11.9-ion-11-rc3
v1.11.9-ion-11-rc2
Preview release with support for writing and reading Ion 1.1 data in binary.
v1.11.9
What's Changed
- Fixes handling of annotation wrapper length overflows. (#908)
- Restores float <-> decimal conversions in the binary reader. (#905)
- Addresses an ion-test-driver failure by upgrading pip with setup-python action. (#875)
- Removes some unused code. (#858)
- Sets Java toolchain for the spotbugs task. (#863)
Note
This release does not include all commits present on the master
branch at the time of release. The following commits are excluded from 1.11.9 and will be included in a future release:
- Adds support for writing binary Ion 1.1 null, bool, int, and float binary encoding. (#612)
- Adds support for writing binary Ion 1.1 timestamps. (#618)
- Adds support for writing binary Ion 1.1 decimal binary encoding. (#636)
- Adds support for writing binary Ion 1.1 text and lob types and some annotations. (#637)
- Removes more unused code. (#864)
Full Changelog: v1.11.8...v1.11.9
v1.11.8
What's Changed
- Implements patch list as a single contiguous array of reusable PatchPoint instances. (#521)
- Remove the repeated logic of the method that overwrites the lower nibble of container type descriptor. (#548)
- Enable auto-flush and configurable block size in the binary writer. (#650, #651)
- Set Java toolchain for gradle build and fix Sonatype URL (#818 )
- Ensures that encountering an incomplete binary IVM causes clean failure.
- Fixes a bug that prevented seeking to a span created from a different reader in a stream with a large number of symbols.
- Revert "Change IonSystemBuilder's default charset to UTF-8 (#802)
Note
This release does not include all commits present on the master
branch at the time of release. The following commits are excluded from 1.11.8 and will be included in a future release:
- Adds support for writing binary Ion 1.1 null, bool, int, and float binary encoding. (#612)
- Adds support for writing binary Ion 1.1 timestamps. (#618)
- Adds support for writing binary Ion 1.1 decimal binary encoding. (#636)
- Adds support for writing binary Ion 1.1 text and lob types and some annotations. (#637)
Full Changelog: v1.11.7...v1.11.8
v1.11.7
What's Changed
- Improves the automated release workflow. #812
Note
This release does not include all commits present on the master
branch at the time of release. The following commits are excluded from 1.11.7 and will be included in a future release:
- Implements patch list as a single contiguous array of reusable PatchPoint instances. (#521)
- Remove the repeated logic of the method that overwrites the lower nibble of container type descriptor. (#548)
- Adds support for writing binary Ion 1.1 null, bool, int, and float binary encoding. (#612)
- Adds support for writing binary Ion 1.1 timestamps. (#618)
- Adds support for writing binary Ion 1.1 decimal binary encoding. (#636)
- Adds support for writing binary Ion 1.1 text and lob types and some annotations. (#637)
- Enable auto-flush and configurable block size in the binary writer. (#650, #651)
Full Changelog: v1.11.6...v1.11.7
v1.11.6
What's Changed
- Updates publish-release-artifacts.yml to enable auto-publishing. #811
Note
This release does not include all commits present on the master
branch at the time of release. The following commits are excluded from 1.11.5 and will be included in a future release:
- Implements patch list as a single contiguous array of reusable PatchPoint instances. (#521)
- Remove the repeated logic of the method that overwrites the lower nibble of container type descriptor. (#548)
- Adds support for writing binary Ion 1.1 null, bool, int, and float binary encoding. (#612)
- Adds support for writing binary Ion 1.1 timestamps. (#618)
- Adds support for writing binary Ion 1.1 decimal binary encoding. (#636)
- Adds support for writing binary Ion 1.1 text and lob types and some annotations. (#637)
- Enable auto-flush and configurable block size in the binary writer. (#650, #651)
Full Changelog: v1.11.5...v1.11.6
v1.11.5
What's Changed
- Adds recommendation to use IonElement. #772
- Adds a check for overflow when reading VarUInts. #773
- Allows custom writer configurations in IonSystemBuilder. #781
- Adds a configurable limit to the number of timestamp fractional second digits that are written to text representations. #784
- Ensures that the cursor's value marker is fully reset between values. #787
- Adds check for license headers and unused imports. #789
- Adds testing of IonValue's multithreaded contract over the 'good' ion-tests files. #769
- Makes AbstractIonWriter.writeValues iterative. #790
- Adds more multithreaded access testing to StructTest. #767
- Changes IonSystemBuilder's default charset to UTF-8. #802
- Uses CodeBuild-hosted runners for perf testing and automated publishing. #801
- Ensures that using a cursor after close has no effect. #803
- Various updates to build dependencies.
Note
This release does not include all commits present on the master
branch at the time of release. The following commits are excluded from 1.11.5 and will be included in a future release:
- Implements patch list as a single contiguous array of reusable PatchPoint instances. (#521)
- Remove the repeated logic of the method that overwrites the lower nibble of container type descriptor. (#548)
- Adds support for writing binary Ion 1.1 null, bool, int, and float binary encoding. (#612)
- Adds support for writing binary Ion 1.1 timestamps. (#618)
- Adds support for writing binary Ion 1.1 decimal binary encoding. (#636)
- Adds support for writing binary Ion 1.1 text and lob types and some annotations. (#637)
- Enable auto-flush and configurable block size in the binary writer. (#650, #651)
Full Changelog: v1.11.4...v1.11.5
v1.11.4
What's Changed
- Removes the binary reader's SymbolToken cache, which provided a minor optimization for certain cases but a major regression for others. (#756)
Note
This release does not include all commits present on the master
branch at the time of release. The following commits are excluded from 1.11.4 and will be included in a future release:
- Implements patch list as a single contiguous array of reusable PatchPoint instances. (#521)
- Remove the repeated logic of the method that overwrites the lower nibble of container type descriptor. (#548)
- Adds support for writing binary Ion 1.1 null, bool, int, and float binary encoding. (#612)
- Adds support for writing binary Ion 1.1 timestamps. (#618)
- Adds support for writing binary Ion 1.1 decimal binary encoding. (#636)
- Adds support for writing binary Ion 1.1 text and lob types and some annotations. (#637)
- Enable auto-flush and configurable block size in the binary writer. (#650, #651)
Full Changelog: v1.11.3...v1.11.4
v1.11.3
What's Changed
- Fixes a bug that made concurrent access of a large nested IonStruct unsafe when only its parent had been made read-only. (#722)
Note
This release does not include all commits present on the master
branch at the time of release. The following commits are excluded from 1.11.3 and will be included in a future release:
- Implements patch list as a single contiguous array of reusable PatchPoint instances. (#521)
- Remove the repeated logic of the method that overwrites the lower nibble of container type descriptor. (#548)
- Adds support for writing binary Ion 1.1 null, bool, int, and float binary encoding. (#612)
- Adds support for writing binary Ion 1.1 timestamps. (#618)
- Adds support for writing binary Ion 1.1 decimal binary encoding. (#636)
- Adds support for writing binary Ion 1.1 text and lob types and some annotations. (#637)
- Enable auto-flush and configurable block size in the binary writer. (#650, #651)
Full Changelog: v1.11.2...v1.11.3
v1.11.2
What's Changed
- Removes assertions in
IonReaderSystemTextX.stringValue()
. (#703) - Adds a
_Private_IonConstants.ARRAY_MAXIMUM_SIZE
. (#708) - Fixes a bug that allowed
NegativeArraySizeException
to be thrown fromIonReader.newBytes()
. (#705) - Allows the text reader to fail cleanly when the user attempts to recover after catching
IonException
, but recovery is not possible. (#709) - Fixes a bug that caused the binary reader not to fail cleanly when parsing incomplete containers in certain cases. (#710)
Note
This release does not include all commits present on the master
branch at the time of release. The following commits are excluded from 1.11.2 and will be included in a future release:
- Implements patch list as a single contiguous array of reusable PatchPoint instances. (#521)
- Remove the repeated logic of the method that overwrites the lower nibble of container type descriptor. (#548)
- Adds support for writing binary Ion 1.1 null, bool, int, and float binary encoding. (#612)
- Adds support for writing binary Ion 1.1 timestamps. (#618)
- Adds support for writing binary Ion 1.1 decimal binary encoding. (#636)
- Adds support for writing binary Ion 1.1 text and lob types and some annotations. (#637)
- Enable auto-flush and configurable block size in the binary writer. (#650, #651)
Full Changelog: v1.11.1...v1.11.2