<div dir="ltr">Hi Holger,<div><br></div><div>First: congrats on shipping 2.0, I&#39;m very excited to explore some of the new features.</div><div><br></div><div>Second:</div><div><br></div><div>Did tox drop Python 2.6 support? It started failing on our CI, so far the error I see is that tox imports argparse, but I guess it&#39;s setup.py does not depend on it. Can this be fixed?</div><div><br></div><div>Thanks!</div><div>Alex</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, May 12, 2015 at 5:46 PM, holger krekel <span dir="ltr">&lt;<a href="mailto:holger@merlinux.eu" target="_blank">holger@merlinux.eu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">tox-2.0: plugins, platform, env isolation<br>
==========================================<br>
<br>
tox-2.0 was released to pypi, a major new release with *mostly*<br>
backward-compatible enhancements and fixes:<br>
<br>
- experimental support for plugins, see <a href="https://testrun.org/tox/dev/plugins.html" target="_blank">https://testrun.org/tox/dev/plugins.html</a><br>
  which includes also a refined internal registration mechanism for new testenv<br>
  ini options.  You can now ask tox which testenv ini parameters exist<br>
  with ``tox --help-ini``.<br>
<br>
- ENV isolation: only pass through very few environment variables from the<br>
  tox invocation to the test environments.  This may break test runs that<br>
  previously worked with tox-1.9 -- you need to either use the<br>
  ``setenv`` or ``passenv`` ini variables to set appropriate environment<br>
  variables.<br>
<br>
- PLATFORM support: you can set ``platform=REGEX`` in your testenv sections<br>
  which lets tox skip the environment if the REGEX does not match ``sys.platform``.<br>
<br>
- tox now stops execution of test commands if the first of them fails unless<br>
  you set ``ignore_errors=True``.<br>
<br>
Thanks to Volodymyr Vitvitski, Daniel Hahler, Marc Abramowitz, Anthon van<br>
der Neuth and others for contributions.<br>
<br>
More documentation about tox in general:<br>
<br>
    <a href="http://tox.testrun.org/" target="_blank">http://tox.testrun.org/</a><br>
<br>
Installation:<br>
<br>
    pip install -U tox<br>
<br>
code hosting and issue tracking on bitbucket:<br>
<br>
    <a href="https://bitbucket.org/hpk42/tox" target="_blank">https://bitbucket.org/hpk42/tox</a><br>
<br>
What is tox?<br>
----------------<br>
<br>
tox standardizes and automates tedious test activities driven from a<br>
simple ``tox.ini`` file, including:<br>
<br>
* creation and management of different virtualenv environments<br>
  with different Python interpreters<br>
* packaging and installing your package into each of them<br>
* running your test tool of choice, be it nose, py.test or unittest2 or other tools such as &quot;sphinx&quot; doc checks<br>
* testing dev packages against each other without needing to upload to PyPI<br>
<br>
best,<br>
Holger Krekel, merlinux GmbH<br>
<br>
--<br>
about me:    <a href="http://holgerkrekel.net/about-me/" target="_blank">http://holgerkrekel.net/about-me/</a><br>
contracting: <a href="http://merlinux.eu" target="_blank">http://merlinux.eu</a><br>
<br>
2.0.0<br>
-----------<br>
<br>
- (new) introduce environment variable isolation:<br>
  tox now only passes the PATH and PIP_INDEX_URL variable from the tox<br>
  invocation environment to the test environment and on Windows<br>
  also ``SYSTEMROOT``, ``PATHEXT``, ``TEMP`` and ``TMP`` whereas<br>
  on unix additionally ``TMPDIR`` is passed.  If you need to pass<br>
  through further environment variables you can use the new ``passenv`` setting,<br>
  a space-separated list of environment variable names.  Each name<br>
  can make use of fnmatch-style glob patterns.  All environment<br>
  variables which exist in the tox-invocation environment will be copied<br>
  to the test environment.<br>
<br>
- a new ``--help-ini`` option shows all possible testenv settings and<br>
  their defaults.<br>
<br>
- (new) introduce a way to specify on which platform a testenvironment is to<br>
  execute: the new per-venv &quot;platform&quot; setting allows to specify<br>
  a regular expression which is matched against sys.platform.<br>
  If platform is set and doesn&#39;t match the platform spec in the test<br>
  environment the test environment is ignored, no setup or tests are attempted.<br>
<br>
- (new) add per-venv &quot;ignore_errors&quot; setting, which defaults to False.<br>
   If ``True``, a non-zero exit code from one command will be ignored and<br>
   further commands will be executed (which was the default behavior in tox &lt;<br>
   2.0).  If ``False`` (the default), then a non-zero exit code from one command<br>
   will abort execution of commands for that environment.<br>
<br>
- show and store in json the version dependency information for each venv<br>
<br>
- remove the long-deprecated &quot;distribute&quot; option as it has no effect these days.<br>
<br>
- fix issue233: avoid hanging with tox-setuptools integration example. Thanks simonb.<br>
<br>
- fix issue120: allow substitution for the commands section.  Thanks<br>
  Volodymyr Vitvitski.<br>
<br>
- fix issue235: fix AttributeError with --installpkg.  Thanks<br>
  Volodymyr Vitvitski.<br>
<br>
- tox has now somewhat pep8 clean code, thanks to Volodymyr Vitvitski.<br>
<br>
- fix issue240: allow to specify empty argument list without it being<br>
  rewritten to &quot;.&quot;.  Thanks Daniel Hahler.<br>
<br>
- introduce experimental (not much documented yet) plugin system<br>
  based on pytest&#39;s externalized &quot;pluggy&quot; system.<br>
  See tox/hookspecs.py for the current hooks.<br>
<br>
- introduce parser.add_testenv_attribute() to register an ini-variable<br>
  for testenv sections.  Can be used from plugins through the<br>
  tox_add_option hook.<br>
<br>
- rename internal files -- tox offers no external API except for the<br>
  experimental plugin hooks, use tox internals at your own risk.<br>
<br>
- DEPRECATE distshare in documentation<br>
<br>
<br>
_______________________________________________<br>
testing-in-python mailing list<br>
<a href="mailto:testing-in-python@lists.idyll.org">testing-in-python@lists.idyll.org</a><br>
<a href="http://lists.idyll.org/listinfo/testing-in-python" target="_blank">http://lists.idyll.org/listinfo/testing-in-python</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">&quot;I disapprove of what you say, but I will defend to the death your right to say it.&quot; -- Evelyn Beatrice Hall (summarizing Voltaire)<br>&quot;The people&#39;s good is the highest law.&quot; -- Cicero<br><div>GPG Key fingerprint: 125F 5C67 DFE9 4084</div></div></div>
</div>