Skip to content

v1.6.0

Compare
Choose a tag to compare
@popematt popematt released this 07 Jun 19:42
404edb6

Quick Hits

  • Adds a model for Ion Schema that can be used for programmatically introspecting, constructing, or otherwise manipulating schemas and type definitions. This model is currently marked as experimental and subject to potentially breaking changes. This release includes reader/deserializer for Ion Schema 2.0, and a writer/serializer is to come in a future release.
  • Adds CLI tool for fixing transitive imports—see the launch announcement for details
  • The schema_footer is now optional regardless of whether or not a schema_header is present, and can be used to delimit the end of a schema document in a larger stream of Ion.
  • Adds ISL Commons—an Ion Schema library containing type definitions for things that are common to other programming languages. It includes types such as uint8, int32, float32, date. See also amazon-ion/ion-schema-schemas#13.

What's Changed

  • Adds ISL model by @popematt in #251
  • Refactor ValidateCommand to allow re-use of CLI options by @popematt in #253
  • Adds the framework pieces for an Ion Schema reader that uses the ISL model by @popematt in #252
  • Updates the model by @popematt in #255
  • Adds readers for field_names, ieee754_float, and regex by @popematt in #257
  • Adds CLI tool for fixing transitive imports by @popematt in #254
  • Adds impl of IonSchemaReaderV2_0 and ion-schema-tests for readers by @popematt in #259
  • Upgrade to Gradle 8 and use kover for code coverage by @popematt in #261
  • Adds readers for exponent, precision, and __length constraints by @popematt in #258
  • Adds readers for element and logic constraints by @popematt in #260
  • Adds readers for ordered_elements and fields constraints by @popematt in #263
  • Adds reader for valid_values by @popematt in #265
  • Adds reader for timestamp_offset and timestamp_precision by @popematt in #266
  • Make schema_footer optional by @popematt in #268
  • Add readers for annotations and contains constraints by @popematt in #267
  • Adds readers for schema headers and footers by @popematt in #271
  • Fixes the way TimestampPrecisionValue is modeled by @popematt in #272
  • Adds changes to read full schema document by @popematt in #273
  • Ease-of-use improvements for ISL model by @popematt in #274
  • Moves ion-schema-schemas to resource directory and updates to latest commit by @popematt in #275
  • Release v1.6.0 by @popematt in #276

Full Changelog: v1.5.1...v1.6.0