Skip to content

Can typescript please follow semver? So we can know when an upgrade is minor/major/patch ? #39269

@nojvek

Description

@nojvek

Search Terms

semver, breaking changes, semantic versioning

Suggestion

I realized 4.0.0 isn't a breaking change. Typescript versions aren't like other node package versions. Now sure how they increment and who decides version numbers.

Could we adopt semver ? It makes it super easy to know whether a version upgrade is a breaking change, a new additional feature or just a small bug fix.

As a package consumer, knowing the answers to those questions is important and since TS doesn't follow semver it means as an author, I have to manually fiddle through release notes to figure things out.

https://docs.npmjs.com/about-semantic-versioning

By default npm installs with '^x.y.z', which means latest package with same major version, so minor releases are allowed.

By releasing with semver, it plays well with rest of npm ecosystem.

Use Cases

Have a sane dev life.

My suggestion meets these guidelines:

  • This wouldn't be a breaking change in existing TypeScript/JavaScript code
  • This feature would agree with the rest of TypeScript's Design Goals.

Metadata

Metadata

Assignees

No one assigned

    Labels

    DuplicateAn existing issue was already created

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions