-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Clean up tox.ini #8963
Clean up tox.ini #8963
Changes from all commits
d4711c9
e5002da
85f5138
316caaa
9d5ac0f
cadb661
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Clean up tox.ini file; disable coverage checking for non-test runs. |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,7 +7,9 @@ deps = | |
python-subunit | ||
junitxml | ||
coverage | ||
coverage-enable-subprocess | ||
|
||
# this is pinned since it's a bit of an obscure package. | ||
coverage-enable-subprocess==1.0 | ||
|
||
# cyptography 2.2 requires setuptools >= 18.5 | ||
# | ||
|
@@ -23,29 +25,37 @@ deps = | |
# install the "enum34" dependency of cryptography. | ||
pip>=10 | ||
|
||
setenv = | ||
PYTHONDONTWRITEBYTECODE = no_byte_code | ||
|
||
COVERAGE_PROCESS_START = {toxinidir}/.coveragerc | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this is replaced by a call to |
||
|
||
[testenv] | ||
deps = | ||
{[base]deps} | ||
extras = all, test | ||
|
||
whitelist_externals = | ||
sh | ||
|
||
Comment on lines
-35
to
-37
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this was unused afaict |
||
setenv = | ||
{[base]setenv} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
# use a postgres db for tox environments with "-postgres" in the name | ||
# (see https://tox.readthedocs.io/en/3.20.1/config.html#factors-and-factor-conditional-settings) | ||
postgres: SYNAPSE_POSTGRES = 1 | ||
|
||
# this is used by .coveragerc to refer to the top of our tree. | ||
TOP={toxinidir} | ||
|
||
passenv = * | ||
|
||
commands = | ||
/usr/bin/find "{toxinidir}" -name '*.pyc' -delete | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. related to the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Aren't they? I have plenty of That said, it's not obvious to me why we're deleting them (or preventing their generation) in the first place. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. oh, sorry, that's right. They're just in a different folder; they still have the .pyc name. I still think we should remove the removal. |
||
# Add this so that coverage will run on subprocesses | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this comment was added in https://github.com/matrix-org/synapse/pull/4225/files#diff-ef2cef9f88b4fe09ca3082140e67f5ad34fb65fb6e228f119d3812261ae51449R47, but the line to which it applied was removed (and replaced with |
||
{envbindir}/coverage run "{envbindir}/trial" {env:TRIAL_FLAGS:} {posargs:tests} {env:TOXSUFFIX:} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. #4225 added both |
||
# the "env" invocation enables coverage checking for sub-processes. This is | ||
# particularly important when running trial with `-j`, since that will make | ||
# it run tests in a subprocess, whose coverage would otherwise not be | ||
# tracked. (It also makes an explicit `coverage run` command redundant.) | ||
# | ||
# (See https://coverage.readthedocs.io/en/coverage-5.3/subprocess.html. | ||
# Note that the `coverage.process_startup()` call is done by | ||
# `coverage-enable-subprocess`.) | ||
# | ||
# we use "env" rather than putting a value in `setenv` so that it is not | ||
# inherited by other tox environments. | ||
# | ||
# keep this in sync with the copy in `testenv:py35-old`. | ||
# | ||
/usr/bin/env COVERAGE_PROCESS_START={toxinidir}/.coveragerc "{envbindir}/trial" {env:TRIAL_FLAGS:} {posargs:tests} {env:TOXSUFFIX:} | ||
|
||
# As of twisted 16.4, trial tries to import the tests as a package (previously | ||
# it loaded the files explicitly), which means they need to be on the | ||
|
@@ -80,10 +90,9 @@ deps = | |
|
||
lxml | ||
coverage | ||
coverage-enable-subprocess | ||
coverage-enable-subprocess==1.0 | ||
|
||
commands = | ||
/usr/bin/find "{toxinidir}" -name '*.pyc' -delete | ||
# Make all greater-thans equals so we test the oldest version of our direct | ||
# dependencies, but make the pyopenssl 17.0, which can work against an | ||
# OpenSSL 1.1 compiled cryptography (as older ones don't compile on Travis). | ||
|
@@ -92,7 +101,11 @@ commands = | |
# Install Synapse itself. This won't update any libraries. | ||
pip install -e ".[test]" | ||
|
||
{envbindir}/coverage run "{envbindir}/trial" {env:TRIAL_FLAGS:} {posargs:tests} {env:TOXSUFFIX:} | ||
# we have to duplicate the command from `testenv` rather than refer to it | ||
# as `{[testenv]commands}`, because we run on ubuntu xenial, which has | ||
# tox 2.3.1, and https://github.com/tox-dev/tox/issues/208. | ||
# | ||
/usr/bin/env COVERAGE_PROCESS_START={toxinidir}/.coveragerc "{envbindir}/trial" {env:TRIAL_FLAGS:} {posargs:tests} {env:TOXSUFFIX:} | ||
|
||
[testenv:benchmark] | ||
deps = | ||
|
@@ -157,7 +170,3 @@ deps = | |
{[base]deps} | ||
extras = all,mypy | ||
commands = mypy | ||
|
||
# To find all folders that pass mypy you run: | ||
# | ||
# find synapse/* -type d -not -name __pycache__ -exec bash -c "mypy '{}' > /dev/null" \; -print | ||
Comment on lines
-160
to
-163
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this has moved to |
Uh oh!
There was an error while loading. Please reload this page.