Skip to content

Release 1.1.0

Compare
Choose a tag to compare
@pbcornell pbcornell released this 14 Jul 21:26
· 125 commits to master since this release

This release includes the following enhancements:

  • adds Schema.isl and Type.isl, enabling access to the ISL underlying Schema and top-level Type objects (#143)
  • enables custom schema caching logic (#144) via a new SchemaCache interface, SchemaCacheDefault implementation, and IonSchemaSystemBuilder.withSchemaCache(SchemaCache) method
  • adds support in the regex constraint for compound character classes such as [A-Za-z0-9] (#147)
  • adds Schema.getImports(), Schema.getImport(String), and a new Import interface to allow retrieval of the types imported by a schema (#148)
  • provides graceful handling of redundant imports (#149); if schema A imports schemas B and C, which both import the same type from schema D, this is no longer results in an exception

Additionally, the following bugs have been fixed:

  • Schema objects are now cached successfully (#141)
  • AuthorityFilesystem now restricts file access to be within the specified basePath only (#142)
  • all top-level type definitions are now required to have a name (#145)
    • IonSchemaSystemBuilder.allowAnonymousTopLevelTypes() may be used if the previous behavior is helpful until existing anonymous top-level type definitions are named (or removed)

Full list of changes: v1.0.1...v1.1.0