Skip to content

December 2022

Release Notes December 2022 (2022-12-07)

See TypeSpec Core release notes

Breaking change

See TypeSpec Core breaking changes in release notes

TypeSpec > @azure-tools/typespec-azure-core - change in handling of extensible enums

All Azure emitters (DPG, Autorest) will migrate to treating raw TypeSpec enums as extensible, without using the @knownValues decorator. Azure emitters that want to suppress this behavior and model raw enums as closed must use the new @fixed decorator.

typespec-azure-core becomes more strict on camelCase/PascalCase check

  • PascalCase must be applied to model/interface/namespace name
  • camelCase must be applied to property name
  • To customize query/header/query parameter name on the wire, set in @query, @header or @path decorator arguments, for example:
model ContentTypeParameter{
@header("Content-type")
contentType: string;
}
  • @projectedName("json", "Content-type") doesn’t work any more on @query, @header and @path parameters (still work on @body parameter)

To suppress the case style check warning, use #suppress "@azure-tools/typespec-azure-core/casing-style" "reason"

Deprecations

TypeSpec > @azure-tools/typespec-azure-core Deprecation of clients decorator

The following decorators have been deprecated

  • @client
  • @clientDefinition
  • (internal) @returnsClient

New @client decorators with a different semantic are in @azure-tools/typespec-client-generator-core using the Azure.ClientGenerator.Core namespace