Skip to content

Releases: microsoft/typespec

@typespec/[email protected]

08 Aug 05:40
1455928
Compare
Choose a tag to compare
Pre-release

No changes, version bump only.

@typespec/[email protected]

31 Jul 21:58
53b7a8a
Compare
Choose a tag to compare
Pre-release
CSharp Service Emitter (#2904)

Fixes #3141

---------

Co-authored-by: Timothee Guerin <[email protected]>
Co-authored-by: Timothee Guerin <[email protected]>

[email protected]

17 Jul 01:45
6a3bbf6
Compare
Choose a tag to compare

@typespec/compiler

Bug Fixes

  • #3623 Fix crash of language server on firefox
  • #3516 Deprecate getAssetEmitter and recommend calling createAssetEmitter directly
  • #3767 Fix semantic highlighting of using of single namespace
  • #3824 Do not cast model expression to object value if the constraint is allowing the type
  • #3577 Fix formatting of object and array literal in decorator to hug parenthesis
  • #3823 Fix formatting of scalar constructor called with no args
  • #3743 Fix 'typespec vs install' command on windows
  • #3605 Fix templates initialized on node 22

Bump dependencies

  • #3718 Dependency updates July 2024

Features

  • #3699 Moved compiler dependencies to peer and dev for scaffolded projects.

  • #3572 Add new @example and @opExample decorator to provide examples on types and operations.

    @example(#{
      id: "some",
      date: utcDateTime.fromISO("2020-01-01T00:00:00Z"),
      timeout: duration.fromISO("PT1M"),
    })
    model Foo {
      id: string;
      date: utcDateTime;
    
      @encode("seconds", int32) timeout: duration;
    }
    @opExample(
      #{
        parameters: #{
          pet: #{
            id: "some",
            name: "Fluffy",
            dob: plainDate.fromISO("2020-01-01"),
          },
        },
        returnType: #{
          id: "some",
          name: "Fluffy",
          dob: plainDate.fromISO("2020-01-01"),
        },
      },
      #{ title: "First", description: "Show creating a pet" }
    )
    op createPet(pet: Pet): Pet;
  • #3751 Adds option to tsp init to generate .gitignore file

Breaking Changes

  • #3793 Do not carry over @friendlyName with model is or op is

    @friendlyName("Abc{T}", T)
    model Foo<T> {}
    
    model Bar is Foo<string>;
    
    // This can be changed to
    model Abcstring is Foo<string>;
  • #3659 Disallows overriding a required inherited property with an optional property.

In previous versions of TypeSpec, it was possible to override a required property with an optional property. This is no longer allowed. This change may result in errors in your code if you were relying on this bug, but specifications that used this behavior are likely to have been exposed to errors resulting from incoherent type checking behavior.

The following example demonstrates the behavior that is no longer allowed:

model Base {
  example: string;
}

model Child extends Base {
  example?: string;
}

In this example, the Child model overrides the example property from the Base model with an optional property. This is no longer allowed.

@typespec/http

Bump dependencies

  • #3718 Dependency updates July 2024

Features

  • #3717 Allow overriding base operation verb
  • #3676 Expose getHttpPart and types functions
  • #3732 Expose model property on HttpAuth to retrieve original type used to define security scheme

Breaking Changes

  • #3737 Keep trailing slash when building http routes, this is breaking if you used to have @route() ending with /.

    TypeSpec Before After
    @route("users/") users users/
    @route("users") users users
    on interface @route("users/") and on op @route("addresses/") users/addresses users/addresses/
    on interface @route("users/") and on op @route("addresses") users/addresses users/addresses

@typespec/versioning

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/rest

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/openapi

Bump dependencies

  • #3718 Dependency updates July 2024

Features

  • #3626 Adds public function for setting info object

@typespec/openapi3

Bug Fixes

  • #3516 Fix issue that could result in invalid document generation when running tsp compile from another directory
  • #3794 Updates tsp-openapi3 to always emit main.tsp when formatting encounters an error.
  • #3839 Updates tsp-openapi3 doc line wrapping to only automatically create newlines when they are present in the original documentation.

Bump dependencies

  • #3718 Dependency updates July 2024

Features

  • #3572 Add support for new @example and @opExample decorator
  • #3663 Adds support for converting OpenAPI3 specs to TypeSpec via the new tsp-openapi3 CLI included in the @typespec/openapi3 package.
  • #3732 Apply openapi3 extension on Security schemes
  • #3844 Updates tsp-openapi3 to escape identifiers that would otherwise be invalid, and automatically resolve namespaces for schemas with dots in their names.

@typespec/protobuf

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/prettier-plugin-typespec

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/eslint-plugin

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/html-program-viewer

Bug Fixes

  • #3585 Fix crash in program viewer when trying to display new value type

Bump dependencies

  • #3718 Dependency updates July 2024

Features

  • #3713 Complete new dynamic UI to navigate the TypeSpec type graph

@typespec/json-schema

Bug Fixes

  • #3516 Fix issue that could result in invalid document generation when running tsp compile from another directory

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/internal-build-utils

Bump dependencies

  • #3718 Dependency updates July 2024

typespec-vs

No changes, version bump only.

typespec-vscode

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/library-linter

Bump dependencies

  • #3718 Dependency updates July 2024

[email protected]

17 Jul 01:44
6a3bbf6
Compare
Choose a tag to compare

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/[email protected]

17 Jul 01:45
6a3bbf6
Compare
Choose a tag to compare

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/[email protected]

17 Jul 01:44
6a3bbf6
Compare
Choose a tag to compare

Bump dependencies

  • #3718 Dependency updates July 2024

Features

  • #3585 Add error recovery for viewer that crash
  • #3750 Add new property on the playground to add custom buttons on the toolbar
  • #3713 Extract splitpane into separate package

@typespec/[email protected]

17 Jul 01:44
6a3bbf6
Compare
Choose a tag to compare

No changes, version bump only.

@typespec/[email protected]

17 Jul 18:09
d705dd5
Compare
Choose a tag to compare

Bug Fixes

  • #3875 Fix issues with examples not working with Array, Record, Union and unknown types

@typespec/[email protected]

17 Jul 01:44
6a3bbf6
Compare
Choose a tag to compare

Bump dependencies

  • #3718 Dependency updates July 2024

@typespec/[email protected]

10 Jul 22:26
b5d766c
Compare
Choose a tag to compare
Pre-release
[http-server-javascript] Merge JavaScript Server Generator to Main (#…