pypi / nox
nox
What changed in nox 2026, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-19.
8 breaking3 new APIs and options4 performance5 behavior and defaults1 tooling13 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initnox 202634 changes
Breaking changes 8
Unrecognized global options now produce an error.
Script mode is isolated from an inherited PYTHONPATH.
Provisioning with uv no longer writes ~/.local/bin shims.
Python 3.15 requires virtualenv 21 or later.
The option is enforced even when log=False.
load_toml returns an empty dict when the script file is missing.
Python 3.9 support was dropped.
Fully non-ASCII session names are hashed instead of returning the envdir.
New APIs and options 3
Sessions can run in parallel experimentally; sessions must opt in, or use --allow-parallel.
Python ranges with only an upper bound can be downloaded.
The CommandFailed exception now exposes a return_code property.
Performance 4
Interpreter discovery results are cached.
Metadata reads are cached.
Session-name normalization is cached.
uv detection results are cached.
Behavior and default changes 5
Explicit command-line options take precedence over noxfile and alias values.
Interpreter discovery now uses python-discovery, which should find Python better and supports version specifier sets.
PEP 440 range interpreters are translated to conda version specs.
Script mode reads requires-python to determine Python requirements.
Modules are imported lazily on Python 3.15.
Tooling 1
Environment variables are shown in CLI help.
Fixes and other changes 13
The parallel reporter now supports legacy encodings, improving parallel-mode support on legacy Windows.
Python versions derived from classifiers are sorted.
Conda version constraints on Windows are corrected.
An empty inner @parametrize is retained when decorators are stacked.
Building the manifest no longer crashes when a python-matrix session has an empty parametrize.
The minimum version is corrected for major-only and multiple lower bounds.
python_versions() no longer crashes when max_version is major-only.
The fallback for --download-python is fixed.
Interpreter-resolution edge cases are fixed.
Nox no longer crashes when a parametrized session has an empty parameter list.
Script-mode pip resolution on Windows is fixed.
Missing parent directories for the session cache directory are created.
The converter now handles
=in set_env values and out-of-tree change_dir.