New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add py38 to CI #732
Add py38 to CI #732
Conversation
Hrm, hack to work around lack of a txi2p release is causing problems. 🤔
I'm also not immediately seeing the connection between tox config and CI config ... where's py38 at? 🧐 |
Here's the first py38 run! https://travis-ci.org/github/tahoe-lafs/tahoe-lafs/jobs/704285475 |
TIL towncrier. Once I get Trac perms I'll create a proper ticket there, and once I have CI working I'll close this PR and open a fresh one from a new branch with the right ticket number and towncrier will be happy and everyone will be happy and we'll all be happy together. |
Interesting bug on Travis with pyinstaller when bumping to Xenial, where the system pip is 19.0.3 vs. ancient 9.0.1 on Trusty. Manifests as Working on Trusty: https://travis-ci.org/github/tahoe-lafs/tahoe-lafs/jobs/704285470 Hypothesis is that somehow invoking as |
https://travis-ci.org/github/tahoe-lafs/tahoe-lafs/jobs/704292633 shows expected behavior for py38 tho:
I.e., the port to Python 3 is blocked on https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3244. |
Perhaps we could make the |
That's going to be essential, as it sounds like Nevow removal is going to be several more weeks... |
8382efe
to
069f62b
Compare
💃 https://travis-ci.org/github/tahoe-lafs/tahoe-lafs/jobs/704631138
|
There's a larger conversation to be had about whether we're ripping out i2p support from Tahoe-LAFS or ensuring that foolscap also supports i2p under Python 3. See: https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3033
We'll have to address that old py3.5 target at some point, currently just spitting out the depgraph.
Don't have an SSH key set up in CI. 🐭
Xenial (16.04) is the current default at Travis, and it does have 3.8 available: https://docs.travis-ci.com/user/languages/python/#python-versions
425793c
to
60e9420
Compare
Debugging this Working on Trusty
https://travis-ci.org/github/tahoe-lafs/tahoe-lafs/jobs/704656231#L1764-L1769 Broken on Xenial
https://travis-ci.org/github/tahoe-lafs/tahoe-lafs/jobs/704654720#L1504-L1510 |
Okay, I think I'm on the right track: |
f8b50d0
to
3a05790
Compare
5c500b6
to
3b4bca1
Compare
Different versions of virtualenv have different seeding algorithms: https://discuss.python.org/t/-/4146). CI puts us several layers deep in virtualenv-ception and I didn't fully unravel the whole thing, but starting with a modern virtualenv seems to work around the issue.
3b4bca1
to
027d058
Compare
@@ -73,5 +73,8 @@ matrix: | |||
- os: linux | |||
python: '3.5' | |||
env: T=py35 | |||
- os: linux | |||
python: '3.8' | |||
env: T=py38 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Feel free to drop Python 3.5 from this config, too. That was from an earlier failed porting effort. We don't need to keep trying to support it.
Moving to #734. |
Drops the old py35 job, per @exarkun: tahoe-lafs#732 (comment) Also bumps Ubuntu at Travis so we can get 3.8 eventually. I first went to 3.8 before dropping back to 3.6 as our initial target. Trusty on Travis does include 3.6, but since we want 3.8 "pretty soon," and the OS bump ended up being tricky (see below), let's go ahead and keep the OS bump. Xenial (16.04) is the current default at Travis, and it does have 3.8 available: https://docs.travis-ci.com/user/languages/python/#python-versions The tricky bug is that different versions of virtualenv have different seeding algorithms: https://discuss.python.org/t/-/4146). CI puts us several layers deep in virtualenv-ception and I didn't fully unravel the whole thing, but starting with a modern virtualenv seems to work around the issue.
Drops the old py35 job, per @exarkun: tahoe-lafs#732 (comment) Also bumps Ubuntu at Travis so we can get 3.8 eventually. I first went to 3.8 before dropping back to 3.6 as our initial target. Trusty on Travis does include 3.6, but since we want 3.8 "pretty soon," and the OS bump ended up being tricky (see below), let's go ahead and keep the OS bump. Xenial (16.04) is the current default at Travis, and it does have 3.8 available: https://docs.travis-ci.com/user/languages/python/#python-versions The tricky bug is that different versions of virtualenv have different seeding algorithms: https://discuss.python.org/t/-/4146). CI puts us several layers deep in virtualenv-ception and I didn't fully unravel the whole thing, but starting with a modern virtualenv seems to work around the issue.
I've got tox barely running under Python 3.8 locally, making a PR so I can start seeing what CI does with it.
(I don't have perms on Trac yet to make a new ticket, so my branch name uses the old mega-ticket 2065.)
Punchlist
tor_requires
/i2p_requires