Skip to main content
Version: Latest (Core: 0.57.x, Azure: 0.43.x)

non-breaking-versioning

Full name
@azure-tools/typespec-azure-core/non-breaking-versioning

Verify that only backward compatible changes are made to the API.

❌ Incorrect

  • Removed
model Foo {
@removed(Versions.v2024_01_01)
bar: string;
}
  • Renamed
model Foo {
@renamedFrom(Versions.v2024_01_01, "baz")
bar: string;
}
  • Added required property
model Foo {
@added(Versions.v2024_01_01)
bar: string;
}
  • Made optional without default
model Foo {
@madeOptional(Versions.v2024_01_01)
bar: string;
}

✅ Correct

  • Adding new type
@added(Versions.v2024_01_01)
model Foo {}
  • Adding operation
@added(Versions.v2024_01_01)
op foo(): Foo;
  • Adding optional property
model Foo {
@added(Versions.v2024_01_01)
bar?: string;
}