VVersions.dev

Modernize Python

Operational guides for modernizing Python: the Python 3 upgrade hub, Python 2-to-3 and 3.8-to-3.12 migration paths, setup.py-to-pyproject.toml packaging, and dependency-error fixes.

Last verified · Updated May 22, 2026

Python modernization spans the legacy 2-to-3 jump and the steady 3.x cadence (distutils removal, packaging moving to pyproject.toml). This hub links every supported upgrade path plus the workflows for the errors those upgrades surface.

What this covers

Start at the Python 3 upgrade hub for the breaking-change picture, then pick the source-to-target page matching the version you are on. Each page includes a repo-inspection prompt, step-by-step migration, test plan, and rollback guidance.

Version timeline

  1. 3.12currentactivereleased 2023-10-02
  2. 3.8eolreleased 2019-10-14 · EOL 2024-10-07
  3. 2.7eolreleased 2010-07-03 · EOL 2020-01-01

Frequently asked questions

Which Python version should I target?

Python 3.12 is the current stable release covered here. If you are still on Python 2.7, treat the move to Python 3 as a separate, high-risk project before chasing the latest 3.x.