The NetBSD Project

CVS log for pkgsrc/devel/py-tox/Makefile

[BACK] Up to [] / pkgsrc / devel / py-tox

Request diff between arbitrary revisions

Default branch: MAIN

Revision 1.40 / (download) - annotate - [select for diffs], Fri Dec 1 19:30:50 2023 UTC (6 days, 11 hours ago) by adam
Branch: MAIN
Changes since 1.39: +2 -8 lines
Diff to previous 1.39 (colored)

py-tox: updated to 4.11.4



Fix terminal size of tox subcommands (fixes ipython, ipdb, prompt_toolkit, .
Fix quickstart command from requiring root positional argument
Added ϢppDatato the default passed environment variables on Windows.

Improved Documentation

Fix default value for install_command
Fix default value for base_python

Revision 1.39 / (download) - annotate - [select for diffs], Sat Oct 28 19:57:08 2023 UTC (5 weeks, 5 days ago) by wiz
Branch: MAIN
Changes since 1.38: +2 -1 lines
Diff to previous 1.38 (colored)

python/ simplify a lot, and switch to 'installer' for installation

This follows the recommended bootstrap method (flit_core, build, installer).

However, installer installs different files than pip, so update PLISTs
for all packages using and bump their PKGREVISIONs.

Revision 1.38 / (download) - annotate - [select for diffs], Sat Sep 16 04:28:01 2023 UTC (2 months, 3 weeks ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2023Q3-base, pkgsrc-2023Q3
Changes since 1.37: +2 -2 lines
Diff to previous 1.37 (colored)

py-tox: updated to 4.11.3

v4.11.3 (2023-09-08)
Bugfixes - 4.11.3
Handle FileNotFoundError when the base_python interpreter doesn exist
Improved Documentation - 4.11.3
Explain how plugins are registered and discovered

v4.11.2 (2023-09-07)
Bugfixes - 4.11.2
Fix bug in config.rst by removing stray colons left over from
Provide example to make CLI help more helpful for -x`/verride``
Improved Documentation - 4.11.2
Fix typos discovered by codespell

Revision 1.37 / (download) - annotate - [select for diffs], Tue Sep 5 18:56:43 2023 UTC (3 months ago) by adam
Branch: MAIN
Changes since 1.36: +2 -2 lines
Diff to previous 1.36 (colored)

py-tox: updated to 4.11.1

Allow passing in multiple overrides using the ; character and fix , being used as splitting values

Revision 1.36 / (download) - annotate - [select for diffs], Thu Aug 31 18:01:38 2023 UTC (3 months, 1 week ago) by adam
Branch: MAIN
Changes since 1.35: +14 -13 lines
Diff to previous 1.35 (colored)

py-tox: updated to 4.11.0

v4.11.0 (2023-08-29)
Features - 4.11.0
Add support for setting build backend config_settings in the configuration file

Revision 1.35 / (download) - annotate - [select for diffs], Thu Aug 24 20:33:39 2023 UTC (3 months, 2 weeks ago) by wiz
Branch: MAIN
Changes since 1.34: +2 -2 lines
Diff to previous 1.34 (colored)

py-tox: update to 4.10.0.

v4.10.0 (2023-08-21)

Features - 4.10.0

    Change accepted environment name rule: must be made up of
    factors defined in configuration or match regex
    (pypy|py|cython|)((\d(\.\d+(\.\d+)?)?)|\d+)?. If an environment
    name does not match this fail, and if a close match found
    suggest that to the user. (#3099)

Bugfixes - 4.10.0

    --override foo+=bar appending syntax will now work correctly
    when foo wasn defined in tox.ini. (#3100)

v4.9.0 (2023-08-16)

Features - 4.9.0

    Disallow command line environments which are not explicitly
    specified in the config file - by @tjsmart. (#2858)

v4.8.0 (2023-08-12)

Features - 4.8.0

    --override can now take options in the form of foo+=bar which
    will append bar to the end of an existing list/dict, rather
    than replacing it. (#3087)

v4.7.0 (2023-08-08)

Features - 4.7.0

    Make ashseed default to PYTHONHASHSEED, if defined - by
    @paravoid. The main motivation for this is to able to set the
    hash seed when building the documentation with ox -e docs
    and thus avoid embedding a random value in the tox documentation
    for elp. This caused documentation builds to fail to build
    reproducibly. (#2942)

Bugfixes - 4.7.0

    Update a regular expression in tests to match the exception
    message in both Python 3.12 and older. (#3065)

Improved Documentation - 4.7.0

    Fix broken links - by @gaborbernat. (#3072)

Revision 1.34 / (download) - annotate - [select for diffs], Tue Jul 25 08:53:30 2023 UTC (4 months, 2 weeks ago) by adam
Branch: MAIN
Changes since 1.33: +18 -22 lines
Diff to previous 1.33 (colored)

py-tox: updated to 4.6.4

Fix hang and zombie process on interrupt (CTRL-C).

Revision 1.33 / (download) - annotate - [select for diffs], Sat Jul 1 11:40:28 2023 UTC (5 months, 1 week ago) by wiz
Branch: MAIN
Changes since 1.32: +3 -3 lines
Diff to previous 1.32 (colored)

py-tox: update to 4.6.3.

v4.6.3 (2023-06-19)

Bugfixes - 4.6.3

    Ensure that get_requires_for_build_wheel is called before
    prepare_metadata_for_build_wheel, and get_requires_for_build_editable
    is called before prepare_metadata_for_build_editable - by
    @abravalheri. (#3043)

Improved Documentation - 4.6.3

    Linked environment variable substitutions docs in set_env and
    pass_env config docs. (#3039)

v4.6.2 (2023-06-16)

Bugfixes - 4.6.2

    Avoid cache collision between editable wheel build and normal
    wheel build by @f3flight. (#3035)

v4.6.1 (2023-06-15)

No significant changes.

v4.6.0 (2023-06-05)

Features - 4.6.0

    Addded --list-dependencies and --no-list-dependencies CLI
    parameters. If unspecified, defaults to listing when in CI,
    but not otherwise. (#3024)

Misc - 4.6.0


Revision 1.32 / (download) - annotate - [select for diffs], Sun May 28 17:01:46 2023 UTC (6 months, 1 week ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2023Q2-base, pkgsrc-2023Q2
Changes since 1.31: +12 -12 lines
Diff to previous 1.31 (colored)

py-tox: update to 4.5.2.

Bugfix release.

Revision 1.31 / (download) - annotate - [select for diffs], Mon May 1 09:38:55 2023 UTC (7 months, 1 week ago) by wiz
Branch: MAIN
Changes since 1.30: +39 -27 lines
Diff to previous 1.30 (colored)

py-tox: update to 4.5.1.

Major version 4 is a complete rewrite. Development history at

Revision 1.30 / (download) - annotate - [select for diffs], Wed Mar 29 09:34:10 2023 UTC (8 months, 1 week ago) by wiz
Branch: MAIN
Changes since 1.29: +3 -2 lines
Diff to previous 1.29 (colored)


Revision 1.29 / (download) - annotate - [select for diffs], Sun May 1 09:45:41 2022 UTC (19 months, 1 week ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2023Q1-base, pkgsrc-2023Q1, pkgsrc-2022Q4-base, pkgsrc-2022Q4, pkgsrc-2022Q3-base, pkgsrc-2022Q3, pkgsrc-2022Q2-base, pkgsrc-2022Q2
Changes since 1.28: +2 -2 lines
Diff to previous 1.28 (colored)

*: fix usage of versioned_dependencies

Remove unused includes, fix dependencies where it's not included.

Revision 1.28 / (download) - annotate - [select for diffs], Fri Feb 18 06:22:59 2022 UTC (21 months, 2 weeks ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2022Q1-base, pkgsrc-2022Q1
Changes since 1.27: +3 -3 lines
Diff to previous 1.27 (colored)


Revision 1.27 / (download) - annotate - [select for diffs], Thu Feb 17 10:21:08 2022 UTC (21 months, 2 weeks ago) by adam
Branch: MAIN
Changes since 1.26: +8 -9 lines
Diff to previous 1.26 (colored)

py-tox: updated to 3.24.5

v3.24.5 (2021-12-29)

- Fixed an issue where ``usedevelop`` would cause an invocation error if does not exist. -- by :user:`VincentVanlaer`

v3.24.4 (2021-09-16)

- Fixed handling of ``-e ALL`` in parallel mode by ignoring the ``ALL`` in subprocesses -- by :user:`guahki`.
- Prevent tox from using a truncated interpreter when using
  ``TOX_LIMITED_SHEBANG`` -- by :user:`jdknight`.

- Enabled the use of the favicon in the Sphinx docs first
  introduced in :pull:`764` but not integrated fully

v3.24.3 (2021-08-21)

- ``--parallel`` reports now show ASCII OK/FAIL/SKIP lines when full Unicode output is not available

- Started enforcing valid references in Sphinx docs -- :user:`webknjaz`

v3.24.2 (2021-08-18)

- include ``LC_ALL`` to implicit list of passenv variables

v3.24.1 (2021-07-31)

- ``get_requires_for_build_sdist`` hook (PEP 517) is assumed to return an empty list if left unimplemented by the backend build system

- The documentation of ``install_command`` now also mentions that you can provide arbitrary commands

v3.24.0 (2021-07-14)

- ``--devenv`` no longer modifies the directory in which the ``.tox`` environment is provisioned
- Fix show config when the package names are not in canonical form

- Extended environment variables section

- ``tox`` no longer shows deprecation warnings for ``distutils.sysconfig`` on
  Python 3.10

v3.23.1 (2021-05-05)

- Distinguish between normal Windows Python and MSYS2 Python when looking for
  virtualenv executable path.  Adds os.sep to :class:`~tox.interpreters.InterpreterInfo`
- Fix a ``tox-conda`` isolation build bug

- Update examples in the documentation to use ``setenv`` in the ``[testenv]`` sections, not wrongly in the ``[tox]`` main section.

- Enable building tox with ``setuptools_scm`` 6+ by :user:`hroncok`

v3.23.0 (2021-03-03)

- tox can now be invoked with a new ``--no-provision`` flag that prevents provision,
  if :conf:`requires` or :conf:`minversion` are not satisfied,
  tox will fail;
  if a path is specified as an argument to the flag
  (e.g. as ``tox --no-provision missing.json``) and provision is prevented,
  provision metadata are written as JSON to that path
- Unicode support in ``pyproject.toml``

v3.22.0 (2021-02-16)

- The value of the :conf:`requires` configuration option is now exposed via
  the :class:`tox.config.Config` object

v3.21.4 (2021-02-02)

- Adapt tests not to assume the ``easy_install`` command exists, as it was removed from ``setuptools`` 52.0.0+

v3.21.3 (2021-01-28)

- Fix a killed tox (via SIGTERM) leaving the commands subprocesses running
  by handling it as if it were a KeyboardInterrupt

v3.21.2 (2021-01-19)

- Newer coverage tools update the ``COV_CORE_CONTEXT`` environment variable, add it to the list of environment variables
  that can change in our pytest plugin

v3.21.1 (2021-01-13)

- Fix regression that broke using install_command in config replacements
- Fix regression parsing posargs default containing colon.

- Prevent .tox in envlist

- Enable building tox with ``setuptools_scm`` 4 and 5 by :user:`hroncok`

v3.21.0 (2021-01-08)

- Fix the false ``congratulations`` message that appears when a ``KeyboardInterrupt`` occurs during package installation.
- Fix ``platform`` support for ``install_command``.
- Fixed regression in v3.20.0 that caused escaped curly braces in setenv
  to break usage of the variable elsewhere in tox.ini.
- Prevent ``{}`` and require ``{:`` is only followed by ``}``.
- Raise ``MissingSubstitution`` on access of broken ini setting.

- Allow \{ and \} in default of {env:key:default}.
- Allow {posargs} in setenv.
- Allow {/} to refer to os.sep.
- Make parsing [testenv] sections in setup.cfg official.
- Relax importlib requirement to allow 3.0.0 or any newer version

- Document more info about using ``platform`` setting.
- Replace ``indexserver`` in documentation with environment variables
- Document that the ``passenv`` environment setting is case insensitive.

Revision 1.26 / (download) - annotate - [select for diffs], Tue Jan 25 09:05:11 2022 UTC (22 months, 1 week ago) by wiz
Branch: MAIN
Changes since 1.25: +2 -2 lines
Diff to previous 1.25 (colored)

*: use for py-importlib-metadata

Revision 1.25 / (download) - annotate - [select for diffs], Thu Jan 13 19:31:22 2022 UTC (22 months, 3 weeks ago) by wiz
Branch: MAIN
Changes since 1.24: +2 -2 lines
Diff to previous 1.24 (colored)

*: setuptools_scm: switch to versioned_dependencies

Revision 1.24 / (download) - annotate - [select for diffs], Wed Jan 5 15:41:08 2022 UTC (23 months ago) by wiz
Branch: MAIN
Changes since 1.23: +4 -2 lines
Diff to previous 1.23 (colored)

python: add USE_PKG_RESOURCES flag

This flag should be set for packages that import pkg_resources
and thus need setuptools after the build step.

Set this flag for packages that need it and bump PKGREVISION.

Revision 1.23 / (download) - annotate - [select for diffs], Tue Jan 4 20:53:44 2022 UTC (23 months ago) by wiz
Branch: MAIN
Changes since 1.22: +2 -1 lines
Diff to previous 1.22 (colored)

*: bump PKGREVISION for users

They now have a tool dependency on py-setuptools instead of a DEPENDS

Revision 1.22 / (download) - annotate - [select for diffs], Tue Nov 9 20:34:41 2021 UTC (2 years ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2021Q4-base, pkgsrc-2021Q4
Changes since 1.21: +2 -2 lines
Diff to previous 1.21 (colored)

*: convert packaging to lang/python/

Revision 1.21 / (download) - annotate - [select for diffs], Tue Oct 27 23:03:55 2020 UTC (3 years, 1 month ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2021Q3-base, pkgsrc-2021Q3, pkgsrc-2021Q2-base, pkgsrc-2021Q2, pkgsrc-2021Q1-base, pkgsrc-2021Q1, pkgsrc-2020Q4-base, pkgsrc-2020Q4
Changes since 1.20: +16 -11 lines
Diff to previous 1.20 (colored)

py-tox: updated to 3.20.1

v3.20.1 (2020-10-09)

- Relax importlib requirement to allow version<3 - by :user:`usamasadiq`

v3.20.0 (2020-09-01)

- Allow hyphens and empty factors in generative section name. - by :user:`tyagdit`
- Support for PEP517 in-tree build backend-path key in ``get-build-requires``. - by :user:`nizox`
- Allow escaping curly braces in setenv. - by :user:`mkenigs`

- Support for comments within ``setenv`` and environment files via the ``files|`` prefix. - by :user:`gaborbernat`

v3.19.0 (2020-08-06)

- skip ``setup.cfg`` if it has no ``tox:tox`` namespace - by :user:`hroncok`

- Implement support for building projects
  having :pep:`517#in-tree-build-backends` ``backend-path`` setting -
- Don't require a tox config file for ``tox --devenv`` - by :user:`hroncok`

- Fixed grammar in top-level documentation - by :user:`tfurf`

v3.18.1 (2020-07-28)

- Fix ``TypeError`` when using isolated_build with backends that are not submodules (e.g. ``maturin``)

v3.18.0 (2020-07-23)

Deprecations (removal in next major release)
- Add allowlist_externals alias to whitelist_externals (whitelist_externals is now deprecated). - by :user:`dajose`

v3.17.1 (2020-07-15)

- Fix tests when the ``HOSTNAME`` environment variable is set, but empty string - by :user:`hroncok`

v3.17.0 (2020-07-14)

- The long arguments ``--verbose`` and ``--quiet`` (rather than only their short forms, ``-v`` and ``-q``) are now accepted.
- The ``ResultLog`` now prefers ``HOSTNAME`` environment variable value (if set) over the full qualified domain name of localhost.
  This makes it possible to disable an undesired DNS lookup,
  which happened on all ``tox`` invocations, including trivial ones - by :user:`hroncok`

- Update packaging information for Flit.

v3.16.1 (2020-06-29)

- Fixed the support for using ``{temp_dir}`` in ``tox.ini`` - by :user:`webknjaz`

v3.16.0 (2020-06-26)

- Allow skipping the package and installation step when passing the ``--skip-pkg-install``. This should be used in pair with the ``--notest``, so you can separate environment setup and test run:

   .. code-block:: console

      tox -e py --notest
      tox -e py --skip-pkg-install

- Improve config parsing performance by precompiling commonly used regular expressions - by :user:`brettlangdon`

v3.15.2 (2020-06-06)

- Add an option to allow a process to suicide before sending the SIGTERM. - by :user:`jhesketh`
- PyPy 7.3.1 on Windows uses the ``Script`` folder instead of ``bin``. - by :user:`gaborbernat`

- Allow to run the tests with pip 19.3.1 once again while preserving the ability to use pip 20.1 - by :user:`hroncok`

v3.15.1 (2020-05-20)

- ``tox --showconfig`` no longer tries to interpolate '%' signs.

v3.15.0 (2020-05-02)

- Respect attempts to change ``PATH`` via ``setenv`` - by :user:`aklajnert`.
- Fix parsing of architecture in python interpreter name. - by :user:`bruchar1`
- Prevent exception when command is empty. - by :user:`bruchar1`
- Fix irrelevant Error message for invalid argument when running outside a directory with tox support files by :user:`nkpro2000sr`.

- Allow parallel mode without arguments. - by :user:`ssbarnea`
- Allow generative section name expansion. - by :user:`bruchar1`
- default to passing the env var PIP_EXTRA_INDEX_URL by :user:`georgealton`.

- Improve documentation about config by adding tox environment description at start - by :user:`stephenfin`.

v3.14.6 (2020-03-25)

- Exclude virtualenv dependency versions with known
  regressions (20.0.[0-7]) - by :user:`webknjaz`.
- Fix ``tox -h`` and ``tox --hi`` shows an error when run outside a directory with tox support files by :user:`nkpro2000sr`.
- Fix ValueError on ``tox -l`` for a ``tox.ini`` file that does not contain an
  ``envlist`` definition. - by :user:`jquast`.

v3.14.5 (2020-02-16)

- Add ``--discover`` (fallback to ``TOX_DISCOVER`` environment variable via path separator) to inject python executables
  to try as first step of a discovery - note the executable still needs to match the environment by :user:`gaborbernat`.

v3.14.4 (2020-02-13)

- Bump minimal six version needed to avoid using one incompatible with newer
  virtualenv. - by :user:`ssbarnea`
- Avoid pypy test failure due to undefined printout var. - by :user:`ssbarnea`

- Add ``interrupt_timeout`` and ``terminate_timeout`` that configure delay between SIGINT, SIGTERM and SIGKILL when tox is interrupted. - by :user:`sileht`
- Add ``HTTP_PROXY``, ``HTTPS_PROXY`` and ``NO_PROXY`` to default passenv. - by :user:`pfmoore`

v3.14.3 (2019-12-27)

- Relax importlib requirement to allow either version 0 or 1 - by :user:`chyzzqo2`

- Clarify legacy error message: python projects should commit to a strong consistency of message regarding packaging. We no-longer tell people to add a to their already configured pep-517 project, otherwise it could imply that pyproject.toml isn't as well supported and recommended as it truly is - by :user:`graingert`

v3.14.2 (2019-12-02)

- Fix fallback to global configuration when running in Jenkins. - by :user:`daneah`
- Fix colouring on windows: colorama is a dep. - by :user:`1138-4EB`

- improve performance with internal lookup of Python version information - by :user:`blueyed`
- Use latest version of importlib_metadata package - by :user:`kammala`
- Mark poetry related tests as xfail since its dependency pyrsistent won't install in ci due to missing wheels/build deps. - by :user:`RonnyPfannschmidt`

v3.14.1 (2019-11-13)

- fix reporting of exiting due to (real) signals - by :user:`blueyed`
- Bump minimal virtualenv to 16.0.0 to improve own transitive
  deps handling in some ancient envs. by :user:`webknjaz`
- Adds ``CURL_CA_BUNDLE``, ``REQUESTS_CA_BUNDLE``, ``SSL_CERT_FILE`` to the default passenv values. - by :user:`ssbarnea`
- Fix nested tox execution in the parallel mode by separating the environment
  variable that let's tox know it is invoked in the parallel mode
  (``_TOX_PARALLEL_ENV``) from the variable that informs the tests that tox is
  running in parallel mode (``TOX_PARALLEL_ENV``).
- Fix provisioning from a pyvenv interpreter. by :user:`kentzo`

Deprecations (removal in next major release)
- Python ``3.4`` is no longer supported. by :user:`gaborbernat`

v3.14.0 (2019-09-03)

- Fix ``PythonSpec`` detection of ``python3.10`` - by :user:`asottile`
- Fix regression failing to detect future and past ``py##`` factors  - by :user:`asottile`
- Fix ``current_tox_py`` for ``pypy`` / ``pypy3`` - by :user:`asottile`
- Honor environment markers in ``requires`` list - by :user:`asottile`
- improve recreate check by allowing directories containing ``.tox-config1`` (the marker file created by tox) - by :user:`asottile`
- Recognize correctly interpreters that have suffixes (like python3.7-dbg).

- Add support for minor versions with multiple digits ``tox -e py310`` works for ``python3.10`` - by :user:`asottile`
- Remove dependence on ``md5`` hashing algorithm - by :user:`asottile`

- clarify behaviour if recreate is set to false - by :user:`PJCampi`

- ix relative URLs to files in the repo in ``.github/`` by :user:`webknjaz`
- Replace ``importlib_metadata`` backport with ``importlib.metadata``
  from the standard library on Python ``3.8+`` - by :user:`hroncok`
- Render the change fragment help on the ``docs/changelog/`` directory view on GitHub

Revision 1.20 / (download) - annotate - [select for diffs], Mon Aug 31 23:07:02 2020 UTC (3 years, 3 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2020Q3-base, pkgsrc-2020Q3
Changes since 1.19: +3 -3 lines
Diff to previous 1.19 (colored)

*: switch to for py-setuptools

Revision 1.19 / (download) - annotate - [select for diffs], Sat May 16 17:38:40 2020 UTC (3 years, 6 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2020Q2-base, pkgsrc-2020Q2
Changes since 1.18: +4 -2 lines
Diff to previous 1.18 (colored)

pytest from versioned deps.

Revision 1.18 / (download) - annotate - [select for diffs], Wed May 29 19:56:50 2019 UTC (4 years, 6 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2020Q1-base, pkgsrc-2020Q1, pkgsrc-2019Q4-base, pkgsrc-2019Q4, pkgsrc-2019Q3-base, pkgsrc-2019Q3, pkgsrc-2019Q2-base, pkgsrc-2019Q2
Changes since 1.17: +5 -4 lines
Diff to previous 1.17 (colored)

py-tox: updated to 3.12.1


- Ensure TOX_WORK_DIR is a native string in os.environ
- Fix import and usage of winreg for python2.7 on windows
- Fix Windows selects incorrect spec on first discovery



- When using --parallel with --result-json the test results are now included the same way as with serial runs
- Turns out the output of the py -0p is not stable yet and varies depending on various edge cases. Instead now we read the interpreter values directly from registry via PEP-514

- Adding TOX_PARALLEL_NO_SPINNER environment variable to disable the spinner in parallel mode for the purposes of clean output when using CI tools

Revision 1.17 / (download) - annotate - [select for diffs], Fri May 17 08:39:14 2019 UTC (4 years, 6 months ago) by adam
Branch: MAIN
Changes since 1.16: +3 -2 lines
Diff to previous 1.16 (colored)

py-tox: updated to 3.11.1


- When creating virtual environments we no longer ask the python to tell its path, but rather use the discovered path.


- --showconfig overhaul:
  - now fully generated via the config parser, so anyone can load it by using the built-in python config parser
  - the tox section contains all configuration data from config
  - the tox section contains a host_python key detailing the path of the host python
  - the tox:version section contains the versions of all packages tox depends on with their version
  - passing -l now allows only listing default target envs
  - allows showing config for a given set of tox environments only via the -e cli flag or the TOXENV environment
    variable, in this case the tox and tox:version section is only shown if at least one verbosity flag is passed
  this should help inspecting the options.


- fix for tox -l command: do not allow setting the TOXENV or the -e flag to override the listed default environment variables, they still show up under extra if non defined target
- tox ignores unknown CLI arguments when provisioning is on and outside of the provisioned environment (allowing
  provisioning arguments to be forwarded freely)

- Virtual environments created now no longer upgrade pip/wheel/setuptools to the latest version. Instead the start
  packages after virtualenv creation now is whatever virtualenv has bundled in. This allows faster virtualenv
  creation and builds that are easier to reproduce.
- Improve python discovery and add architecture support:
   - UNIX:
     - First, check if the tox host Python matches.
     - Second, check if the the canonical name (e.g. python3.7, python3) matches or the base python is an absolute path, use that.
     - Third, check if the the canonical name without version matches (e.g. python, pypy) matches.

   - Windows:
     - First, check if the tox host Python matches.
     - Second, use the py.exe to list registered interpreters and any of those match.
     - Third, check if the the canonical name (e.g. python3.7, python3) matches or the base python is an absolute path, use that.
     - Fourth, check if the the canonical name without version matches (e.g. python, pypy) matches.
     - Finally, check for known locations (c:\python{major}{minor}\python.exe).
  tox environment configuration generation is now done in parallel (to alleviate the slowdown due to extra


- Fix congratulations when using ^C during virtualenv creation

- Allow having inline comments in :conf:deps

Revision 1.16 / (download) - annotate - [select for diffs], Tue Apr 9 07:51:41 2019 UTC (4 years, 8 months ago) by adam
Branch: MAIN
Changes since 1.15: +4 -2 lines
Diff to previous 1.15 (colored)

py-tox: updated to 3.8.6


- :conf:parallel_show_output does not work with tox 3.8


- the isolated build env now ignores :conf:sitepackages, :conf:deps and :conf:description as these do not make
- Do not print timings with more than 3 decimal digits on Python 3


- Fix sdist creation on python2.x when there is non-ascii output.
- fix typos in that made it impossible to install package with requirements in pyproject.toml


- don't crash when version information is not available for a proposed base python
- Do not print exception traceback when the provisioned tox fails


- using -v and -e connected (as -ve) fails
- Changes to the plugin tester module (cmd no longer sets PYTHONPATH), and action.popen no longer returns the
  command identifier information from within the logs. No public facing changes.
- Spinner fails in CI on UnicodeEncodeError


- The -eALL command line argument now expands the envlist key and includes all its environment.
- Isolated build environment dependency overrides were not taken in consideration (and such it inherited the deps
  from the testenv section)
- --result-json puts the command into setup section instead of test (pre and post commands are now also correctly
  put into the commands section)
- Set setup.cfg encoding to UTF-8 as it contains Unicode characters.
- Fix tox CI, better error reporting when locating via the py fails


- In a posix shell, setting the PATH environment variable to an empty value is equivalent to not setting it at all;
  therefore we no longer if the user sets PYTHONPATH an empty string on python 3.4 or later
- Fixed bug of children process calls logs clashing (log already exists)
- Interpreter discovery and virtualenv creation process calls that failed will now print out on the screen their output
  (via the logfile we automatically save)
- Using py2 and py3 with a specific basepython will no longer raise a warning unless the major version conflicts
- Fix missing error for tox -e unknown when tox.ini declares envlist.
- Resolve symlinks with toxworkdir
- Interrupting a tox call (e.g. via CTRL+C) now will ensure that spawn child processes (test calls, interpreter discovery,
  parallel sub-instances, provisioned hosts) are correctly stopped before exiting (via the pattern of INTERRUPT - 300 ms,
  TERMINATE - 200 ms, KILL signals)
- Fix a ResourceWarning: unclosed file in Action
- Fix deadlock when using --parallel and having environments with lots of output
- Removed code that sometimes caused a difference in results between --parallel and -p when using posargs

- tox now auto-provisions itself if needed (see :ref:auto-provision). Plugins or minimum version of tox no longer
  need to be manually satisfied by the user, increasing their ease of use.
- tox will inject the TOX_PARALLEL_ENV environment variable, set to the current running tox environment name,
  only when running in parallel mode.
- Parallel children now save their output to a disk logfile
- Parallel children now are added to --result-json
- Display pattern and sys.platform with platform mismatch
- Setting the environment variable TOX_REPORTER_TIMESTAMP to 1 will enable showing for each output line its delta
  since the tox startup. This can be especially handy when debugging parallel runs.

- Add a poetry examples to packaging

Revision 1.15 / (download) - annotate - [select for diffs], Sun Jan 13 18:02:41 2019 UTC (4 years, 10 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2019Q1-base, pkgsrc-2019Q1
Changes since 1.14: +2 -2 lines
Diff to previous 1.14 (colored)

py-tox: updated to 3.7.0


- Parallel mode added (alternative to detox which is being deprecated), for more details see :ref:parallel_mode
- Added command line shortcut -s for --skip-missing-interpreters

Deprecations (removal in next major release)
- Whitelisting of externals will be mandatory in tox 4: issue a deprecation warning as part of the already existing warning

- Clarify explanations in examples and avoid unsupported end line comments
- Set to use relative instead of absolute URLs
  Fixed path for changelog/examples.rst to docs/changelog/examples.rst

Revision 1.14 / (download) - annotate - [select for diffs], Mon Dec 31 12:23:08 2018 UTC (4 years, 11 months ago) by adam
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

py-tox: updated to 3.6.1


- if the packaging phase successfully builds a package set it as environment variable under TOX_PACKAGE (useful to make assertions on the built package itself, instead of just how it ends up after installation)

Revision 1.13 / (download) - annotate - [select for diffs], Fri Dec 14 14:47:07 2018 UTC (4 years, 11 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q4-base, pkgsrc-2018Q4
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored)

py-tox: updated  to 3.6.0


- On windows, check sys.executable before others for interpreter version lookup.  This matches what happens on non-windows.
- Don't rewrite {posargs} substitution for absolute paths.
- Correctly fail tox --notest when setup fails.

- Update Contributor Covenant URL to use https://
- Correct the capitalization of PyPI throughout the documentation
- Link to related projects (Invoke and Nox) from the documentation

- Include the license file in the wheel distribution

Revision 1.12 / (download) - annotate - [select for diffs], Wed Oct 31 14:07:19 2018 UTC (5 years, 1 month ago) by adam
Branch: MAIN
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

py-tox: updated to 3.5.3


- Fix bug with incorrectly defactorized dependencies
- do the same transformation to egg_info folders that pkg_resources does;
  this makes it possible for hyphenated names to use the develop-inst-noop optimization (cf. 910),
  which previously only worked with non-hyphenated egg names
- previously, if a project's --name emitted extra information to
  stderr, tox would capture it and consider it part of the project's name; now,
  emissions to stderr are printed to the console
- change the way we acquire interpreter information to make it compatible with jython interpreter, note to create jython envs one needs virtualenv > 16.0 which will be released later

- document substitutions with additional content starting with a space cannot be alone on a line inside the ini file
- change the spelling of a single word from contrains to the proper word, constraints
- Mention the minimum version required for commands_pre/commands_post support.

Revision 1.11 / (download) - annotate - [select for diffs], Wed Oct 10 09:59:34 2018 UTC (5 years, 1 month ago) by adam
Branch: MAIN
Changes since 1.10: +4 -3 lines
Diff to previous 1.10 (colored)

py-tox: updated to 3.5.2

- session packages are now put inside a numbered directory (instead of prefix numbering it,
  because pip fails when wheels are not named according to PEP-491 , and prefix numbering messes with this)

- level three verbosity (-vvv) show the packaging output

- fix regression with 3.5.0: specifying --installpkg raises AttributeError: 'str' object has no attribute 'basename'

- intermittent failures with --parallel--safe-build, instead of mangling with the file paths now uses a lock to make the package build operation thread safe and is now on by default (--parallel--safe-build is now deprecated)

- Added temp_dir folder configuration (defaults to {toxworkdir}/.tmp) that contains tox
  temporary files. Package builds now create a hard link (if possible, otherwise copy - notably in
  case of Windows Python 2.7) to the built file, and feed that file downstream (e.g. for pip to
  install it). The hard link is removed at the end of the run (what it points though is kept
  inside distdir). This ensures that a tox session operates on the same package it built, even
  if a parallel tox run builds another version. Note distdir will contain only the last built
  package in such cases.

Revision 1.10 / (download) - annotate - [select for diffs], Sun Oct 7 08:32:22 2018 UTC (5 years, 2 months ago) by adam
Branch: MAIN
Changes since 1.9: +12 -8 lines
Diff to previous 1.9 (colored)

py-tox: updated to 3.4.0


- add --exists-action w to default pip flags to handle better VCS dependencies
- instead of assuming the Python version from the base python name ask the interpreter to reveal the version for the ignore_basepython_conflict flag
- PEP-517 packaging fails with sdist already exists, fixed via ensuring the dist folder is empty before invoking the backend and pypa/setuptools

- add commands_pre and commands_post that run before and after running
  the commands (setup runs always, commands only if setup suceeds, teardown always - all
  run until the first failing command)
- pyproject.toml config support initially by just inline the tox.ini under tool.tox.legacy_tox_ini key; config source priority order is pyproject.toml, tox.ini and then setup.cfg
- use the os environment variable TOX_SKIP_ENV to filter out tox environment names from the run list (set by envlist)
- always set PIP_USER=0 (do not install into the user site package, but inside the virtual environment created) and PIP_NO_DEPS=0 (installing without dependencies can cause broken package installations) inside tox
- tox will inject some environment variables that to indicate a command is running within tox: TOX_WORK_DIR env var is set to the tox work directory,
  TOX_ENV_NAME is set to the current running tox environment name, TOX_ENV_DIR is set to the current tox environments working dir
- While running tox invokes various commands (such as building the package, pip installing dependencies and so on), these were printed in case they failed as Python arrays. Changed the representation to a shell command, allowing the users to quickly replicate/debug the failure on their own
- skip missing interpreters value from the config file can now be overridden via the --skip-missing-interpreters cli flag
- keep additional environments config order when listing them
- allow injecting config value inside the ini file dependent of the fact that we're connected to an interactive shell or not
- do not build sdist if skip install is specified for the envs to be run
- when verbosity level increases above two start passing through verbosity flags to pip
- when discovering the interpreter to use check if the tox host Python matches and use that if so
- -vv will print out why a virtual environment is re-created whenever this operation is triggered

- clarify that python and pip refer to the virtual environments executable
- add Sphinx and mkdocs example of generating documentation via tox
- specify that setup.cfg tox configuration needs to be inside the tox:tox namespace


- fix TOX_LIMITED_SHEBANG when running under python3

- PEP-517 <>_ source distribution support (create a
  .package virtual environment to perform build operations inside)
- flit <>_ support via implementing PEP-517
- packaging now is exposed as a hook via tox_package(session, venv)

- Updated the VSTS build YAML to use the latest jobs and pools syntax

Revision 1.9 / (download) - annotate - [select for diffs], Fri Aug 17 07:16:35 2018 UTC (5 years, 3 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q3-base, pkgsrc-2018Q3
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)

py-tox: updated to 3.2.1

- --parallel--safe-build no longer cleans up its folders (distdir, distshare, log).

- Switch pip invocations to use the module -m pip instead of direct invocation. This could help
  avoid some of the shebang limitations.
- Ability to specify package requirements for the tox run via the tox.ini (tox section under key requires - PEP-508
style): can be used to specify both plugin requirements or build dependencies.
- Allow to run multiple tox instances in parallel by providing the
  --parallel--safe-build flag.

Revision 1.8 / (download) - annotate - [select for diffs], Thu Jul 5 10:57:20 2018 UTC (5 years, 5 months ago) by adam
Branch: MAIN
Changes since 1.7: +10 -2 lines
Diff to previous 1.7 (colored)

py-tox: updated to 3.0.0

Write directly to stdout buffer if possible to prevent str vs bytes issues
fix 672 reporting to json file when skip-missing-interpreters option is used
avoid Requested Python version (X.Y) not installed stderr output when a Python environment is looked up using the py Python launcher on Windows and the environment is not found installed on the system
Fixed an issue where invocation of tox from the Python package, where invocation errors (failed actions) occur results in a change in the sys.stdout stream encoding in Python 3.x. New behaviour is that sys.stdout is reset back to its original encoding after invocation errors
The reading of command output sometimes failed with IOError: [Errno 0] Error on Windows, this was fixed by using a simpler method to update the read buffers.
(only affected rc releases) fix up tox.cmdline to be callable without args
(only affected rc releases) Revert breaking change of tox.cmdline not callable with no args
(only affected rc releases) fix 755 by reverting the cmdline import to the old location and changing the entry point instead

tox displays exit code together with InvocationError
Hint for possible signal upon InvocationError, on posix systems
Add a -q option to progressively silence tox output. For each time you specify -q to tox, the output provided by tox reduces. This option allows you to see only your command output without the default verbosity of what tox is doing. This also counter-acts usage of -v. For example, running tox -v -q ... will provide you with the default verbosity. tox -vv -q is equivalent to tox -v. By @sigmavirus24
add support for negated factor conditions, e.g. !dev: production_log
Headings like installed: <packages> will not be printed if there is no output to display after the :, unless verbosity is set. By @cryvate
Allow spaces in command line options to pip in deps. Where previously only deps=-rreq.txt and deps=--requirement=req.txt worked, now also deps=-r req.txt and deps=--requirement req.txt work
drop Python 2.6 and 3.3 support: setuptools dropped supporting these, and as we depend on it wel follow up with doing the same (use tox <= 2.9.1 if you still need this support)
Add tox_runenvreport as a possible plugin, allowing the overriding of the default behaviour to execute a command to get the installed packages within a virtual environment
Forward PROCESSOR_ARCHITECTURE by default on Windows to fix platform.machine().

Revision 1.7 / (download) - annotate - [select for diffs], Wed Oct 4 12:43:55 2017 UTC (6 years, 2 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q2-base, pkgsrc-2018Q2, pkgsrc-2018Q1-base, pkgsrc-2018Q1, pkgsrc-2017Q4-base, pkgsrc-2017Q4
Changes since 1.6: +8 -4 lines
Diff to previous 1.6 (colored)

py-tox: update to 2.9.1

* integrated new release process and fixed changelog rendering for

Revision 1.6 / (download) - annotate - [select for diffs], Mon Sep 11 05:23:20 2017 UTC (6 years, 2 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2017Q3-base, pkgsrc-2017Q3
Changes since 1.5: +2 -2 lines
Diff to previous 1.5 (colored)

* stop env var leakage if popen failed with resultjson or redirect

Revision 1.5 / (download) - annotate - [select for diffs], Sat Sep 9 22:45:59 2017 UTC (6 years, 2 months ago) by joerg
Branch: MAIN
Changes since 1.4: +2 -1 lines
Diff to previous 1.4 (colored)

Add missing dependency.

Revision 1.4 / (download) - annotate - [select for diffs], Wed Sep 6 15:42:23 2017 UTC (6 years, 3 months ago) by adam
Branch: MAIN
Changes since 1.3: +4 -2 lines
Diff to previous 1.3 (colored)

- p599: fix problems with implementation of 515.
         Substitutions from other sections were not made anymore if they were not in `envlist`.

- 276: Remove easy_install from docs (TL;DR: use pip).
- 301: Expand nested substitutions in tox.ini
- 315: add --help and --version to helptox-quickstart
- 326: Fix OSError 'Not a directory' when creating env on Jython 2.7.0.
- 429: Forward MSYSTEM by default on Windows
- 449: add multi platform example to the docs.
- 474: Start using setuptools_scm for tag based versioning.
- 484: Renamed `py.test` to `pytest` throughout the project
- 504: With `-a`: do not show additional environments header if there are none
- 515: Don't require environment variables in test environments where they
       are not used.
- 517: Forward NUMBER_OF_PROCESSORS by default on Windows to fix
- 518: Forward `USERPROFILE` by default on Windows.
- p528: Fix some of the warnings displayed by pytest 3.1.0.
- p547: Add regression test for 137
- p553: Add an XFAIL test to reproduce upstream bug 203
- p556: Report more meaningful errors on why virtualenv creation failed
- 575: Add announcement doc to end all announcement docs
       (using only CHANGELOG and Github issues since 2.5 already)
- p580: Do not ignore Sphinx warnings anymore
- 585: Expand documentation to explain pass through of flags from deps to pip
       (e.g. -rrequirements.txt, -cconstraints.txt)
- 588: Run pytest wit xfail_strict and adapt affected tests.

Revision 1.3 / (download) - annotate - [select for diffs], Mon Sep 4 18:00:52 2017 UTC (6 years, 3 months ago) by wiz
Branch: MAIN
Changes since 1.2: +2 -2 lines
Diff to previous 1.2 (colored)

Comment out dead sites.

Revision 1.2 / (download) - annotate - [select for diffs], Wed Apr 26 13:25:29 2017 UTC (6 years, 7 months ago) by fhajny
Branch: MAIN
CVS Tags: pkgsrc-2017Q2-base, pkgsrc-2017Q2
Changes since 1.1: +4 -4 lines
Diff to previous 1.1 (colored)

Update devel/py-tox to 2.7.0.


- #p450: Stop after the first installdeps and first testenv create hooks
- #271 and #464: Improve environment information for users.
- #464: Fix incorrect egg-info location for modified package_dir in
- #431: Add 'LANGUAGE' to default passed environment variables.
- #455: Add a Vagrantfile with a customized Arch Linux box for local testing.
- #454: Revert #407, empty commands is not treated as an error.
- #446: (infrastructure) Travis CI tests for tox now also run on OS X now.


- add "alwayscopy" config option to instruct virtualenv to always copy
  files instead of symlinking.
- pass setenv variables to during a usedevelop install.
- replace all references to with readthedocs ones.
- fix #323 by avoiding virtualenv14 is not used on py32
- add Python 3.6 to envlist and CI.
- fix glob resolution from TOX_TESTENV_PASSENV env variable


- slightly backward incompatible: fix issue310: the {posargs} substitution
  now properly preserves the tox command line positional arguments. Positional
  arguments with spaces are now properly handled.
- fix #359: add COMSPEC to default passenv on windows.
- add support for py36 and py37 and add py36-dev and py37(nightly) to
  travis builds of tox.
- fix #348: add py2 and py3 as default environments pointing to
  "python2" and "python3" basepython executables.  Also fix #347 by
  updating the list of default envs in the tox basic example.
- make "-h" and "--help-ini" options work even if there is no tox.ini,
- add {:} substitution, which is replaced with os-specific path
- fix #305: ``downloadcache`` test env config is now ignored as pip-8
  does caching by default.
- output from install command in verbose (-vv) mode is now printed to console instead of
  being redirected to file
- fix #399.  Make sure {envtmpdir} is created if it doesn't exist at the
  start of a testenvironment run.
- fix #316: Lack of commands key in ini file is now treated as an error.
  Reported virtualenv status is 'nothing to do' instead of 'commands
  succeeded', with relevant error message displayed.


- fix issue380: properly perform substitution again.


- remove PYTHONPATH from environment during the install phase because a
  tox-run should not have hidden dependencies and the test commands will also
  not see a PYTHONPATH.
- fix issue352: prevent a configuration where envdir==toxinidir and
  refine docs to warn people about changing "envdir".
- fix issue375, fix issue330: warn against integration as
  " test" should really just test with the current interpreter.
- fix issue302: allow cross-testenv substitution where we substitute
  with ``{x,y}`` generative syntax.
- fix issue212: allow escaping curly brace chars "\{" and "\}" if you need the
  chars "{" and "}" to appear in your commands or other ini values.
- addresses issue66: add --workdir option to override where tox stores its ".tox" directory
  and all of the virtualenv environment.
- introduce per-venv list_dependencies_command which defaults
  to "pip freeze" to obtain the list of installed packages.
- close issue66: add documentation to jenkins page on how to avoid
  "too long shebang" lines when calling pip from tox.
- new list_dependencies_command to influence how tox determines
  which dependencies are installed in a testenv.
- (experimental) New feature: When a search for a config file fails, tox tries loading
  setup.cfg with a section prefix of "tox".
- fix issue275: Introduce hooks ``tox_runtest_pre``` and
  ``tox_runtest_post`` which run before and after the tests of a venv,
- fix issue317: evaluate minversion before tox config is parsed completely.
- added the "extras" environment option to specify the extras to use when doing the
  sdist or develop install.
- use pytest-catchlog instead of pytest-capturelog (latter is not
  maintained, uses deprecated pytest API)


- fix issue314: fix command invocation with .py scripts on windows.
- fix issue279: allow cross-section substitution when the value contains


- fix issue294: re-allow cross-section substitution for setenv.


- DEPRECATE use of "indexservers" in tox.ini.
- fix issue285: make setenv processing fully lazy to fix regressions
  of tox-2.2.X and so that we can now have testenv attributes like
  "basepython" depend on environment variables that are set in
  a setenv section.
- allow "#" in commands.
- fix issue289: fix build_sphinx target
- fix issue252: allow environment names with special characters.
- introduce experimental tox_testenv_create(venv, action) and
  tox_testenv_install_deps(venv, action) hooks to allow
  plugins to do additional work on creation or installing
- internal: push some optional object creation into tests because
  tox core doesn't need it.


- fix bug where {envdir} substitution could not be used in setenv
  if that env value is then used in {basepython}.


- fix issue265 and add LD_LIBRARY_PATH to passenv on linux by default
  because otherwise the python interpreter might not start up in
  certain configurations (redhat software collections).
- fix issue246: fix regression in config parsing by reordering
  such that {envbindir} can be used again in tox.ini.
- fix issue99: the {env:...} substitution now properly uses environment
  settings from the ``setenv`` section.
- fix issue281: make --force-dep work when urls are present in
  dependency configs.
- fix issue174: add new ``ignore_outcome`` testenv attribute which
  can be set to True in which case it will produce a warning instead
  of an error on a failed testenv command outcome.
- fix issue280: properly skip missing interpreter if
  {envsitepackagesdir} is present in commands.

Revision 1.1 / (download) - annotate - [select for diffs], Sun Nov 8 09:21:52 2015 UTC (8 years, 1 month ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2017Q1-base, pkgsrc-2017Q1, pkgsrc-2016Q4-base, pkgsrc-2016Q4, pkgsrc-2016Q3-base, pkgsrc-2016Q3, pkgsrc-2016Q2-base, pkgsrc-2016Q2, pkgsrc-2016Q1-base, pkgsrc-2016Q1, pkgsrc-2015Q4-base, pkgsrc-2015Q4

Import py-tox-2.1.1 as devel/py-tox.

Tox is a generic virtualenv management and test command line tool
you can use for:

* checking your package installs correctly with different Python
  versions and interpreters
* running your tests in each of the environments, configuring your
  test tool of choice
* acting as a frontend to Continuous Integration servers, greatly
  reducing boilerplate and merging CI and shell-based testing.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

CVSweb <>