-
-
Notifications
You must be signed in to change notification settings - Fork 522
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
tox 3.8 crashes on Appveyor #1227
Comments
Can you provide a two verbosity log? Feels like somehow 3.6 gets forced as version for all envs 🤔 FYI: tox is always lowercase t 👍 |
I added https://ci.appveyor.com/project/h5py/h5py/builds/23451295/job/r9es7qlpgxee3r44 (Thanks, I'll try to remember the spelling. Having worked on IPython (not iPython), I know how frustrating mis-capitalisation can be). |
Do |
Related recent changes 6cb0949 |
Still not much difference: https://ci.appveyor.com/project/h5py/h5py/builds/23451490/job/nsia3mda8krmjydq Looking at the code, could it be an issue that one of our env names is tox/src/tox/config/__init__.py Lines 564 to 571 in b27228e
|
That well could be the case 🤔 but why only on Windows? 🤔 |
Why this is needed? 🤔 |
|
I'm not sure. Guesswork: Tox appears to expect interpreters with the version in the name, like |
#1124 may be related. |
@takluyver but we fallback to |
#1124 mentions doing this to test on both 32-bit and 64-bit Python on Appveyor, which h5py is also doing. I'm puzzled why it thinks the |
Ah, I know. I'm looking at a run that happened on 2.7. It checks all the specified envs, not just the one it's going to use. |
@takluyver that's by design, as we try to warn upfront if the config is bad, and in this case setting python (which is 3.5) is bad for a lot of environments. I would not advise using such env-var base-python override, the crash itself has been fixed via #1229. |
Thanks! I don't know tox well enough to see how to pass in the path to Python for each test job without overriding it for all environments like that. I'll keep on looking. |
@takluyver the expectation here is that you don't need to set it, tox should be able to discover it, and if it fails then please describe the case and we'll advise further on it 👍 |
I think the issue is that we want to distinguish between 32 and 64-bit Python interpreters. As far as I know, tox doesn't have any specific support for distinguishing 32-bit vs 64-bit interpreters (but please correct me if I'm wrong!). So specifying explicit paths to Python seems like the clearest way to do what we want. I've been looking at the docs. Unfortunately, I still don't see a much better way than what we are currently doing. One option would be to have a separate tox INI file for Appveyor, which doesn't list different Python versions, so each Appveyor job can give it the Python version to run. But that's not easy either, because some of the dependencies differ according to the Python version. |
Fair enough, we probably should support the |
I don't know of any easy way to do that, and at least on Linux I think it's unusual to have 32-bit Python installed on a 64-bit system. |
BTW, now that the crash is fixed, I think my remaining question is the same as #1124. I've subscribed to that issue, so why don't we continue the discussion there. |
We released tox 3.8.3 that should now fix it 👍 |
Thanks! |
In the h5py project, all the builds on Appveyor recently started failing. This seems to coincide with the release of tox 3.8.0, and it still occurs with 3.8.1. I'm still investigating this, but here's the error we're getting:
Example failure log: https://ci.appveyor.com/project/h5py/h5py/builds/23449770/job/itchqco453midako
I'll update this with anything I find.
The text was updated successfully, but these errors were encountered: