---
slug: release-notes/typespec-0-61
title: 0.61 - October 2024
releaseDate: 2024-10-09
version: "0.61"
---

:::caution
This release contains breaking changes
:::

## Breaking Changes

### @typespec/compiler

- [#4539](https://github.com/microsoft/typespec/pull/4539) Config parameters and emitters options cannot contains `.`. This conflict with newly added support for nested options.
- [#4500](https://github.com/microsoft/typespec/pull/4500) API: Update default of `decoratorArgMarshalling` from `legacy` to `new`

To revert to the old behavior export the following. **Highly discouraged, this will be removed in a few versions.**

```ts
export const $flags = definePackageFlags({
  decoratorArgMarshalling: "legacy",
});
```

- TypeSpec compiler expect the entrypoint to be an absolute path. This used to work with some alternative `CompilerHost` that handled relative path but this is no longer supported due to the new `exports` field support.

## Features

### @typespec/compiler

- [#4442](https://github.com/microsoft/typespec/pull/4442) Library diagnostic can now define a `description` and `url` that links to a more detailed doc for this diagnostic
- [#4290](https://github.com/microsoft/typespec/pull/4290) Adding experimental (unstable) API fro Type Mutators
- [#4595](https://github.com/microsoft/typespec/pull/4595) Expose more accurate `PackageJson` type and deprecate `NodePackage`
- [#4606](https://github.com/microsoft/typespec/pull/4606) Add support for node `exports` field. Specific typespec exports can be provided with the `typespec` field

```json
"exports": {
  ".": {
    "typespec": "./lib/main.tsp",
  },
  "./named": {
    "typespec": "./lib/named.tsp",
  }
}
```

- [#4539](https://github.com/microsoft/typespec/pull/4539) Support nested emitter options

### @typespec/http

- [#4513](https://github.com/microsoft/typespec/pull/4513) Adds HttpStream and JsonlStream models to to support streaming use-cases.

### @typespec/openapi3

- [#4423](https://github.com/microsoft/typespec/pull/4423) Added support to use Scalar and Object as default types

### @typespec/json-schema

- [#4447](https://github.com/microsoft/typespec/pull/4447) Example set with `@example` decorator will populate the schema `examples` property

### typespec-vscode

- [#4330](https://github.com/microsoft/typespec/pull/4330) Support Compile Task and Watch Task in vscode.
- [#4498](https://github.com/microsoft/typespec/pull/4498) Make extension web compatible with minimal functionality

## Bug Fixes

### @typespec/compiler

- [#4513](https://github.com/microsoft/typespec/pull/4513) Fixes issue with the semantic walker where `exitTuple` was not being emitted.
- [#4462](https://github.com/microsoft/typespec/pull/4462) Fix examples with enums inside of unions
- [#4574](https://github.com/microsoft/typespec/pull/4574) Fix: Passing `const` of model type to `@example`
- [#4551](https://github.com/microsoft/typespec/pull/4551) Json serialization of example respect `@encodedName`
- [#4514](https://github.com/microsoft/typespec/pull/4514) Fix issue with decimal numeric and leading `0.0` with multiple digit
- [#4445](https://github.com/microsoft/typespec/pull/4445) [API] model `sourceModels` property are now projected correctly
- [#4467](https://github.com/microsoft/typespec/pull/4467) Changing tspconfig.yaml won't take effect in LSP server because of the cache
- [#4563](https://github.com/microsoft/typespec/pull/4563) `tsp compile --watch` reread from `tspconfig.yaml` file
- [#4626](https://github.com/microsoft/typespec/pull/4626) [API] Add missing exit callback

### @typespec/openapi

- [#4505](https://github.com/microsoft/typespec/pull/4505) `@info` decorator validate no extra properties not starting with `x-` are provided.
- [#4483](https://github.com/microsoft/typespec/pull/4483) `@info` decorator validate `termsOfService` is a valid url

### @typespec/internal-build-utils

- [#4498](https://github.com/microsoft/typespec/pull/4498) Ignore test from third party notice generation

### typespec-vscode

- [#4430](https://github.com/microsoft/typespec/pull/4430) Use "shell" when spawning execution of .cmd file(i.e. tsp-server.cmd) in windows
