March 2024
Breaking Changes
@typespec/compiler
- #2920 Intersecting 
Record<T>with incompatible properties will now emit an error 
@typespec/prettier-plugin-typespec
- #2956 Drop support for prettier 2.0
 
Deprecations
@typespec/compiler
- #2919 [API] Create a new export 
@typespec/compiler/utilsexports. Deprecate export from@typespec/compilerof utils likeDuplicateTracker,Queue,createTwoKeyMap, etc. - #2902 Deprecate 
@serviceversion property. If wanting to describe a service versioning you can use the@typespec/versioninglibrary. If wanting to describe the project version you can use the package.json version. For OpenAPI generation. the@OpenAPI.infonows decorator allows providing the document version. 
Features
@typespec/compiler
- #2888 Add support for codefixes
 - #2920 Add support for 
...Record<T>to define the type of remaining properties - #2968 Any subtype of an error(marked with 
@error) is now an error. 
@typespec/http
- #2901 Add ability to specify authentication and different scopes per operation
 - #2958 Validate that only one 
@useAuthdecorator is applied to a type. 
@typespec/openapi
- #2902 Add support for all properties of openapi 
infoobject on the@infodecorator 
@typespec/openapi3
- #2902 Add support for all properties of openapi 
infoobject on the@infodecorator - #2950 Add 
getOpenAPI3function that takes a TypeSpec program and returns the emitted OpenAPI as an object. Useful for other emitters and tools that want to work with emitted OpenAPI directly without writing it to disk. - #2933 Add a new option 
safeint-strategythat can be set todouble-intto emittype: integer, format: double-intinstead oftype: integer, format: int64when using thesafeintscalar. 
@typespec/playground
- #2936 Autocomplete installed libraries in 
importstatements 
Bug Fixes
@typespec/compiler
- #2932 Report error when having a circular template constraint e.g. 
model Example<T extends T> - #2955 [Formatter] Formatting file with only comments would reorder the first line.
 - #2934 [IDE] Fix issue when deleting an open file outside the IDE that would crash the language server
 - #2959 Decorators that have missing arguments will not run. This is inline with passing invalid argument to a decorator that would prevent it from running.
 - #2976 [IDE] Fix type documentation shown twice when hovering symbols or in completion details.
 - #2929 [API] Add 
Scalarto TSTemplatedTypetype - #2978 [IDE] Go to imports
 - #2936 [IDE] Autocompleting file or folder with non alpha numeric character completes correctly
 - #2936 [IDE] Fix crashing when trying to autocomplete an invalid folder
 - #2951 Wrap string in quotes in errors
 - #2886 Fix: 
tsp compile --watchwas missing coloring and error previews 
@typespec/http
- #2948 Fix donโt emit shared route error when verb donโt match
 
@typespec/json-schema
- #2977 Respect compiler 
noEmitflag