diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index c99d7f7bd..93b246ab8 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -36,7 +36,7 @@ jobs: with: python-version: ${{ env.PYTHON_DEFAULT_VERSION }} - name: Install dependencies - run: python -m pip install --upgrade nox pdm + run: python -m pip install --upgrade nox pdm==2.26.2 - name: Build the distribution id: build run: nox -vs build @@ -79,7 +79,7 @@ jobs: run: | sudo apt-get -y update sudo apt-get -y install patchelf scons - python -m pip install --upgrade nox pdm + python -m pip install --upgrade nox pdm==2.26.2 git config --global --add safe.directory '*' - name: Bundle the distribution id: bundle @@ -114,7 +114,7 @@ jobs: with: python-version: ${{ env.PYTHON_DEFAULT_VERSION }} - name: Install dependencies - run: python -m pip install --upgrade nox pdm + run: python -m pip install --upgrade nox pdm==2.26.2 - name: Bundle the distribution id: bundle shell: bash @@ -159,7 +159,7 @@ jobs: with: python-version: ${{ env.PYTHON_DEFAULT_VERSION }} - name: Install dependencies - run: python -m pip install --upgrade nox pdm + run: python -m pip install --upgrade nox pdm==2.26.2 - name: Build Dockerfile run: nox -vs generate_dockerfile - name: Set up QEMU diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 059f00d11..0aefc4b9b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: with: python-version: ${{ env.PYTHON_DEFAULT_VERSION }} - name: Install dependencies - run: python -m pip install --upgrade nox pdm + run: python -m pip install --upgrade nox pdm==2.26.2 - name: Run linters run: nox -vs lint - name: Validate new changelog entries @@ -47,7 +47,7 @@ jobs: with: python-version: ${{ env.PYTHON_DEFAULT_VERSION }} - name: Install dependencies - run: python -m pip install --upgrade nox pdm + run: python -m pip install --upgrade nox pdm==2.26.2 - name: Build the distribution run: nox -vs build cleanup_buckets: @@ -70,7 +70,7 @@ jobs: cache: "pip" - name: Install dependencies if: ${{ env.B2_TEST_APPLICATION_KEY != '' && env.B2_TEST_APPLICATION_KEY_ID != '' }} # TODO: skip this whole job instead - run: python -m pip install --upgrade nox pdm + run: python -m pip install --upgrade nox pdm==2.26.2 - name: Find and remove old buckets if: ${{ env.B2_TEST_APPLICATION_KEY != '' && env.B2_TEST_APPLICATION_KEY_ID != '' }} # TODO: skip this whole job instead run: nox -vs cleanup_buckets @@ -111,7 +111,7 @@ jobs: run: | brew install fish - name: Install dependencies - run: python -m pip install --upgrade nox pdm + run: python -m pip install --upgrade nox pdm==2.26.2 - name: Run unit tests run: nox -vs unit -p ${{ matrix.python-version }} - name: Run integration tests (without secrets) @@ -137,7 +137,7 @@ jobs: with: python-version: ${{ env.PYTHON_DEFAULT_VERSION }} - name: Install dependencies - run: python -m pip install --upgrade nox pdm + run: python -m pip install --upgrade nox pdm==2.26.2 - name: Generate Dockerfile run: nox -vs generate_dockerfile - name: Set up QEMU @@ -178,7 +178,7 @@ jobs: run: | sudo apt-get -y update sudo apt-get -y install patchelf scons - python -m pip install --upgrade nox pdm + python -m pip install --upgrade nox pdm==2.26.2 git config --global --add safe.directory '*' - name: Bundle the distribution id: bundle @@ -217,7 +217,7 @@ jobs: with: python-version: ${{ env.PYTHON_DEFAULT_VERSION }} - name: Install dependencies - run: python -m pip install --upgrade nox pdm + run: python -m pip install --upgrade nox pdm==2.26.2 - name: Bundle the distribution id: bundle shell: bash @@ -256,6 +256,6 @@ jobs: run: | sudo apt-get update -y sudo apt-get install -y graphviz plantuml - python -m pip install --upgrade nox pdm + python -m pip install --upgrade nox pdm==2.26.2 - name: Build the docs run: nox --non-interactive -vs doc diff --git a/CHANGELOG.md b/CHANGELOG.md index 76c621cd6..b907c1145 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,25 @@ upcoming release can be found in [changelog.d](changelog.d). +## [4.5.0](https://github.com/Backblaze/B2_Command_Line_Tool/releases/tag/v4.5.0) - 2026-01-08 + + +### Removed + +- Dropped support for python 3.8. + +### Fixed + +- Fixed SystemError buffer overflow crash on Python 3.14+ caused by rst2ansi's terminal size detection bug. The CLI now gracefully handles this error and continues to function normally. ([#1119](https://github.com/Backblaze/B2_Command_Line_Tool/issues/1119)) +- Disable Tqdm semaphore leak workaround for MacOS >= 15.7.2, as apparently it is no longer an issue in newer versions. + +### Infrastructure + +- Added Python 3.14 support to CI/CD pipeline and test matrix. +- Update CI to not use deprecated `macos-13` runner. +- Use b2sdk pytest plugin and utilities in tests. + + ## [4.4.2](https://github.com/Backblaze/B2_Command_Line_Tool/releases/tag/v4.4.2) - 2025-09-10 diff --git a/changelog.d/+b2sdk_testing.infrastructure.md b/changelog.d/+b2sdk_testing.infrastructure.md deleted file mode 100644 index 65e5b6164..000000000 --- a/changelog.d/+b2sdk_testing.infrastructure.md +++ /dev/null @@ -1 +0,0 @@ -Use b2sdk pytest plugin and utilities in tests. \ No newline at end of file diff --git a/changelog.d/+macos-13-deprecated.infrastructure.md b/changelog.d/+macos-13-deprecated.infrastructure.md deleted file mode 100644 index 9bbece518..000000000 --- a/changelog.d/+macos-13-deprecated.infrastructure.md +++ /dev/null @@ -1 +0,0 @@ -Update CI to not use deprecated `macos-13` runner. diff --git a/changelog.d/+python-3.14-support.infrastructure.md b/changelog.d/+python-3.14-support.infrastructure.md deleted file mode 100644 index e803e754c..000000000 --- a/changelog.d/+python-3.14-support.infrastructure.md +++ /dev/null @@ -1 +0,0 @@ -Added Python 3.14 support to CI/CD pipeline and test matrix. \ No newline at end of file diff --git a/changelog.d/+python38.removed.md b/changelog.d/+python38.removed.md deleted file mode 100644 index 0aaffd165..000000000 --- a/changelog.d/+python38.removed.md +++ /dev/null @@ -1 +0,0 @@ -Dropped support for python 3.8. \ No newline at end of file diff --git a/changelog.d/+tqdm-closer-new-macos.fixed.md b/changelog.d/+tqdm-closer-new-macos.fixed.md deleted file mode 100644 index 4b1f2adaf..000000000 --- a/changelog.d/+tqdm-closer-new-macos.fixed.md +++ /dev/null @@ -1 +0,0 @@ -Disable Tqdm semaphore leak workaround for MacOS >= 15.7.2, as apparently it is no longer an issue in newer versions. diff --git a/changelog.d/1119.fixed.md b/changelog.d/1119.fixed.md deleted file mode 100644 index e3eb9cfb5..000000000 --- a/changelog.d/1119.fixed.md +++ /dev/null @@ -1 +0,0 @@ -Fixed SystemError buffer overflow crash on Python 3.14+ caused by rst2ansi's terminal size detection bug. The CLI now gracefully handles this error and continues to function normally. \ No newline at end of file