-
Notifications
You must be signed in to change notification settings - Fork 278
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The only environments left on AppVeyor are now 2.7, 3.5, and 3.6. The remaining Python versions are now also tested on Windows using GitHub Actions. Additionally, a new group of dependencies called "oldest" is now tested as well to ensure compatibility with the oldest pinned versions in requirements.txt and setup.py. AppVeyor is used for 3.5 and 3.6 because those versions aren't available on GitHub Actions at all. Python 2.7 crashes on Windows with a pip cache failure so it only runs on GHA with the "oldest" dependencies on Ubuntu. The other Python version running "oldest" dependencies is 3.7, also only running on Ubuntu.
- Loading branch information
Showing
9 changed files
with
147 additions
and
42 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# This allows us to install the actually oldest supported dependencies and test whether that works. | ||
|
||
# requirements.txt | ||
six==1.9 | ||
webencodings==0.5.1 | ||
|
||
# requirements-optional.txt | ||
genshi==0.7.1 ; python_version < '3.8' | ||
genshi==0.7.6 ; python_version >= '3.8' | ||
chardet==2.2.1 | ||
# this should be 3.4.0 but there are no Linux | ||
# binary wheels for older releases | ||
lxml==3.8.0 ; python_version < '3.7' | ||
# minimums for 3.x are actually different: | ||
# - 3.7 is actually 4.1.1 | ||
# - 3.8 is actually 4.3.5 | ||
# - 3.9-3.10 is actually 4.5.2 | ||
# - 3.11 is actually 4.9.0 | ||
lxml==4.9.0 ; python_version >= '3.7' | ||
|
||
# requirements-test.txt | ||
flake8==3.9.2 ; python_version < '3.6' | ||
flake8==5.0.4; python_version >= '3.6' | ||
pytest==4.6.10 ; python_version < '3' | ||
pytest==5.4.2 ; python_version >= '3' | ||
coverage==5.1 | ||
pytest-expect==1.1.0 | ||
mock==3.0.5 ; python_version < '3.6' | ||
mock==4.0.2 ; python_version >= '3.6' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
#!/usr/bin/env python | ||
|
||
""" | ||
usage: toxver.py [python-version] [deps] | ||
Returns a Tox environment name given a GHA matrix Python version and dependencies. | ||
Many GHA configurations do this with inline Bash scripts but we want our solution | ||
to be cross-platform and work on Windows workers, too. | ||
Examples: | ||
$ toxver.py pypy-3.8 base | ||
TOXENV=pypy3-base | ||
$ toxver.py 2.7 oldest | ||
TOXENV=py27-oldest | ||
$ toxver.py ~3.12.0-0 optional | ||
TOXENV=py312-optional | ||
""" | ||
|
||
from __future__ import absolute_import | ||
from __future__ import division | ||
from __future__ import print_function | ||
from __future__ import unicode_literals | ||
|
||
import sys | ||
|
||
|
||
def main(argv): | ||
if len(argv) != 3: | ||
print(__doc__.strip(), file=sys.stderr) | ||
return 1 | ||
|
||
deps = argv[2] | ||
|
||
if argv[1].startswith("pypy-2"): | ||
print("TOXENV=pypy-" + deps) | ||
return 0 | ||
|
||
if argv[1].startswith("pypy-3"): | ||
print("TOXENV=pypy3-" + deps) | ||
return 0 | ||
|
||
if argv[1].startswith("~"): | ||
ver = argv[1][1:5] | ||
else: | ||
ver = argv[1] | ||
|
||
ver = ver.replace(".", "") | ||
print("TOXENV=py" + ver + "-" + deps) | ||
return 0 | ||
|
||
|
||
if __name__ == "__main__": | ||
sys.exit(main(sys.argv)) |