Skip to content

Release Activities

Daniel Rosenwasser edited this page Feb 20, 2020 · 28 revisions

This is the list of release activities needed for every TypeScript release. Additional activities are also needed if a new syntax is introduced or a new compiler option gets added.

Release Candidate Activities

definitelytyped-header-parser and dt-retag

Once master's version is updated, surrounding projects must be aware of the nightlies so that functionality such as ATA continues to work.

  • Update definitelytyped-header-parser to understand the next version, and publish new version
    • in other words, if we're releasing TypeScript 3.2, the header parser needs to be able to parse 3.3.
  • Update dt-retag to the new header-parser and run it to add the tag for typescript@next to each package.

Release Activities

Release

  • Tag release branch
  • Update AUTHORS.md for the release (script)
  • Draft and publish new release
  • Close milestone corresponding to the release

Wiki

Handbook

npm

  • Publish new version of typescript
  • Publish new version of tslib (if needed) by creating a tag

Nuget

Visual Studio Marketplace

TypeScript-Sublime-Plugin

  • Update version of tsserver, test, and tag

dtslint and types-publisher

After the release version is published to npm:

  • Update dtslint's dependency to the new header-parser
  • Update types-publisher's dependency on dtslint. Be sure to clear caches on Travis since it doesn't know how to cache github dependencies correctly.
  • Run dt-retag again so that packages published during the RC period get the new version's tag.

Website

  • Update Handbook
  • Add new release notes page
  • Update playground
  • Update version strings in the download banner

Additional activities

When a new syntax or a new compiler option is introduced, find below the list of additional release activities needed:

New compiler option added

MSBuild tasks and targets

  • Add support for new option in MSBuild tasks and targets (see handbook)

Handbook

SchemaStore

New syntax introduced

Colorization

Babel

Handbook

  • Add new section for the new feature in the handbook
Clone this wiki locally