Skip to content

Releases: wntrblm/nox

2024.04.15 🪼

15 Apr 14:07
5656fce
Compare
Choose a tag to compare

We'd like to thank the following folks who contributed to this release:

New features:

  • Added support for PEP 723 (inline script metadata) with nox.project.load_toml by @henryiii in #811
  • Added support for micromamba by @henryiii in #807
  • Added venv_backend property to sessions by @henryiii in #798
  • Added the ability to use None to remove environment variables by @henryiii in #812
  • Added support for skipping sessions by default using default=False by @henryiii in #810

Bugfixes:

2024.03.02

02 Mar 23:40
4c8e891
Compare
Choose a tag to compare

We'd like to thank the following folks who contributed to this release:

New Features:

Bugfixes:

  • Rebuild environment when changing to an incompatible backend type by @henryiii in #781
  • Warn user when first argument to session.run is a list by @stefanv in #786
  • Allow overriding nox.options.sessions with --tags by @q0w in #684
  • Allow overriding NO_COLOR with --force-color by @stasfilin in #723
  • Fix nox.options.error_on_missing_interpreters when running in CI by @samypr100 in #725

Documentation Improvements:

Internal Changes:

2023.04.22

23 Apr 01:43
Compare
Choose a tag to compare

We'd like to thank the following folks who contributed to this release:

New Features:

Documentation Improvements:

  • style: spelling and grammar fixes by @scop in #682
  • Add invite link to the discord server to CONTRIBUTING.md by @dcermak in #679

Internal Changes:

Full Changelog: 2022.11.21...2023.04.22

2022.11.21 🦃

21 Nov 16:01
6957a4c
Compare
Choose a tag to compare

We'd like to thank the following folks who contributed to this release:

New features:

  • Include Python 3.11 classifier & testing (#655)

Improvements:

  • Fixed a few typos (#661, #660)
  • Drop dependency on py (#647)
  • nox.session.run now accepts a pathlib.Path for the command (#649)
  • Document nox.session.run's stdout and stderr arguments and add example of capturing output (#651)

Bugfixes:

  • GitHub Action: replace deprecated set-output command (#668)
  • GitHub Action: point docs to 2022.8.7 not latest (#664)
  • Docs: fix argument passing in session.posargs example (#653)
  • Include GitHub action helper in MANIFEST.in (#645)

Internal changes:

  • GitHub Action: move to 3.11 final (#667)
  • Cleanup Python 2 style code (#657)
  • Update tools used in pre-commit (#646, #656)

2022.8.7 🧚

08 Aug 00:16
ccade46
Compare
Choose a tag to compare

We'd like to thank the following folks who contributed to this release:

Removals:

  • Drop support for Python 3.6 (#526)
  • Disable running session.install outside a venv (#580)

New features:

  • Official Nox GitHub Action (#594, #606, #609, #620, #629, #637, #632, #633)
  • Missing interpreters now error the session on CI by default (#567)
  • Allow configurable child shutdown timeouts (#565)
  • Add session tags (#627)
  • Add short -N alias for --no-reuse-existing-virtualenvs (#639)
  • Export session name in NOX_CURRENT_SESSION environment variable (#641)

Improvements:

  • Add VENV_DIR to dev session in cookbook (#591)
  • Fix typo in tutorial.rst (#586)
  • Use consistent spelling for Nox in documentation (#581)
  • Support descriptions in tox-to-nox (#575)
  • Document that silent=True returns the command output (#578)
  • Support argcomplete v2 (#564)

Bugfixes:

  • Fix incorrect FileNotFoundError in load_nox_module (#571)

Internal changes:

  • Update the classifiers, documentation, and more to point to the new Winterbloom location (#587)
  • Support PEP 621 (pyproject.toml) (#616, #619)
  • Configure language code to avoid warning on sphinx build (#626)
  • Use latest GitHub action runners and include macOS (#613)
  • Jazz up the README with some badges/logo etc. (#605, #614)
  • Prefer type checking against Jinja2 (#610)
  • Introduce GitHub issue forms (#600, #603, #608)
  • Full strictness checking on mypy (#595, #596)
  • Drop 99% coverage threshold flag for 3.10 in noxfile (#593)
  • Create a requirements-dev.txt (#582)
  • Use myst-parser for Markdown docs (#561)

2022.1.7 🥳

07 Jan 23:25
Compare
Choose a tag to compare

Claudio Jolowicz, Diego Ramirez, and Tom Fleet have become maintainers of Nox. We'd like to thank the following folks who contributed to this release:

New features:

  • Add mamba backend (#444, #448, #546, #551)
  • Add session.debug to show debug-level messages (#489)
  • Add cookbook page to the documentation (#483)
  • Add support for the FORCE_COLOR environment variable (#524, #548)
  • Allow using session.chdir() as a context manager (#543)
  • Deprecate use of session.install() without a valid backend (#537)

Improvements:

  • Test against Python 3.10 (#495, $502, #506)
  • Add support for the channel option when using the conda backend (#522)
  • Show more specific error message when the --keywords expression contains a syntax error (#493)
  • Include reference to session.notify() in tutorial page (#500)
  • Document how session.run() fails and how to handle failures (#533)
  • Allow the list of sessions to be empty (#523)

Bugfixes:

  • Fix broken temporary directory when using session.chdir() (#555, #556)
  • Set the CONDA_PREFIX environment variable (#538)
  • Fix bin directory for the conda backend on Windows (#535)

Internal changes:

  • Replace deprecated load_module with exec_module (#498)
  • Include tests with source distributions (#552)
  • Add missing copyright notices (#509)
  • Use the new ReadTheDocs configurations (#527)
  • Bump the Python version used by ReadTheDocs to 3.8 (#496)
  • Improve the Sphinx config file (#499)
  • Update all linter versions (#528)
  • Add pre-commit and new checks (#530, #539)
  • Check MANIFEST.in during CI (#552)
  • Remove redundant LICENSE from MANIFEST.in (#505)
  • Make setuptools use the standard library's distutils to work around virtualenv bug. (#547, #549)
  • Use shlex.join() when logging a command (#490)
  • Use shutil.rmtree() over shelling out to rm -rf in noxfile (#519)
  • Fix missing Python 3.9 CI session (#529)
  • Unpin docs session and add --error-on-missing-interpreter to CI (#532)
  • Enable color output from Nox, pytest, and pre-commit during CI (#542)
  • Only run conda_tests session by default if user has conda installed (#521)
  • Update dependencies in requirements-conda-test.txt (#536)

2021.10.1 🎃

01 Oct 13:03
Compare
Choose a tag to compare

New features:

  • Add session.warn to output warnings (#482)
  • Add a shared session cache directory (#476)
  • Add session.invoked_from (#472)

Improvements:

  • Conda logs now respect nox.options.verbose (#466)
  • Add session.notify example to docs (#467)
  • Add friendlier message if no noxfile.py is found (#463)
  • Show the noxfile.py docstring when using nox -l (#459)
  • Mention more projects that use Nox in the docs (#460)

Internal changes:

  • Move configs into pyproject.toml or setup.cfg (flake8) (#484)
  • Decouple test_session_completer from project level noxfile (#480)
  • Run Flynt to convert str.format to f-strings (#464)
  • Add python 3.10.0-rc2 to GitHub Actions (#475, #479)
  • Simplify CI build (#461)
  • Use PEP 517 build system, remove setup.py, use setup.cfg (#456, #457, #458)
  • Upgrade to mypy 0.902 (#455)

Special thanks to our contributors:

2021.6.12

13 Jun 05:05
787dfaa
Compare
Choose a tag to compare
  • Fix crash on Python 2 when reusing environments. (#450)
  • Hide staleness check behind a feature flag. (#451)
  • Group command-line options in --help message by function. (#442)
  • Avoid polluting tests with a .nox directory. (#445)

2021.6.6

06 Jun 13:15
da48d3c
Compare
Choose a tag to compare
  • Add option --no-install to skip install commands in reused environments. (#432)
  • Add option --force-python as shorthand for --python and --extra-python. (#427)
  • Do not reuse environments if the interpreter or the environment type has changed. (#418, #425, #428)
  • Allow common variations in session names with parameters, such as double quotes instead of single quotes. Session names are considered equal if they produce the same Python AST. (#417, #434)
  • Preserve the order of parameters in session names. (#401)
  • Allow @nox.parametrize to select the session Python. (#413)
  • Allow passing posargs when scheduling another session via session.notify. (#397)
  • Prevent sessions from modifying each other's posargs. (#439)
  • Add nox.needs_version to specify Nox version requirements. (#388)
  • Add session.name to get the session name. (#386)
  • Gracefully shutdown child processes. (#393)
  • Decode command output using the system locale if UTF-8 decoding fails. (#380)
  • Fix creation of Conda environments when venv_params is used. (#420)
  • Various improvements to Nox's type annotations. (#376, #377, #378)
  • Remove outdated notes on Windows compatibility from the documentation. (#382)
  • Increase Nox's test coverage on Windows. (#300)
  • Avoid mypy searching for configuration files in other directories. (#402)
  • Replace AppVeyor and Travis CI by GitHub Actions. (#389, #390, #403)
  • Allow colorlog <7.0.0. (#431)
  • Drop contexter from test requirements. (#426)
  • Upgrade linters to the latest version. (#438)

2020.12.31

01 Jan 01:12
319c796
Compare
Choose a tag to compare
  • Fix NoxColoredFormatter.format(#374)
  • Use conda remove to clean up existing conda environments (#373)
  • Support users specifying an undeclared parametrization of python via --extra-python (#361)
  • Support double-digit minor version in python keyword (#367)
  • Add py.typed to manifest.in (#360)
  • Update nox to latest supported python versions. (#362)
  • Decouple merging of --python with nox.options from --sessions and --keywords (#359)
  • Do not merge command-line options in place (#357)