Skip to main content

版本

最新

¥Latest

NPM Version

我们每周一 17:00 UTC(Tuesdays at 5:00 PM UTC)使用当时对 main 的最新提交发布最新版本。此版本由位于私有存储库中的 Github 操作自动执行。此版本转到 npm 上的标准 latest 标签。

¥We release a latest version every Monday at 17:00 UTC (Tuesdays at 5:00 PM UTC) using the latest commit to main at that time. This release is performed automatically by a Github action located in a private repository. This release goes to the standard latest tag on npm.

请参阅 版本控制 以了解如何计算版本号。

¥See Versioning for how the version number is calculated.

如果没有影响面向公众的软件包的提交,则应发布补丁级版本。

¥If there have been no commits that impact public-facing packages then a patch-level release shall be released.

最新版本只能是 "minor" 或 "patch" 版本。

¥Latest releases shall only ever be "minor" or "patch" releases.

发行说明

¥Release Notes

每个版本都记录在 Github 发布页面 上。

¥Every release is documented on the Github Release page.

这些发行说明将列出该发行版中包含的 PR。

¥These release notes will list the PRs included in the release.

Canary

NPM Version

我们为通过所有必需检查的每次提交到 main 发布一个金丝雀版本。此版本由 publish_canary_version 自动执行。因此,你无需等待新的稳定版本即可使用任何更新。

¥We release a canary version for each commit to main that passes all required checks. This release is performed automatically by the publish_canary_version step. So you never need to wait for a new stable version to make use of any updates.

此版本转到 npm 上的 canary 标签,并且它是在当前 latest 版本之上的增量金丝雀补丁版本。即如果当前版本是 5.6.1,则第一个 canary 版本将是 5.6.2-alpha.0,第二个是 5.6.2-alpha.1,依此类推。

¥This release goes to the canary tag on npm and it is versioned as an incremental canary patch release on top of the current latest version. I.e. if the current version is 5.6.1, then the first canary version will be 5.6.2-alpha.0, the second 5.6.2-alpha.1, and so on.

注意

上述自动发布的唯一例外是我们处于创建下一个主要版本库的最后阶段 - 例如从 1.x.x 转到 2.x.x。在此期间,我们手动发布 canary 版本,直到我们对版本满意并将其提升为 latest

¥The only exception to the automated publishes described above is when we are in the final phases of creating the next major version of the libraries - e.g. going from 1.x.x to 2.x.x. During these periods, we manually publish canary releases until we are happy with the release and promote it to latest.

安装 Canary 版本

¥Installing Canary Versions

要试用 typescript-eslint 的最新 canary 版本,请安装 @typescript-eslint/eslint-plugin@canary@typescript-eslint/parser@canary。请注意,npm 可能需要 --force 来覆盖版本要求。

¥To try out the latest canary versions of typescript-eslint, install @typescript-eslint/eslint-plugin@canary and @typescript-eslint/parser@canary. Note that npm may need a --force to override version requirements.

npm i @typescript-eslint/eslint-plugin@canary @typescript-eslint/parser@canary --save-dev --force

主要版本

¥Major Releases

我们目前还没有关于何时执行主要版本的固定时间表;相反,它们是在需要时完成的。

¥We currently do not have a set schedule around when major releases shall be performed; instead they are done as the need arises.

我们将突发问题积压作为 GitHub 上的里程碑,以 ${major}.0.0 的形式命名。当我们确实进行主要发布时,我们会针对主要分支的每次提交,在 npm 上向 rc-v${major} 标签发布一个候选发布版本。

¥We keep a backlog of breaking issues as a milestone on GitHub that is named in the form ${major}.0.0. When we do do a major release, we release a release candidate version to the rc-v${major} tag on npm for each commit to the major branch.

有关执行主要版本的步骤,请参阅 维护 > 版本

¥See Maintenance > Releases for steps to perform a major release.

带外发布

¥Out-of-Band Releases

我们将发布 "out-of-band"(在 latest 计划之外)以应对罕见的紧急情况。我们根据具体情况评估需求,但通常紧急情况被定义为最新版本中专门引入的关键回归。

¥We will do releases "out-of-band" (outside the latest schedule) for rare emergencies. We assess need on a case-by-case basis though generally an emergency is defined as a critical regression specifically introduced in the latest release.

这些版本由具有所需访问权限的维护人员手动完成。

¥These releases are done manually by a maintainer with the required access privileges.

向后移植版本

¥Back-Porting Releases

我们不会将版本移植到以前发布的主要/次要版本。我们只向前发布。

¥We do not back port releases to previously released major/minor versions. We only ever release forward.