Skip to content

typing-extensions versioning #32

@srittau

Description

@srittau

Currently, typing-extensions is roughly versioned after the latest Python release. I believe that's the case, since originally typing_extensions incorporated changed from said release and this was used to signal that. I think it's time to change to a semver-like versioning scheme:

  • The features in typing-extensions don't always align with the features of the corresponding Python version. New features often get added in "older" typing-extension versions. These changes are not really represented in the version number.
  • We have no clear way to mark incompatible changes, like dropping support for older versions.
  • I think there is a consensus to add selected definitions from _typeshed to typing_extensions. Separating typing_extension's versioning scheme and release schedule from Python's would allow us to be more flexible and also communicate changes better to our users.
  • Looking at the release history, it's not easily clear to me how the third and (if existing) fourth component of the version number is interpreted.

My suggestion: Bump the version to 4.0.0 and use a semver-like versioning scheme from now on: Incompatible changes require a major version bump, API additions a minor version change, and bug fixes an micro version change.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions