Skip to content

YOJ 2.8.0 (Schema API Cleanup)

Choose a tag to compare

@nvamelichev nvamelichev released this 05 Feb 19:31
· 11 commits to main since this release

Breaking API Changes

APIs Permanently Removed

  • Schema.getName() (EntitySchema.getName() remains)

API Removals Rescheduled to 2.9.0

  • InMemoryTable.DbMemory
  • InMemoryRepositoryTransaction.getMemory(Class)

API Improvements

  • YdbDataCompatibilityChecker supports multi-table entities (can now take a list of TableDescriptors, not entity classes)
  • New @Table annotation attribute to require explicit table name specification on every table usage: @Table(explicitDescriptor = true|false)
    • Prohibits calls to EntitySchema.getName() because such an entity has no default table name
    • Requires BaseDb.table(TableDescriptor) instead of BaseDb.table(<entity class>) which implicitly deduces table name from schema
    • Requires new TableDescriptor(<entity class>, "<table name>") instead of TableDescriptor.from(<entity class>) which implicitly deduces table name from schema