Skip to content

Commit 385bba7

Browse files
author
Marcos Hernandez
committed
chore: alinear con Node LTS 2026 (drop Node 20, opt-in Node 24 en actions)
Limpieza preventiva del workflow CI y de engines.node antes de que GitHub fuerce el cambio: - package.json engines.node: ">=20.0.0 <23.0.0" -> ">=22.0.0" Node 20 LTS terminó en 2026-04 (ya en maintenance, EOL 2026-09). Node 22 es la LTS activa hasta 2027-04. Sin upper bound: cualquier Node mas reciente que 22 se acepta. Si en el futuro algun major rompe Electron de nuevo (como F-02 con 25), añadimos el upper. - CI matrix [20, 22] -> [22, 24]. Probamos contra LTS activa y la rama current (24 sera LTS en oct 2026). Cuatro jobs: 2 OS x 2 Node. - env.FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true. Opt-in al runtime de Node 24 que GitHub forzara a partir de 2026-06-02 para los actions (actions/checkout, actions/setup-node). Silencia los warnings de deprecation hoy y nos asegura que el suite corre con la próxima default. - FINDINGS F-02 actualizado con el snippet de pin nuevo. Verificado: 219 tests verde en local con Node 25 que tengo aqui. El siguiente push valida en CI con la matrix nueva.
1 parent a218759 commit 385bba7

3 files changed

Lines changed: 15 additions & 3 deletions

File tree

.github/workflows/test.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,12 @@ on:
1111
branches: [main]
1212
workflow_dispatch: {}
1313

14+
# Opt-in a Node 24 para los runtimes internos de las actions (actions/checkout,
15+
# actions/setup-node). A partir de 2026-06-02 sera el default; nos adelantamos
16+
# para que el log no muestre warnings de deprecation de Node 20.
17+
env:
18+
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: 'true'
19+
1420
jobs:
1521
test:
1622
name: tests (${{ matrix.os }} / Node ${{ matrix.node }})
@@ -19,7 +25,9 @@ jobs:
1925
fail-fast: false
2026
matrix:
2127
os: [macos-latest, windows-latest]
22-
node: ['20', '22']
28+
# Node 20 LTS terminó en 2026-04, ya en maintenance.
29+
# Probamos contra LTS activa (22) y la rama actual (24, próxima LTS).
30+
node: ['22', '24']
2331

2432
steps:
2533
- name: Checkout

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"description": "ACHUS Game Engine Mark I (AGEMKI) — DOS adventure game engine and editor",
55
"main": "out/main/index.js",
66
"engines": {
7-
"node": ">=20.0.0 <23.0.0"
7+
"node": ">=22.0.0"
88
},
99
"scripts": {
1010
"dev": "electron-vite dev",

tests/FINDINGS.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,10 +144,14 @@ mode. La build de producción y el packaging sí funcionan.
144144
`package.json`:
145145
```json
146146
"engines": {
147-
"node": ">=20.0.0 <23.0.0"
147+
"node": ">=22.0.0"
148148
}
149149
```
150150

151+
Node 22 es la LTS activa; Node 20 ya entró en mantenimiento en abril
152+
2026 y deja de tener soporte oficial en septiembre. Pin a `>=22.0.0`
153+
sin límite superior para no bloquear actualizaciones futuras.
154+
151155
`npm install` avisa si la versión local no encaja. Commit propuesto:
152156
`chore: pin node engine to LTS range`.
153157

0 commit comments

Comments
 (0)