Release Notes - Versions 0.13.x

Version 0.13.21

New Features

  • Python 3.15 support

Bugs Fixed

  • Vendored packages and coverage failed to import on Python 3.15, which removed the legacy load_module() fallback from the import machinery. Both of PyBuilder’s meta path loaders now implement the PEP 451 create_module()/exec_module() protocol.
  • packaging 26.3 gave Requirement a __slots__ layout, breaking the project_name attribute PyBuilder attached to dependency requirements. Requirement names are now read from Requirement.name.

Removed Features

  • Removed compatibility workarounds for Python versions below 3.10

Vendorized Dependency Upgrades

  • Bumped vendorized dependencies, notably:
    • virtualenv 20.36.1 to 21.7.4, which splits interpreter discovery into a separate python-discovery package and no longer depends on click
    • importlib-metadata 8.7.1 to 9.0.0
    • packaging 26.0 to 26.3
    • importlib-resources 6.5.2 to 7.1.0
    • rich 14.3.2 to 15.0.0
    • wheel 0.46.3 to 0.48.0
    • setuptools to 84.0.0

Version 0.13.20

New Features

  • pyb -i / pyb --project-info — outputs the full project configuration as pretty-printed JSON without running a build. Runs plugin initializers to populate all properties but does not execute any tasks or create venvs. JSON goes to stdout; log messages go to stderr so the output is machine-parseable.

Version 0.13.19

New Features

Removed Features

Bugs Fixed

Version 0.13.18

Vendorized Dependency Upgrades

  • Bumped vendorized dependencies
  • Upgraded coveralls to ~=4.0

Version 0.13.17

New Features

Version 0.13.16

New Features

Vendorized Dependency Upgrades

  • Bumped vendorized dependencies

Version 0.13.14

New Features

  • Python 3.13 support
  • Fix CVE-2024-53899 in bundled VirtualEnv

Version 0.13.13

Removed Features

  • Dropped Python 3.8 support

Bugs Fixed

Vendorized Dependency Upgrades

  • Vendorize packaging directly to avoid #909

Version 0.13.12

Vendorized Dependency Upgrades

  • Vendorize latest dependencies

Version 0.13.11

New Features

  • Python 3.12 officially supported

Version 0.13.10

Bugs Fixed

Removed Features

  • Dropped Python 3.7 support

Version 0.13.9

New Features

Version 0.13.8

New Features

Version 0.13.7

Bugs Fixed

  • Coverage source_path trailing slash fix
  • Python 3.11b3 compatibility

Version 0.13.6

New Features

  • Python 3.11 support

Bugs Fixed

  • Fix multiprocessing spawn for Python 3.11+
  • Fix unittest.TestCase results API for Python 3.11+
  • Fix vendorization on Windows with cp1252 encoding

Removed Features

  • Dropped Python 3.6 support

Version 0.13.5

Vendorized Dependency Upgrades

  • Bumped vendorized dependencies

Version 0.13.4

New Features

  • PyPy 3.8 support
  • Flake8 upgraded to >=4.0
  • Coverage upgraded to >=6.0
  • Fix site-packages path for PyPy venvs

Version 0.13.3

New Features

Bugs Fixed

Version 0.13.2

New Features

Version 0.13.1

Bugs Fixed

Version 0.13.0

Removed Features

  • Removed support for Python 2.7 and 3.5.
  • Removed plugins for utilities no longer maintained:
    • Frosted
    • PyChecker
    • PyTDDMon
    • Snakefood

Infrastructure Upgrades

  • PyBuilder now builds with GitHub Actions on Linux, Windows and MacOS 10.15 and 11.
  • Migration to VirtualEnv 20+ provided full support for handling complex Windows and MacOS envionments.

Component & Dependency Upgrades

  • PIP ==21.2.4 (bundled in VirtualEnv)
  • setuptools ==58.1.0 (bundled in VirtualEnv)
  • wheel ==0.37.0 (bundled in VirtualEnv)
  • colorama ==0.4.4

Bugs Fixed