summaryrefslogtreecommitdiff
path: root/tox.ini
Commit message (Collapse)AuthorAgeFilesLines
* green.http: collections.Iterable alias removed in Python 3.10, CI 3.10, drop ↵Sergey Shepelev2023-01-221-7/+16
| | | | | | | | non-essential CI against 2.7 to 3.6 fixes https://github.com/eventlet/eventlet/issues/740 related to https://github.com/eventlet/eventlet/pull/715
* chore: CI upgrades, pycodestyle fix 2 empty lines after class/defSergey Shepelev2023-01-181-6/+7
| | | | | | - github actions ubuntu-latest switched to 22.04 with python3>=3.7 - tool: pep8 was renamed and upgraded to pycodestyle 2.1, fixed 2 empty lines after class/def - common github actions upgrade to v3 https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/
* Fix tox errorTim Burke2023-01-181-1/+3
| | | | | | | | | | | | tox>=4.0.0 changed passenv from a space-separated list to a comma-separated list. tox>=4.0.6 made it a hard error to include spaces, complaining pass_env values cannot contain whitespace, use comma to have multiple values in a single line Switch to using multiple lines for the multiple variables to be compatible with both tox3 and tox4.
* ci: remove redundant basepython decls from tox.iniMichał Górny2022-02-241-9/+0
| | | | | | | Remove basepython declarations from tox.ini where they match what tox already infers from the environment name. This is NFC for existing testenvs, and it makes it possible to run tests on newer Python targets, e.g. py310-*.
* greendns: compatibility with dnspython v2Felix Yan2021-09-011-1/+2
| | | | | | | | | | | | Compatibility with dnspython v2: - `_compute_expiration` was replaced by `_compute_times` - `dns.query.{tcp,udp}` take new arguments Main issue for tracking: https://github.com/eventlet/eventlet/issues/619 This patch discussion: https://github.com/eventlet/eventlet/pull/722 This patch deprecates dnspython<2 pin: https://github.com/eventlet/eventlet/issues/629 Co-authored-by: John Vandenberg <jayvdb@gmail.com> Co-authored-by: Rodolfo Alonso Hernandez <ralonsoh@redhat.com>
* ci: cache pip/tox; faster tox with `skipdist` and `usedevelop`Sergey Shepelev2021-05-131-0/+3
|
* replace Travis with Github (actions) CISergey Shepelev2021-05-101-9/+12
|
* pyopenssl tsafe module was deprecated and removed in v20.0.0Sergey Shepelev2020-12-131-1/+2
| | | | | https://github.com/eventlet/eventlet/issues/671 https://github.com/pyca/pyopenssl/pull/913
* Add Python 3.8 testingJohn Vandenberg2020-08-191-1/+3
|
* drop Python 3.4 supportdrop-34Sergey Shepelev2020-07-061-4/+3
| | | | https://github.com/eventlet/eventlet/issues/623
* Drop support for Python3.3Sergey Shepelev2018-05-191-4/+3
|
* Drop support for Python2.6 and python-epoll packageSergey Shepelev2018-05-191-6/+4
|
* external dependencies for six, monotonic, dnspythonnat-goodspeed2018-05-101-2/+2
|
* wsgi: latin-1 encoding dance for environ[PATH_INFO]Sergey Shepelev2018-03-111-2/+2
| | | | | https://www.python.org/dev/peps/pep-0333/#unicode-issues https://github.com/eventlet/eventlet/issues/468
* travis: update test dependencies, use psycopg2-binarySergey Shepelev2018-03-091-11/+12
|
* Travis broke ipv6, allow failure; test against Python 2.7Sergey Shepelev2017-12-051-1/+17
|
* Drop OpenSSL.rand supportHaikel Guemar2017-10-041-1/+1
| | | | | | PyOpenSSL deprecated OpenSSL.rand in 17.2.0 and removed it in 17.3.0. To comply, update min version in tests to 17.3.0 and removes it. https://pyopenssl.org/en/stable/changelog.html
* hubs: use monotonic clock by default (bundled package); Thanks to Roman ↵Sergey Shepelev2017-02-161-2/+2
| | | | | | | | | | Podoliaka and Victor Stinner eventlet/support/monotonic.py is copied by curl from specific version on Github. Change and run bin/pull-monotonic script to update to newer version. https://github.com/eventlet/eventlet/pull/388 https://github.com/eventlet/eventlet/pull/303
* tests cleanup, CI with Python 3.6Sergey Shepelev2017-01-051-3/+5
|
* test coverage reportscoverageSergey Shepelev2017-01-041-6/+6
|
* test_import_patched_defaults bended to play with pyopenssl>=16.1.0Sergey Shepelev2016-12-311-3/+3
| | | | | | | Basically this patch replaces urllib with custom module that is guaranteed not imported before patching. https://github.com/eventlet/eventlet/issues/362 More general issue here https://github.com/eventlet/eventlet/issues/368
* bundle dnspython in support/; resolving is always greenSergey Shepelev2016-08-241-5/+3
| | | | | Fixes installation issue when older dnspython is present in system packages https://github.com/eventlet/eventlet/pull/341
* tests: new release of dnspython works for both py2/3Ondřej Nový2016-08-121-2/+2
|
* Provide green http without undesired side effectsJakub Stasiak2016-07-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Eventlet patcher and the way we were patching multi-level http package don't work well[1][2]. I spent a lot of time trying to make it work but in the end every solution I came up with was breaking something else and made the patching and providing green http even more complicated - I wouldn't envy anyone having to debug it in the future. After a lot of thinking I decided having our own copy of http with the necessary modifications applied seems like the most straightforward and the most reliable solution, even considering its downsides (we need to keep it up to date ourselves and the API won't 100 % match the regular http module API on older Python 3 versions as our bundled version is the most recent one and has bug fixes and extra features implemented). The code introduces by this commit comes from the following Python commit (development branch): commit 6251d66ba9a692d3adf5d2e6818b29ac44130787 Author: Xavier de Gaye <xdegaye@users.sourceforge.net> Date: 2016-06-15 11:35:29 +0200 Issue #26862: SYS_getdents64 does not need to be defined on android API 21. Changes to the original http package code involve: * Removing unnecessary import(s) * Replacing some regular imports with eventlet.green imports * Replacing fullmatch()[3] usage with match() so we stay Python 3.3 compatible I left urllib.parse imports intact as nothing there performs IO. Green httplib module is also modified because it used to import http.client using patcher which was breaking things the same way. A new dependency, enum-compat, is added to ensure that the enum module is present on Python 3.3 (the http package code comes the latest Python development branch and uses enum). [1] https://github.com/getsentry/raven-python/issues/703 [2] https://github.com/eventlet/eventlet/issues/316 [3] https://docs.python.org/3/library/re.html#re.fullmatch This patch is contributed by Smarkets Limited.
* Add Python 3.5 to test envs; Thanks to Piët DelportSergey Shepelev2016-05-181-2/+3
|
* tox: don't cap pyopenssl to 0.13tox_pyopensslVictor Stinner2016-04-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | pyopenssl 0.13 cannot be installed on my Fedora 23. It fails with: building 'OpenSSL.crypto' extension (...) OpenSSL/crypto/crl.c:6:23: erreur: static declaration of ‘X509_REVOKED_dup’ follows non-static declaration static X509_REVOKED * X509_REVOKED_dup(X509_REVOKED *orig) { ^ In file included from /usr/include/openssl/ssl.h:156:0, from OpenSSL/crypto/x509.h:17, from OpenSSL/crypto/crypto.h:30, from OpenSSL/crypto/crl.c:3: /usr/include/openssl/x509.h:751:15: note: previous declaration of ‘X509_REVOKED_dup’ was here X509_REVOKED *X509_REVOKED_dup(X509_REVOKED *rev); ^ error: command 'gcc' failed with exit status 1 The bug is known: https://github.com/pyca/pyopenssl/issues/276 The workaround is simple: use a more recent version.
* patcher: patch existing threading locks; Thanks to Alexis LeeAlexis Lee2016-04-181-0/+1
| | | | | | | | | | | | | | | | | | In projects which dynamically determine whether to activate eventlet, it can be hard not to import a low level module like logging before eventlet. When logging is imported it initialises a threading.RLock which it uses to protect the logging configuration. If two greenthreads attempt to claim this lock, the second one will block the /native/ thread not just itself. As green systems usually only have one native thread, this will freeze the whole system. Search the GC for unsafe RLocks and replace their internal Lock with a safe one while monkey-patching. The tests pass, but were they to fail, the test process would never return. To deal with this, I've added a test dependency on subprocess32 which is a backport of the stdlib subprocess module from Python3. This offers a timeout option on Popen#communicate, which I've arbitrarily set at 30 seconds.
* travis: Fix allowing more CPU usageJakub Stasiak2016-01-231-0/+1
| | | | | | | | | The original commit[1] was not enough because we run tests using tox and tox by default doesn't pass all environment variables to the environments in which tests run - this patch whitelists subset of environment variables set by Travis, including one that we read and use. [1] 74f418bcf38ac128cadad641d59d7ecd8f127340
* Remove pip download cache referencesJakub Stasiak2016-01-231-1/+0
| | | | | Newest pip versions don't support it anymore and it's been deprecated for a while.
* tox 1.8 or newer is requiredVictor Stinner2015-04-091-0/+1
| | | | | The "py{27,34,py}-dns" syntax in envlist is only supported on tox 1.8 or newer.
* greendns: Python3 compatibilityv17.1-rc1Sergey Shepelev2015-02-251-1/+2
|
* greendns: fix (remove) dns.name importSergey Shepelev2015-02-251-6/+6
| | | | | | https://github.com/eventlet/eventlet/issues/203 Also, separate tox environments py{27,34,py}-dns that install and test green DNS.
* tests/isolated for tests sandboxed in separate python processSergey Shepelev2015-02-251-1/+1
| | | | | | | | | | | | API: - write main test body into tests/isolated/filename.py - it must write 'pass' to stdout or 'skip:[optional reason]' - write a test with single line: tests.run_isolated('filename.py') FIXME: autorun all files in tests/isolated This deprecates tests.run_python and ProcessBase. TODO: rewrite old multiline string test bodies to isolated files TODO: add timeout to p.communicate() in run_python()
* Tests: tidy up tox fileDavid Szotten2015-02-071-123/+21
| | | | | | | | using new multi-dimensional support in 1.8 also update travis file Closes GH #180
* hubs: delay import pkg_resourcesSergey Shepelev2014-12-301-0/+1
| | | | https://github.com/eventlet/eventlet/issues/177
* Exclude bundled mock and six from style checkingJakub Stasiak2014-11-111-2/+2
|
* ExcluJakub Stasiak2014-11-111-2/+2
|
* Add Python 3.4 build optionsJakub Stasiak2014-10-101-0/+19
|
* Remove most of the deprecated codeJakub Stasiak2014-10-101-2/+1
| | | | Closes GH #144
* PEP-8 check all files, once in separate environment, parallel in TravisSergey Shepelev2014-04-241-43/+50
| | | | Tox: PYTHONDONTWRITEBYTECODE = 1
* python3 compatibilitySergey Shepelev2014-04-231-0/+3
| | | | | | | - dict.items().pop() in proc - str/bytes in backdoor, api_test, ssl_test, test__refcount - import httplib from six - PEP-8 fixes
* PEP-8 fixes, tox runs pep8 checkSergey Shepelev2014-04-231-1/+30
| | | | | For now, pep8 check is only run for some files known to be clean, we should clean the rest and enable pep8 check for all files then.
* pypy compatibilityJakub Stasiak2014-04-151-1/+1
|
* travis: Build with PyPy; Upgrade dependencies; Install libzmq-devJakub Stasiak2014-04-151-1/+14
|
* travis: Build with Python 3.3Jakub Stasiak2014-03-281-3/+35
|
* tox: Refactor configurationJakub Stasiak2014-01-281-18/+1
|
* tox: Bump MySQL-Python versionJakub Stasiak2014-01-281-1/+1
|
* python3 compat: remove lots of Python 2.5 and earlier dependent code; use ↵Sergey Shepelev2013-12-031-15/+1
| | | | print() function syntax
* tox: Add pep8 and flake8 configuration in tox.iniFloris Bruynooghe2013-08-191-0/+12
| | | | | | | This helps ensuring everyone uses the code checkers with the same configuration. Initial values based on earlier discussion. The max-line-length is currently just based on the screen width I have on my netbook.
* tox: run tests with newer versions of optional dependenciesSergey Shepelev2013-07-111-8/+8
|