diff --git a/.chronus/changes/fix-no-crash-nullable-2024-1-28-22-57-44.md b/.chronus/changes/fix-no-crash-nullable-2024-1-28-22-57-44.md index 7d2219ed5..f1d30235d 100644 --- a/.chronus/changes/fix-no-crash-nullable-2024-1-28-22-57-44.md +++ b/.chronus/changes/fix-no-crash-nullable-2024-1-28-22-57-44.md @@ -5,4 +5,4 @@ packages: - "@typespec/openapi3" --- -Fix crash: emit `{nulable: true}` when trying to emit `null` in openapi3 +Fix crash: emit `{nullable: true}` when trying to emit `null` in openapi3 diff --git a/docs/release-notes/release-2024-04-02.md b/docs/release-notes/release-2024-04-02.md new file mode 100644 index 000000000..590557a3f --- /dev/null +++ b/docs/release-notes/release-2024-04-02.md @@ -0,0 +1,65 @@ +--- +title: 0.55 - April 2024 +--- + +# Release Notes Version 0.55 - April 2024 + +:::warning +This release contains deprecations +::: + +## Deprecations + +### @typespec/compiler + +- [#2910](https://github.com/microsoft/typespec/pull/2910) Deprecate `@projectedName` decorator. `@encodedName` should be used instead. + + Example: + + ```diff + -@projectedName("json", "exp") + +@encodedName("application/json", "exp") + ``` + +- [#3094](https://github.com/microsoft/typespec/pull/3094) Deprecate `@knownValues` decorator. Use a named union of string literal with a string variant to achieve the same result without a decorator + + Example: + + ```diff + -enum FooKV { a, b, c} + -@knownValues(FooKV) + -scalar foo extends string; + +union Foo { "a", "b", "c", string } + ``` + +## Features + +### @typespec/compiler + +- [#2992](https://github.com/microsoft/typespec/pull/2992) Enable the use of `@encode` for model properties that have a union type. This supports cases like `@encode("rfc3339") prop: utcDateTime | null` + +### @typespec/versioning + +- [#3053](https://github.com/microsoft/typespec/pull/3053) Add support for versioning of scalars(Added, removed, renamed) + +## Bug Fixes + +### @typespec/compiler + +- [#3018](https://github.com/microsoft/typespec/pull/3018) Grammar: Fix comments in template params not tokenized +- [#3052](https://github.com/microsoft/typespec/pull/3052) Fix: Union template declaration were incorrectly being finished in projection +- [#2983](https://github.com/microsoft/typespec/pull/2983) Warnings converted to error with `warn-as-error` do not prevent compilation from moving to the next stage like regular warnings +- [#3041](https://github.com/microsoft/typespec/pull/3041) Improve reliability of application of codefixes in IDE, often it would not do anything +- [#3069](https://github.com/microsoft/typespec/pull/3069) TmLanguage: Fix tokenization of escaped identifiers, enums and unions + +### @typespec/openapi3 + +- [#3077](https://github.com/microsoft/typespec/pull/3077) Do not crash if using an unsupported intrinsic type +- [#2967](https://github.com/microsoft/typespec/pull/2967) Fix crash: emit `{nullable: true}` when trying to emit `null` in openapi3 +- [#3013](https://github.com/microsoft/typespec/pull/3013) Fix: OpenAPI3 not marking part of bytes or something else as `format: binary` +- [#3090](https://github.com/microsoft/typespec/pull/3090) Fix: Literal unions with the same variants keep adding duplicate entries +- [#3049](https://github.com/microsoft/typespec/pull/3049) Fix visibility naming conflict when a model used with `extends` was used in different visibility. + +### @typespec/eslint-config-typespec + +- [#2122](https://github.com/microsoft/typespec/pull/2122) Ignore `generated-defs` folder