Skip to content

Releases: amazon-ion/ion-java

v1.12.0

Choose a tag to compare

@github-actions github-actions released this 24 Jun 19:10
fb91868

What's Changed

  • Document symmetry-breaking equals. (#1122)
  • Bump github/codeql-action from 4.30.8 to 4.30.9. (#1131)
  • Bump the github-action-dependencies. (#1135)
  • Bump github/codeql-action from 4.31.0 to 4.31.2. (#1139)
  • Bump the github-action-dependencies. (#1144)
  • Fixes a binary write corruption bug introduced in 1.11.11. (#1150)
  • Fix missing benchmark comparison in GitHub step summary. (#1154)
  • Grow reader buffer incrementally and add GZIP opt-out. (#1153)
  • Optimize text read hot paths (+18.1% aggregate JMH). (#1151)
  • Improves IonContainer hashCode performance by ~30%. (#1156)

New Contributors

Full Changelog: v1.11.11...v1.12.0

v1.11.11

Choose a tag to compare

@Shaurya0108 Shaurya0108 released this 15 Oct 23:08
5ea40ff

What's Changed

  • Copies changes from ion-11-encoding branch that are not specific to Ion 1.1. (#1096)
  • Resurrect copy optimization. (#1093)
  • Shortens AbstractIonWriter.writeValues, allowing the JIT to optimize it more efficiently, improving performance by up to 12%. (#1094)
  • Specify that OversizedSymbolTableHandler is required for limited buffers. (#1098)
  • Improve write performance in some cases by managing PatchPoints and containers directly in writer. (#1101)
  • Fixes IonReader.getIntegerSize() calculation. (#1055)

Full Changelog: v1.11.0...v1.11.11

v1.11.10

Choose a tag to compare

@tgregg tgregg released this 24 Jan 00:44

What's Changed

  • Adds checks for annotation wrappers with length 0. (#920)
  • Adds checks for timestamp values with length 0. (#921)
  • Optimizes IonValue.getType() to avoid vtable/itable lookups when invoked on IonStruct values. (#928)
  • Adds an InputStreamInterceptor interface to allow users to plug in custom interceptors for formats like Zstd. (#930)

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.9...v1.11.10

v1.11.9-ion-11-rc3

v1.11.9-ion-11-rc3 Pre-release
Pre-release

Choose a tag to compare

@tgregg tgregg released this 13 Dec 22:04

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

v1.11.9-ion-11-rc2 Pre-release
Pre-release

Choose a tag to compare

@tgregg tgregg released this 09 Sep 04:46

Preview release with support for writing and reading Ion 1.1 data in binary.

v1.11.9

Choose a tag to compare

@tgregg tgregg released this 12 Jul 22:49

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

Choose a tag to compare

@linlin-s linlin-s released this 11 May 20:09

What's Changed

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

Choose a tag to compare

@tgregg tgregg released this 24 Apr 19:47

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

Choose a tag to compare

@tgregg tgregg released this 23 Apr 23:23

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

Choose a tag to compare

@tgregg tgregg released this 23 Apr 22:09

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