diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 238e9ca..30dce6d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,7 +33,7 @@ jobs: - uses: actions/setup-python@v5 with: - python-version: "3.10" + python-version: "3.14" cache: pip cache-dependency-path: pyproject.toml @@ -98,7 +98,7 @@ jobs: - uses: actions/setup-python@v5 with: - python-version: "3.12" + python-version: "3.14" - run: pip install build twine diff --git a/.github/workflows/github-release.yml b/.github/workflows/github-release.yml index dcec08f..f8d6d16 100644 --- a/.github/workflows/github-release.yml +++ b/.github/workflows/github-release.yml @@ -243,7 +243,7 @@ jobs: - uses: actions/setup-python@v5 with: - python-version: "3.12" + python-version: "3.14" - name: Rebuild the site from this release run: | diff --git a/.github/workflows/installers.yml b/.github/workflows/installers.yml index d13ddd5..16b8818 100644 --- a/.github/workflows/installers.yml +++ b/.github/workflows/installers.yml @@ -59,9 +59,10 @@ jobs: - uses: actions/setup-python@v5 with: - # Oldest supported version on purpose: a binary built against an older glibc - # and an older Python runs on more machines than one built against the newest. - python-version: "3.10" + # The Python the project builds with, bundled into every binary. How widely a + # Linux binary runs is set by the runner's glibc, which is why the Linux legs + # stay on ubuntu-22.04 rather than ubuntu-latest. + python-version: "3.14" - run: pip install . pyinstaller diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0cd786a..eae06c3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -38,7 +38,7 @@ jobs: - uses: actions/setup-python@v5 with: - python-version: "3.12" + python-version: "3.14" - run: pip install build twine diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e776ef..fb0b84f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,13 @@ one caveat SemVer makes for a leading zero: while the major version is still `0` ## [Unreleased] +### Added + +- **Python 3.14 is supported.** The full test suite passes on it, and CI now tests it on + Linux, Windows and macOS. Python 3.10 is still the oldest version MeshTerm runs on. +- **The standalone downloads are built with Python 3.14**, and carry it inside them in + place of 3.10. Nothing changes for how you run them. + ### Changed - **A type-1 node is a companion everywhere.** 0.9.0 called it three different things: