nodejs / nodejs/docker-node

Prepare for Node.js 27 pre-release (Alpha) / release

Đang mở
#2,524 16 bình luận 2 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

build process enhancement
Ngôn ngữ chính
Dockerfile
Star
8.6k
Fork
2k
Merge trung bình
10 giờ 19 phút
Pull request đã merge (30 ngày)
16

Mô tả

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 node Docker 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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu với versions.json, các Dockerfile và các workflow GitHub Actions đọc mã nguồn Node.js và cập nhật phiên bản image. Xem xét cách các phiên bản prerelease hiện được sắp xếp và so sánh, sau đó thu thập ý kiến từ các maintainer và Node.js TSC trước khi quyết định có bỏ qua hay phát hành các phiên bản Node.js 27 Alpha hay không. Được xem là hoàn tất khi dự án đã thống nhất được định hướng và phạm vi triển khai cho kịch bản đó.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
bash, docker, github-actions, javascript, node.js
Lĩnh vực
build-system, devops, release
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.