Skip to content

Release Activities

Orta edited this page Aug 2, 2021 · 29 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.

The primary people managing a release should oversee these tasks along with the overall release process.

Release Candidate Activities

tslib

  • Add all tslib updates
  • Review next version number

@definitelytyped/header-parser and retag

Once master's version is updated, the @definitelytyped packages must be aware of the nightly's new version so that functionality such as ATA continues to work.

  • Update @definitelytyped/typescript-versions to support the next version, and publish new version
    • in other words, if we're releasing TypeScript 3.9, the header parser needs to support 4.0.
    • Follow the instructions in typescript-versions' source to update dependents.

Release Activities

Release

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

Project Health

  • Review perf dashboard to identify regressions

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:

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