summary refs log tree commit diff
path: root/tox.ini (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Configure `tox` to use `venv` (#12015)Richard van der Hoff2022-02-171-0/+5
| | | As the comment says, virtualenv is a pile of fail.
* Drop support for and remove references to EOL Python 3.6 (#11683)Shay2022-01-211-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * remove reference in comments to python3.6 * upgrade tox python env in script * bump python version in example for completeness * upgrade python version requirement in setup doc * upgrade necessary python version in __init__.py * upgrade python version in setup.py * newsfragment * drops refs to bionic and replace with focal * bump refs to postgres 9.6 to 10 * fix hanging ci * try installing tzdata first * revert change made in b979f336 * ignore new random mypy error while debugging other error * fix lint error for temporary workaround * revert change to install list * try passing env var * export debian frontend var? * move line and add comment * bump pillow dependency * bump lxml depenency * install libjpeg-dev for pillow * bump automat version to one compatible with py3.8 * add libwebp for pillow * bump twisted trunk python version * change suffix of newsfragment * remove redundant python 3.7 checks * lint
* Drop EOL python 3.6 from CI (#11595)Shay2021-12-211-1/+1
| | | | | | | | | | | * remove python 3.6 and postgres 9.6 from github workflow * remove python 3.6 env from tox * newsfragment * correct postgres version * add py310 to tox env list
* Add `--run-background-updates` option to `update_database` script. (#10954)Nick Barrett2021-10-061-1/+1
| | | | Signed-off-by: Nick Barrett <nick@beeper.com>
* Teach MANIFEST and tox about ci->.ciDavid Robertson2021-08-111-1/+1
|
* Kill off the .buildkite dir completelyDavid Robertson2021-08-101-1/+1
|
* Run `black` on the scripts (#9981)Richard van der Hoff2021-05-141-0/+10
| | | | Turns out these scripts weren't getting linted.
* Remove various bits of compatibility code for Python <3.6 (#9879)Andrew Morgan2021-04-271-6/+3
| | | I went through and removed a bunch of cruft that was lying around for compatibility with old Python versions. This PR also will now prevent Synapse from starting unless you're running Python 3.6+.
* Update tox.ini to remove py35Richard van der Hoff2021-04-081-8/+6
|
* unpin olddeps build from py36Richard van der Hoff2021-04-081-2/+2
|
* Fix incompatibility with tox 2.5Richard van der Hoff2021-04-081-6/+12
| | | | | Apparently on tox 2.5, `usedevelop` overrides `skip_install`, so we end up trying to install the full dependencies even for the `-old` environment.
* Revert requiring a specific version of Twisted for mypy checks. (#9618)Patrick Cloke2021-03-151-2/+0
|
* Use the proper Request in type hints. (#9515)Patrick Cloke2021-03-011-0/+2
| | | | This also pins the Twisted version in the mypy job for CI until proper type hints are fixed throughout Synapse.
* Fix Python 3.5 old deps build by using a compatible pip version. (#9217)Patrick Cloke2021-01-251-8/+7
| | | | | Co-authored-by: Dan Callahan <danc@element.io> pip 21.0 stopped supporting Python 3.5.
* Merge tag 'v1.26.0rc2' into developPatrick Cloke2021-01-251-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Synapse 1.26.0rc2 (2021-01-25) ============================== Bugfixes -------- - Fix receipts and account data not being sent down sync. Introduced in v1.26.0rc1. ([\#9193](https://github.com/matrix-org/synapse/issues/9193), [\#9195](https://github.com/matrix-org/synapse/issues/9195)) - Fix chain cover update to handle events with duplicate auth events. Introduced in v1.26.0rc1. ([\#9210](https://github.com/matrix-org/synapse/issues/9210)) Internal Changes ---------------- - Add an `oidc-` prefix to any `idp_id`s which are given in the `oidc_providers` configuration. ([\#9189](https://github.com/matrix-org/synapse/issues/9189)) - Bump minimum `psycopg2` version to v2.8. ([\#9204](https://github.com/matrix-org/synapse/issues/9204))
| * Bump psycopg2 version (#9204)Erik Johnston2021-01-221-1/+1
| | | | | | As we use `execute_values` with the `fetch` parameter.
* | Align the directories linted in CI with the defaults in scripts-dev/lint.sh ↵Andrew Morgan2021-01-211-1/+2
|/ | | | | (#9191) The lists of source directories to lint between `tox.ini` and `lint.sh` became out of sync. This PR tightens them up and adds some comments reminding any future readers to keep the list in sync.
* Fix the Python 3.5 old-deps build. (#9146)Patrick Cloke2021-01-181-0/+3
| | | setuptools 51.0.0 dropped support for Python 3.5.
* Run the linters on a consistent list of files (#9038)Richard van der Hoff2021-01-081-3/+17
| | | | | We were running some linters on some files and some on others. Extract a common setting and use it everywhere.
* tox: Add a -noextras factor (#9030)Richard van der Hoff2021-01-071-2/+6
| | | ... for running the tests with no optional deps.
* Clean up tox.ini (#8963)Richard van der Hoff2020-12-171-19/+28
| | | ... and disable coverage tracking for mypy and friends.
* Minor updates to docs on how to run tests (#8666)Dan Callahan2020-10-271-5/+0
| | | | | | | | | | | | | | | | | | The test runner isn't present in the `[all]` set of extras, so the previous instructions did not work without also installing `[test]`. Note that this does not include the `[lint]` extras, since those do not install on all supported Python versions (specifically, isort 5.x requires Python 3.6, while we still support 3.5). Instructions for that are included in our pull request template, so we should be fine there. I've also dropped the `--no-use-pep517` arg to `pip install` since it seems to have been added to address a temporary regression in pip 19.1 which was fixed in pip 19.1.1 the following month. Lastly, updated the example output of the test suite to set more realistic expectations around run time. Signed-off-by: Dan Callahan <danc@element.io>
* Note support for Python 3.9 (#8665)Dan Callahan2020-10-271-1/+1
| | | | | As expected, all tests pass locally without modification. Signed-off-by: Dan Callahan <danc@element.io>
* Update mypy to 0.790, and move dependencies to extras (#8583)Jonathan de Jong2020-10-201-3/+1
|
* Fix mypy error: auth handler "checkpw" internal function type mismatch (#8569)Jonathan de Jong2020-10-191-1/+0
|
* Do not check lint/test dependencies at runtime. (#8377)Patrick Cloke2020-09-231-5/+3
| | | moves non-runtime dependencies out of synapse.python_dependencies (test and lint)
* Move lint dependencies to extras_require (#8330)Jonathan de Jong2020-09-171-8/+2
| | | | | Lint dependencies can now be installed with pip install -e ".[lint]" This should help keep the version in sync between tox and documentation.
* Allow running mypy directly. (#8175)Patrick Cloke2020-08-261-51/+1
|
* Add type hints for state. (#8140)Patrick Cloke2020-08-241-0/+1
|
* Add type hints to synapse.handlers.room (#8090)Erik Johnston2020-08-141-1/+2
|
* Add type hints to handlers.message and events.builder (#8067)Erik Johnston2020-08-121-0/+2
|
* Fix typing for notifier (#8064)Erik Johnston2020-08-121-0/+2
|
* Merge remote-tracking branch 'origin/develop' into erikj/type_serverErik Johnston2020-08-111-0/+1
|\
| * Add typing info to Notifier (#8058)Erik Johnston2020-08-111-0/+1
| |
* | Change HomeServer definition to work with typing.Erik Johnston2020-08-111-0/+1
|/ | | | | | | | | | Duplicating function signatures between server.py and server.pyi is silly. This commit changes that by changing all `build_*` methods to `get_*` methods and changing the `_make_dependency_method` to work work as a descriptor that caches the produced value. There are some changes in other files that were made to fix the typing in server.py.
* Rename database classes to make some sense (#8033)Erik Johnston2020-08-051-1/+1
|
* Fix some comments and types in service notices (#7996)Patrick Cloke2020-07-311-0/+1
|
* Convert storage layer to async/await. (#7963)Patrick Cloke2020-07-281-0/+1
|
* Fix up types and comments that refer to Deferreds. (#7945)Patrick Cloke2020-07-241-0/+1
|
* Lint the contrib/ directory in CI and linting scripts, add synctl to linting ↵Andrew Morgan2020-07-201-1/+1
| | | | | | | script (#7914) Run `isort`, `flake8` and `black` over the `contrib/` directory and `synctl` script. The latter was already being done in CI, but now the linting script does it too. Fixes https://github.com/matrix-org/synapse/issues/7910
* isort 5 compatibility (#7786)Will Hunt2020-07-051-2/+2
| | | The CI appears to use the latest version of isort, which is a problem when isort gets a major version bump. Rather than try to pin the version, I've done the necessary to make isort5 happy with synapse.
* Type checking for `FederationHandler` (#7770)Richard van der Hoff2020-07-011-0/+1
| | | fix a few things to make this pass mypy.
* Make tox actions work on Debian 10 (#7703)Dagfinn Ilmari Mannsåker2020-06-251-4/+2
| | | | | | - Remove the requirement for a specific version of Python - Move dep comment to a separate line, Tox 3.7.0 like trailing ones Signed-off-by: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
* Clean up exception handling in SAML2ResponseResource (#7614)Richard van der Hoff2020-06-031-0/+1
| | | | | | | | | | | | | * Expose `return_html_error`, and allow it to take a Jinja2 template instead of a raw string * Clean up exception handling in SAML2ResponseResource * use the existing code in `return_html_error` instead of re-implementing it (giving it a jinja2 template rather than inventing a new form of template) * do the exception-catching in the REST layer rather than in the handler layer, to make sure we catch all exceptions.
* mypy for synapse.http.site (#7553)Richard van der Hoff2020-05-221-0/+1
|
* fix mypy for tests/replication (#7518)Richard van der Hoff2020-05-181-1/+1
|
* Add type hints to room member handlers (#7513)Patrick Cloke2020-05-151-0/+2
|
* Add type hints to event_auth code. (#7505)Patrick Cloke2020-05-151-0/+1
|
* Merge branch 'release-v1.13.0' into developAndrew Morgan2020-05-111-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * release-v1.13.0: Don't UPGRADE database rows RST indenting Put rollback instructions in upgrade notes Fix changelog typo Oh yeah, RST Absolute URL it is then Fix upgrade notes link Provide summary of upgrade issues in changelog. Fix ) Move next version notes from changelog to upgrade notes Changelog fixes 1.13.0rc1 Documentation on setting up redis (#7446) Rework UI Auth session validation for registration (#7455) Fix errors from malformed log line (#7454) Drop support for redis.dbid (#7450)
| * Rework UI Auth session validation for registration (#7455)Patrick Cloke2020-05-081-0/+1
| | | | | | | | Be less strict about validation of UI authentication sessions during registration to match client expecations.
* | Implement OpenID Connect-based login (#7256)Quentin Gliech2020-05-081-0/+1
| |
* | Add more type hints to SAML handler. (#7445)Patrick Cloke2020-05-071-0/+1
| |
* | Fix typing annotations in synapse/federation (#7382)Richard van der Hoff2020-05-051-5/+1
| | | | | | | | We're pretty close to having mypy working for `synapse.federation`, so let's finish the job.
* | Add MultiWriterIdGenerator. (#7281)Erik Johnston2020-05-041-0/+1
|/ | | | | | This will be used to coordinate stream IDs across multiple writers. Functions as the equivalent of both `StreamIdGenerator` and `SlavedIdTracker`.
* Persist user interactive authentication sessions (#7302)Patrick Cloke2020-04-301-1/+2
| | | | | By persisting the user interactive authentication sessions to the database, this fixes situations where a user hits different works throughout their auth session and also allows sessions to persist through restarts of Synapse.
* Fix limit logic for EventsStream (#7358)Richard van der Hoff2020-04-291-0/+2
| | | | | | | | | | | | | | | | | | | * Factor out functions for injecting events into database I want to add some more flexibility to the tools for injecting events into the database, and I don't want to clutter up HomeserverTestCase with them, so let's factor them out to a new file. * Rework TestReplicationDataHandler This wasn't very easy to work with: the mock wrapping was largely superfluous, and it's useful to be able to inspect the received rows, and clear out the received list. * Fix AssertionErrors being thrown by EventsStream Part of the problem was that there was an off-by-one error in the assertion, but also the limit logic was too simple. Fix it all up and add some tests.
* Extend StreamChangeCache to support multiple entities per stream ID (#7303)Richard van der Hoff2020-04-221-1/+3
| | | | | | | | | | | | | | | | | | | First some background: StreamChangeCache is used to keep track of what "entities" have changed since a given stream ID. So for example, we might use it to keep track of when the last to-device message for a given user was received [1], and hence whether we need to pull any to-device messages from the database on a sync [2]. Now, it turns out that StreamChangeCache didn't support more than one thing being changed at a given stream_id (this was part of the problem with #7206). However, it's entirely valid to send to-device messages to more than one user at a time. As it turns out, this did in fact work, because *some* methods of StreamChangeCache coped ok with having multiple things changing on the same stream ID, and it seems we never actually use the methods which don't work on the stream change caches where we allow multiple changes at the same stream ID. But that feels horribly fragile, hence: let's update StreamChangeCache to properly support this, and add some typing and some more tests while we're at it. [1]: https://github.com/matrix-org/synapse/blob/release-v1.12.3/synapse/storage/data_stores/main/deviceinbox.py#L301 [2]: https://github.com/matrix-org/synapse/blob/release-v1.12.3/synapse/storage/data_stores/main/deviceinbox.py#L47-L51
* Do not treat display names as globs for push rules. (#7271)Patrick Cloke2020-04-161-0/+1
|
* Add typing information to federation_server. (#7219)Patrick Cloke2020-04-071-0/+1
|
* Refactor the CAS code (move the logic out of the REST layer to a handler) ↵Patrick Cloke2020-03-261-0/+1
| | | | (#7136)
* Add prometheus metrics for the number of active pushers (#7103)Richard van der Hoff2020-03-191-0/+2
|
* Add type annotations and comments to auth handler (#7063)Patrick Cloke2020-03-121-0/+1
|
* Allow deleting an alias if the user has sufficient power level (#6986)Patrick Cloke2020-03-041-0/+1
|
* Add some type annotations to the federation base & client classes (#6995)Patrick Cloke2020-02-281-0/+2
|
* Add some type annotations in `synapse.storage` (#6987)Richard van der Hoff2020-02-271-2/+3
| | | | | I cracked, and added some type definitions in synapse.storage.
* Port PresenceHandler to async/await (#6991)Erik Johnston2020-02-261-0/+1
|
* Clarify list/set/dict/tuple comprehensions and enforce via flake8 (#6957)Patrick Cloke2020-02-211-0/+1
| | | | Ensure good comprehension hygiene using flake8-comprehensions.
* Add type hints to the spam check module (#6915)Patrick Cloke2020-02-141-0/+1
| | | | Add typing information to the spam checker modules.
* Add typing to synapse.federation.sender (#6871)Erik Johnston2020-02-071-0/+1
|
* Add typing to SyncHandler (#6821)Erik Johnston2020-02-031-0/+1
| | | | Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Fix sending server up commands from workers (#6811)Erik Johnston2020-01-301-0/+1
| | | | Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
* Fixup synapse.rest to pass mypy (#6732)Erik Johnston2020-01-201-2/+1
|
* Fixup synapse.api to pass mypy (#6733)Erik Johnston2020-01-201-0/+1
|
* Fixup synapse.replication to pass mypy checks (#6667)Erik Johnston2020-01-141-0/+1
|
* Remove unused, undocumented "content repo" resource (#6628)Richard van der Hoff2020-01-031-1/+0
| | | | | | This looks like it got half-killed back in #888. Fixes #6567.
* Bump version of mypyErik Johnston2019-12-121-1/+1
|
* Include more folders in mypyErik Johnston2019-12-121-1/+13
|
* Add benchmarks for structured logging performance (#6266)Amber Brown2019-12-031-0/+9
|
* Python 3.8 for tox (#6341)Richard van der Hoff2019-11-071-1/+1
| | | | | | | ... and update INSTALL.md to include py3.8. We'll also have to update the buildkite pipeline to run it
* Update black to 19.10b0 (#6304)Amber Brown2019-11-011-2/+2
| | | * update version of black and also fix the mypy config being overridden
* Update CI to run isort on scripts and scripts-dev (#6270)Andrew Morgan2019-10-301-1/+1
|
* Remove redundant arguments to CI's flake8 (#6277)Andrew Morgan2019-10-301-1/+1
|
* Add comment as to why we're pinning black in testsErik Johnston2019-10-291-1/+1
|
* Pin black versionErik Johnston2019-10-291-1/+1
|
* Add config linting script that checks for bool casing (#6203)Andrew Morgan2019-10-231-0/+1
| | | | | Add a linting script that enforces all boolean values in the default config be lowercase. This has annoyed me for a while so I decided to fix it.
* Fix presence timeouts when synchrotron restarts. (#6212)Erik Johnston2019-10-181-1/+1
| | | | | | | | | * Fix presence timeouts when synchrotron restarts. Handling timeouts would fail if there was an external process that had timed out, e.g. a synchrotron restarting. This was due to a couple of variable name typoes. Fixes #3715.
* Refactor HomeserverConfig so it can be typechecked (#6137)Amber Brown2019-10-101-2/+1
|
* Fix for structured logging tests stomping on logs (#6023)Amber Brown2019-09-131-6/+24
|
* Fix coverage in sytest and use plugins for buildkite (#5922)Amber Brown2019-08-291-13/+9
|
* Implement a structured logging output system. (#5680)Amber Brown2019-08-281-0/+10
|
* Run Black. (#5482)Amber Brown2019-06-201-3/+6
|
* Remove Python 2.7 support. (#5425)Amber Brown2019-06-121-2/+2
| | | | | | | | * remove 2.7 from CI and publishing * fill out classifiers and also make it not be installed on 3.5 * some minor bumps so that the old deps work on python 3.5
* Pin eliot to <1.8 on python 3.5.2 (#5218)Richard van der Hoff2019-05-211-1/+1
| | | | | | | | | | * Pin eliot to <1.8 on python 3.5.2 Fixes https://github.com/matrix-org/synapse/issues/5199 * Add support for 'markers' to python_dependencies * tell xargs not to strip quotes
* set PIP_USE_PEP517 = False for testsRichard van der Hoff2019-04-251-0/+5
| | | | | pip 19.1 otherwise complains about "editable mode is not supported for pyproject.toml-style projects"
* Add comment back inErik Johnston2019-03-191-0/+1
|
* Revert changesErik Johnston2019-03-191-12/+2
|
* Bring py27-old into line with other test envsErik Johnston2019-03-181-0/+14
|
* Add coverage to py27-oldErik Johnston2019-03-181-3/+6
|
* Include a default configuration file in the 'docs' directory. (#4791)Richard van der Hoff2019-03-041-0/+3
|
* Run unit tests against python 3.7 (#4677)Richard van der Hoff2019-02-201-27/+2
| | | | | | | | | | | | * Run unit tests against python 3.7 ... so that we span the full range of our supported python versions * Switch to xenial * fix psql fail * pep8 etc want python 3.6
* Merge pull request #4420 from matrix-org/jaywink/openid-listenerErik Johnston2019-02-111-0/+1
|\ | | | | New listener resource for the federation API "openid/userinfo" endpoint
| * Add parameterized Python module to test dependenciesJason Robinson2019-01-231-0/+1
| | | | | | | | | | | | Allows running parameterized tests. BSD license. Signed-off-by: Jason Robinson <jasonr@matrix.org>
* | Use native UPSERTs where possible (#4306)Amber Brown2019-01-241-0/+1
|/
* Make the dependencies more like a standard Python project and hook up the ↵Amber Brown2018-12-221-3/+1
| | | | optional dependencies to setuptools (#4298)
* Merge branch 'master' into developRichard van der Hoff2018-12-201-0/+1
|\
| * Debian packaging via dh_virtualenv (#4285)Richard van der Hoff2018-12-201-0/+1
| |
* | Make isort tox check print diff when it failsErik Johnston2018-12-101-2/+2
|/
* Report combined coverage to codecov (#4225)Amber Brown2018-11-281-12/+17
|
* Add a coveragerc (#4180)Amber Brown2018-11-151-2/+13
|
* Port hash_password to Python 3 (#4161)Amber Brown2018-11-081-1/+1
| | | | | | * port hash_password * changelog
* Attempt to fix tox installsRichard van der Hoff2018-10-301-0/+14
| | | | | | | | | | | | It seems that, at some point, the ability to run tox on old servers (with old setuptools) got broken - and it was only working on our Jenkins instance by dint of reusing the tox environments. Let's try to get tox to do the right thing, and remove the guff from jenkins/prepare_synapse.sh. (There is a separate question about whether the jenkins builds should be using tox to prepare the virtualenv at all here, but that is somewhat orthogonal).
* disable coverage checkingRichard van der Hoff2018-10-251-4/+1
| | | | | I don't think we ever use this, and it slows things down. If we want to use it, we should just do so on a couple of builds rather than all of them.
* Make scripts/ and scripts-dev/ pass pyflakes (and the rest of the codebase ↵Amber Brown2018-10-201-2/+2
| | | | on py3) (#4068)
* Run our oldest supported configuration in CI (#3952)Amber Brown2018-09-271-0/+20
|
* Fix client IPs being broken on Python 3 (#3908)Amber Brown2018-09-201-0/+10
|
* Add a way to run tests in PostgreSQL in Docker (#3699)Amber Brown2018-09-201-1/+1
|
* merge (#3576)Amber Brown2018-09-141-41/+3
|
* Run tests under PostgreSQL (#3423)Amber Brown2018-08-131-1/+19
|
* rename 'isort' to 'check_isort' as requestedKrombel2018-07-161-2/+2
|
* check isort by travisKrombel2018-07-161-2/+6
|
* Use towncrier to build the changelog (#3425)Amber Brown2018-06-251-0/+8
|
* update tox.ini to cover 292 succeeding testsKrombel2018-06-051-11/+19
| | | | Signed-Off-By: Matthias Kesler <krombel@krombel.de>
* extend tox testing for py3 to avoid regressionsKrombel2018-05-291-1/+28
|
* tests/metrics is gone nowAmber Brown2018-05-221-1/+1
|
* run config tests on py3Adrian Tschira2018-04-301-1/+2
| | | | Signed-off-by: Adrian Tschira <nota@notafile.com>
* Update tox.iniRichard van der Hoff2018-04-301-1/+1
| | | add missing comma
* Add py3 tests to tox with folders that workAdrian Tschira2018-04-271-1/+9
| | | | | | | | It's just a few tests, but it will at least prevent a few files from regressing. Also, it makes it easiert to check your code against py36 while writing it. Signed-off-by: Adrian Tschira <nota@notafile.com>
* do tox install with pip -eRichard van der Hoff2017-09-051-5/+29
| | | | | - this ensures we end up with a working virtualenv which we can use for other things.
* Fix unittests under toxRichard van der Hoff2016-12-061-0/+7
| | | | | We now need to set PYTHONPATH when running the unit tests; update tox config to do so.
* Change /bin/bash to /bin/sh in tox.iniBartek Rutkowski2016-06-101-2/+2
| | | No features of Bash are used here, so using /bin/sh makes it more portable to systems that don't have Bash natively (like BSD systems).
* Fix flake8 warnings for testsMark Haines2016-02-191-1/+1
|
* Remove pyc files before running testsDaniel Wagner-Hall2016-02-091-1/+1
|
* Generate code coverage report when running jenkins.shMark Haines2015-12-181-1/+2
|
* Output results files on jenkinsDaniel Wagner-Hall2015-11-161-3/+3
| | | | | | | Outputs: * results.xml * coverage.xml * violations.flake8.log
* Pull out jenkins script into a checked in scriptDaniel Wagner-Hall2015-11-131-1/+3
|
* Update the other place check_joined_room is calledMark Haines2015-10-301-0/+1
|
* Use the version of "matrix-angular-sdk" hosted on pypiMark Haines2015-09-011-2/+0
|
* Make 'setup.py test' run toxMark Haines2015-08-261-1/+1
|
* Allow tests to be filter when using toxDaniel Wagner-Hall2015-08-261-1/+1
| | | | | `tox` will run all tests `tox tests.api.test_auth.AuthTestCase` will run just the tests in AuthTestCase
* Set PYTHONDONTWRITEBYTECODE in the tox environment so that we don't spew ↵Mark Haines2015-08-251-0/+2
| | | | .pyc files everywhere
* Add tox.ini file for synapseMark Haines2015-08-251-0/+25