0.44.0 July 2024
Release Notes Version 0.44.0 - July 2024
See TypeSpec Core 0.58 release notes
Breaking Changes
@azure-tools/typespec-autorest
-
#1105
x-ms-client-flatten
extension on some of resource properties property is now configurable to be emitted by autorest emitter(arm-resource-flattening
option). Default is false which will skip emission of that extension. To revert to previous behavior update yourtspconfig.yaml
with the followingoptions:"@azure-tools/typespec-autorest":# ...other optionsarm-resource-flattening: true
@azure-tools/typespec-azure-resource-manager
-
#1093 Removing $armRenameListByOperation decorator so operation id is directly derived from operation name. Previously operation id is statically resolved and fixed :
-
For top level resources,
[Resource]_ListByResourceGroup
-
For child resources,
[Resource]_ListBy[ParentResource]
With this change, the operation name will form the second part of the operation id, just like other ARM operation templates.
list is ArmResourceListByParent<Employee>;listByLocation is ArmResourceListByParent<Employee>;
You can modify the operation name to match existing spec to avoid breaking changes.
- #1146 Moved
@armRenameListByOperation
intoAzure.ResourceManager.Private
namespace. Adding back original listByParent doc resolution logic to keep swagger changes to minimal. - #1105
x-ms-client-flatten
extension on some of resource properties property is now configurable to be emitted by autorest emitter. Default is false which will skip emission of that extension.
@azure-tools/typespec-client-generator-core
- #1078 remove
experimental_
prefix fromsdkPackage
. Now it’s just calledsdkPackage
.
Features
@azure-tools/typespec-autorest
- #1116 Resolve Arm Common Definitions for enums and unions as well
- #955 Use emit-lro—options emitter option to control emission of x-ms-long-running-operation-options
- #955 Add support for displaying lro options in typespec-autorest based on lro metadata
- #1123 Removed direct reference to OpenAPI extension
x-ms-azure-resource
in ARM library and replaced with@Azure.ResourceManager.Private.azureResourceBase
decorator. It is only used internally on base resource types.autorest
emitter has been updated to check the decorator and still emitx-ms-azure-resource
extension in swagger. - #1081 Allow void in final result for Azure-AsyncOperation header
@azure-tools/typespec-azure-resource-manager
- #1116 Link CommonTypes enums and unions to the swagger common types
- #1161 Added an optional template parameter on
TrackedResource
,ProxyResource
, andExtensionResource
ARM templates that allows brownfield services to customize the optionality of the ARM resourceproperties
field. - #1123 Removed direct reference to OpenAPI extension
x-ms-azure-resource
in ARM library and replaced with@Azure.ResourceManager.Private.azureResourceBase
decorator. It is only used internally on base resource types.autorest
emitter has been updated to check the decorator and still emitx-ms-azure-resource
extension in swagger.
@azure-tools/typespec-client-generator-core
- #1152 add
.generateConvenient
and.generateProtocol
for service methods. These booleans tell emitters whether to generate convenient and protocol versions for the method - #1129 add
UsageFlags.Json
. Will be set if a model is used with a JSON content type - #1045 filter api versions enum to only include GA versions if default value is GA
Bug Fixes
@azure-tools/typespec-autorest
- #1081 Fix patch models for common-types
@azure-tools/typespec-azure-core
- #927 Remove explicit
all
rulesets
@azure-tools/typespec-azure-resource-manager
- #1156 Minor fix to make foundations and common-type more consistent.
- #1102 Fixing typo
- #1139 LocationResourceParameter should be azureLocation instead of string
- #1111 Fix the type discrepancy issue for property userAssignedIdentities in common types V5 ManagedServiceIdentity
- #927 Remove explicit
all
rulesets - #1081 Fix ArmResourcePatch templates and incorporate common-types updates
- #1144 Tweak regex to validate Arm keys