./devel/py-tox, Virtualenv-based automation of test activities

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 3.7.0, Package name: py27-tox-3.7.0, Maintainer: pkgsrc-users

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.

Required to run:
[devel/py-setuptools] [lang/python27] [devel/py-virtualenv] [devel/py-py] [lang/py-six] [devel/py-pluggy] [textproc/py-toml] [devel/py-filelock]

Required to build:
[pkgtools/cwrappers] [devel/py-setuptools_scm]

Master sites:

SHA1: 4092697eb490df7ccd6bc369e0515a673cfa5cf5
RMD160: 02e9a1cce930444b51bc7ddae05afa12bb511e25
Filesize: 261.576 KB

Version history: (Expand)

CVS history: (Expand)

   2019-01-13 19:02:41 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
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 PULL_REQUEST_TEMPLATE.md use relative instead of absolute URLs
  Fixed PULL_REQUEST_TEMPLATE.md path for changelog/examples.rst to \ 
   2018-12-31 13:23:08 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
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)
   2018-12-14 15:47:07 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
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
   2018-10-31 15:07:19 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
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 setup.py --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.
   2018-10-10 11:59:35 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
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.
   2018-10-07 10:32:22 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
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 <https://www.python.org/dev/peps/pep-0517/>_ source distribution \ 
support (create a
  .package virtual environment to perform build operations inside)
- flit <https://flit.readthedocs.io>_ 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
   2018-08-17 09:16:35 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
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.
   2018-07-05 12:57:20 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
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’s 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 \ 
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 we’ll 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().