nodejs / nodejs/docker-node

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

Aperta
#2,524 16 commenti 2 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

build process enhancement
Lingua principale
Dockerfile
Stelle
8.6k
Fork
2k
Merge medio
10h 19m
PR unite (30g)
16

Descrizione

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.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia da versions.json, dai Dockerfile e dai workflow GitHub Actions che leggono le sorgenti di Node.js e aggiornano le versioni delle immagini. Esamina come vengono attualmente ordinate e confrontate le versioni prerelease, quindi raccogli il contributo dei maintainer e del Node.js TSC prima di decidere se ignorare o pubblicare le versioni Node.js 27 Alpha. Il lavoro è completato quando il progetto ha una direzione concordata e un ambito di implementazione per questo scenario.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
bash, docker, github-actions, javascript, node.js
Ambito
build-system, devops, release
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Tranquilla
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.