nodejs / nodejs/docker-node

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

Ouverte
#2,524 16 commentaires 2 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

build process enhancement
Langage dominant
Dockerfile
Étoiles
8.6k
Forks
2k
Merge moyen
10 h 19 min
PR mergées (30 j)
16

Description

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.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par versions.json, les Dockerfiles et les workflows GitHub Actions qui lisent les sources de Node.js et mettent à jour les versions des images. Examinez la manière dont les versions de prépublication sont actuellement triées et comparées, puis recueillez l’avis des maintainers et du Node.js TSC avant de décider s’il faut ignorer ou publier les versions Node.js 27 Alpha. Le travail est considéré comme terminé lorsque le projet dispose d’une orientation convenue et d’un périmètre d’implémentation pour ce scénario.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
bash, docker, github-actions, javascript, node.js
Domaine
build-system, devops, release
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
Calme
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.