Prepare for Node.js 27 pre-release (Alpha) / release
还没有人认领这个 Issue。
- 主要语言
- Dockerfile
- 星标
- 8.6k
- 派生
- 2k
- 平均合并
- 10 小时 19 分钟
- 30 天内合并 PR
- 16
描述
Task
Prepare for the new Node.js release model for Node.js 27 beginning in Oct 2026 with releases like 27.0.0-alpha.0.0.0 followed 6 months later in April 2027 by 27.0.0.
Background
The blog post Evolving the Node.js Release Schedule, March 10, 2026, announced the plan to release Node.js 27 Alpha in Oct 2026, followed by Node.js 27.0.0 in April 2027 and included the schedule information for the new model that Node.js 27 is planning to follow:
| Milestone | Date |
|---|---|
| Alpha begins | October 2026 |
| 27.0.0 | April 2027 |
| Enters LTS | October 2027 |
| End of Life | April 2030 |
According to the blog post, Alpha versioning follows semver prerelease format (e.g., 27.0.0-alpha.1) and semver-major changes are allowed during this phase.
Implications
This repo uses a combination of JavaScript, Bash script and GitHub Actions workflows to detect new Node.js versions and to update Dockerfiles to pass on to the official Docker site for image publication.
It interfaces with sources:
and posts its results to:
- https://nodejs/official-images
for image publication.
If the existing source interfaces are extended so they publish prerelease versions such as 27.0.0-alpha.0.0.0, then the viability of the workflows in this repo is uncertain, whichever of the following scenarios is followed:
Scenario 1 - ignore prerelease versions
Script changes would be needed to ignore prerelease versions. Sorting and comparisons may produce the wrong results when prerelease and release versions are available.
Scenario 2 - publish prerelease versions
To publish prerelease (Alpha) versions as Docker images, more extensive changes would be needed. versions.json needs a new field for the Alpha phase. Functionality similar to the npm package semver would be needed for version comparisons. The full version would need to be preserved in various places, instead of using an assumption that only major.minor.patch formats need to be handled.
Next steps
Gather inputs and make a decision on the direction to be taken for Node.js 27:
- Scenario 1 - ignore prerelease Node.js 27
- Scenario 2 - publish prerelease Node.js 27 versions as
nodeDocker images
Since this is a major policy decision, it should have the active involvement of the Docker Maintainers, possibly also with guidance from the Node.js TSC.
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从 versions.json、Dockerfiles 以及读取 Node.js 源代码并更新镜像版本的 GitHub Actions 工作流开始。审查当前如何对预发布版本进行排序和比较,然后在决定是忽略还是发布 Node.js 27 Alpha 版本之前,收集维护者和 Node.js TSC 的意见。完成的标准是,项目已就该场景达成方向共识并确定实现范围。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- bash, docker, github-actions, javascript, node.js
- 领域
- build-system, devops, release
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 冷清
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100