Repository navigation
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 | ||
|
Member
Author
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. I'm not really sure why we had this. Why is it a problem if we write bytecode files? I think it is a hangover from some FUD that existed when we first started life on about python 2.4. (see https://docs.python.org/3/using/cmdline.html#envvar-PYTHONDONTWRITEBYTECODE for docs on it). |
||
| COVERAGE_PROCESS_START = {toxinidir}/.coveragerc | ||
|
Member
Author
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
Member
Author
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} | ||
|
Member
Author
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 | ||
|
Member
Author
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
Contributor
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.
Member
Author
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 | ||
|
Member
Author
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:} | ||
|
Member
Author
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
Member
Author
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.