What you need to know
The Python developer guide lists 3.10 as end-of-life since October 1, 2026, and the Node.js project marks v20 EOL. Custom software, automation scripts and container images still on either runtime no longer receive upstream fixes.
Potentially affected
Custom applications, APIs, integrations, automation scripts, scheduled jobs, CI runners and container base images that run on Python 3.10 or Node.js 20 or older branches.
DSE recommendation
DSE recommends replacing Python 3.10 and Node.js 20 with supported branches in every production workload and build image, starting with internet-facing services.
The Python developer guide lists 3.10 as end-of-life since October 1, 2026, and the Node.js project marks v20 EOL. Custom software, automation scripts and container images still on either runtime no longer receive upstream fixes.
Source facts
The Python developer guide lists Python 3.10 as end-of-life with an end date of October 1, 2026, and 3.9 as end-of-life since October 31, 2025. Python 3.11, 3.12 and 3.13 are in the security phase, with scheduled end-of-life months of October 2027, 2028 and 2029. The guide explains that support ends five years after a release, when the release cycle is frozen and no further changes are allowed.
The Node.js releases page marks Node.js 20 and 18 as EOL and v22 and v24 as LTS. It says production applications should only use Active LTS or Maintenance LTS releases, and that starting with Node.js 27 the release cycle becomes annual, with every major version moving to LTS after its Current phase.
Applicability
Use this wherever code runs outside a vendor-managed platform: servers, workstations running automation, serverless functions, CI/CD runners and Docker images. Where a runtime was installed from an operating-system package, check that distribution’s own support statement before deciding whether it still receives fixes.
DSE recommendation
DSE recommends replacing Python 3.10 and Node.js 20 with supported branches in every production workload and build image, starting with internet-facing services. Search repositories for version pins in requirements, runtime and package files, Dockerfiles and pipeline definitions; record each hit with an owner; upgrade dependencies that block the move; and set a recurring review against both projects’ published schedules.
Verification
After each upgrade, run the application’s automated tests and a smoke test in staging, then confirm the deployed process reports the new runtime version. Rebuild container images from updated base images rather than patching running containers, and re-scan the repositories to show that no Python 3.10 or Node.js 20 pins remain.
Official references
Python Developer’s Guide — Status of Python versions. Node.js — Node.js Releases. Reviewed October 18, 2026.
Review the official source
Python Developer’s Guide — Status of Python versions · Verified October 18, 2026
Need help applying this guidance safely?
DSE can help confirm applicability, protect service continuity, and validate the result across physical security and IT systems.
Talk with DSE