diff --git a/docs/release-notes/release-2024-09-10.md b/docs/release-notes/release-2024-09-10.md new file mode 100644 index 0000000000..3389de9632 --- /dev/null +++ b/docs/release-notes/release-2024-09-10.md @@ -0,0 +1,101 @@ +--- +title: 0.46.0 September 2024 +--- + +# Release Notes Version 0.46.0 - September 2024 + +See TypeSpec Core 0.60 [release notes](https://typespec.io/docs/release-notes/release-2024-09-10) + +:::warning +This release contains deprecations and breaking changes +::: + +## Breaking Changes + +### @azure-tools/typespec-client-generator-core + +- [#1440](https://github.com/Azure/typespec-azure/pull/1440) Filter Core models directly instead of clearing their usage +- [#1451](https://github.com/Azure/typespec-azure/pull/1451) Have no client parameters appear on method signatures +- [#1420](https://github.com/Azure/typespec-azure/pull/1420) Removes deprecated exports of previous version + +## Deprecations + +### @azure-tools/typespec-autorest + +- [#1368](https://github.com/Azure/typespec-azure/pull/1368) Replace `examples-directory` with `examples-dir` which will validate an absolute path is provided + + Case 1: Examples are in `examples` directory next to `tspconfig.yaml`. In this case the option can just be removed + + ```diff + - examples-directory: examples + ``` + + ```diff + - examples-directory: {project-root}/examples + ``` + + Case 2: Examples are in a different directory + + ```diff + - examples-directory: autorest-examples + + examples-dir: {project-root}/autorest-examples + ``` + + ```diff + - examples-directory: {project-root}/autorest-examples + + examples-dir: {project-root}/autorest-examples + ``` + +### @azure-tools/typespec-client-generator-core + +- [#1395](https://github.com/Azure/typespec-azure/pull/1395) deprecate `@internal` decorator and `isInternal` helper function + +## Features + +### @azure-tools/typespec-autorest + +- [#1455](https://github.com/Azure/typespec-azure/pull/1455) Respect `@clientName` for definition names(model, enums, union, etc.), enum and union member and for parameters +- [#1449](https://github.com/Azure/typespec-azure/pull/1449) Add support for custom item name in `x-ms-pageable` + +### @azure-tools/typespec-azure-core + +- [#1342](https://github.com/Azure/typespec-azure/pull/1342) Replace `no-operation-id` linter rule with a more generic `no-openapi` rule guarding against any use of openapi decorators + +### @azure-tools/typespec-azure-resource-manager + +- [#1482](https://github.com/Azure/typespec-azure/pull/1482) Add mobo type to TypeSpec-Azure common types + +### @azure-tools/typespec-client-generator-core + +- [#1305](https://github.com/Azure/typespec-azure/pull/1305) Add Namespace as target for @access decorator +- [#1398](https://github.com/Azure/typespec-azure/pull/1398) add `@clientInitialization` decorator +- [#1253](https://github.com/Azure/typespec-azure/pull/1253) add parent client info to `SdkClientType` +- [#1253](https://github.com/Azure/typespec-azure/pull/1253) add `listSubClients` helper func +- [#1379](https://github.com/Azure/typespec-azure/pull/1379) add `doc` and `summary` to tcgc types +- [#1387](https://github.com/Azure/typespec-azure/pull/1387) add default path for example detection +- [#1395](https://github.com/Azure/typespec-azure/pull/1395) do propagation when override access or usage +- [#1388](https://github.com/Azure/typespec-azure/pull/1388) use original model for spread if it is from a simple spread +- [#1303](https://github.com/Azure/typespec-azure/pull/1303) allow `@usage` to apply to namespaces + +## Bug Fixes + +### @azure-tools/typespec-autorest + +- [#1436](https://github.com/Azure/typespec-azure/pull/1436) Fixes bug where defining multiple services in a project resulted in each openapi output containing the same single service definition. + +### @azure-tools/typespec-azure-resource-manager + +- [#1359](https://github.com/Azure/typespec-azure/pull/1359) `arm-no-record` rule should warn about any use of `Record` not just when inside resource properties + +### @azure-tools/typespec-client-generator-core + +- [#1476](https://github.com/Azure/typespec-azure/pull/1476) Fix to add client signature `subscriptionId` for ARM SDK +- [#1424](https://github.com/Azure/typespec-azure/pull/1424) do not handle example value with null for model type +- [#1424](https://github.com/Azure/typespec-azure/pull/1424) consider renaming for parameter or property +- [#1431](https://github.com/Azure/typespec-azure/pull/1431) consider renaming when mapping examples +- [#1452](https://github.com/Azure/typespec-azure/pull/1452) TCGC, make content type optional when request body is optional +- [#1399](https://github.com/Azure/typespec-azure/pull/1399) remove import of `UnionEnumVariant` +- [#1432](https://github.com/Azure/typespec-azure/pull/1432) need to handle projection when finding spread original model +- [#1377](https://github.com/Azure/typespec-azure/pull/1377) Fix getLibraryName for anonymous model which is derived from template +- [#1435](https://github.com/Azure/typespec-azure/pull/1435) Don't require params introduced by `Azure.Core` with `@override` +- [#1410](https://github.com/Azure/typespec-azure/pull/1410) set sdk method body parameter encode with http content type