Skip to content
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

Reverse vendored wheel lookup order #1450

Merged
merged 1 commit into from
Nov 22, 2019
Merged

Reverse vendored wheel lookup order #1450

merged 1 commit into from
Nov 22, 2019

Conversation

bskinn
Copy link

@bskinn bskinn commented Nov 21, 2019

On cursory testing, appears to fix #1449 (pip execution error on virtualenv creation in python 3.9.0a1).

Rationale described here.

@gaborbernat, if you think this is sufficiently durable an approach, I can flesh out the PR. Not sure how to get it under CI, though, save with a full Python 3.9 build... looks like deadsnakes doesn't have 3.9 yet.

Thanks for contributing a pull request, see checklist all is good!

  • wrote descriptive pull request text
  • added/updated test(s)
  • updated/extended the documentation
  • added news fragment in docs/changelog folder

@bskinn
Copy link
Author

bskinn commented Nov 21, 2019

A more robust way to go about it, if desired, would probably be to filter down the list of wheels to the highest version found.

@bskinn bskinn force-pushed the py39 branch 5 times, most recently from bf965aa to 90f5c2f Compare November 21, 2019 11:59
@@ -57,6 +61,23 @@ jobs:
with_toxenv: 'coverage' # generate .tox/.coverage, .tox/coverage.xml after test run
for_envs: [py37, py36, py35, py34, py27]

- job: py39_linux
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should not be done here like this; instead, let's pull python 3.9 in via deadsnake at tox-dev/azure-pipelines-template@a7025f6

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please add the pr to tox-dev/azure-pipelines first please 👍

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I missed that!

It looks like the deadsnakes py39 is broken the same way, though -- it vendors a copy of pkg_resources that tries to work with collections.MutableMapping.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And, nod, I figured this wasn't the right way to go about it, and would need to be integrated into the tox-dev template matrix, but I wanted to stand up a 3.9 job ASAP.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please add the pr to tox-dev/azure-pipelines first please 👍

Not sure what you mean by this... should I just wait on this until that branch of tox-dev/azure-pipelines-template is merged?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(that warning that shows up is annoying though, but I haven't figured out how to fix it quite yet -- low priority though since it appears to be harmless)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some bug with tox's isolated builds? hard to tell -- might need to debug a bit -- have you been able to reproduce it locally?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Haven't seriously tried yet -- my actual code change lets me create a virtualenv just fine now, locally; but, I haven't yet tried to run tox CI on 3.9. I'm frankly somewhat baffled as to what the correct sequence of steps is.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hah, really? just pip install -e . && tox -e py39? Boy, did I overthink that.

@bskinn bskinn force-pushed the py39 branch 11 times, most recently from 3ad1d89 to e1c399c Compare November 21, 2019 18:41
@asottile
Copy link
Contributor

fwiw it ~mostly works locally: https://i.fluffy.cc/k8tXcF7knsqBwbr5zhrnwBK4Qmvmp9d6.html

@gaborbernat
Copy link
Contributor

gaborbernat commented Nov 22, 2019

Spent half an hour trying to figure out, but things are broken in too many places to be worth it (on my MacOs). I'll merge as it is to unblock other libraries, but probably python 3.9 support will only be fixed by the rewrite; unless someone is willing to spend a long time on this.

@gaborbernat gaborbernat force-pushed the py39 branch 2 times, most recently from 41de80c to cba35c5 Compare November 22, 2019 18:42
Copy link
Contributor

@asottile asottile left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lg2m -- getting actual tests passing on py39 should be easier after this is merged + released

@bskinn
Copy link
Author

bskinn commented Nov 22, 2019

@gaborbernat I can confirm that the fix works for one of my repos, and @nedbat said that it worked for at least one of his.

I think some of the problems will be resolved by having a fixed virtualenv version on PyPI, but things like the permissions error that's occurring when tox tries to build the package... I have no idea why it's happening on the deadsnakes Python but not the Azure-Task Pythons.

azure-pipelines.yml Outdated Show resolved Hide resolved
@gaborbernat
Copy link
Contributor

Doing a release now 👍

@bskinn
Copy link
Author

bskinn commented Nov 22, 2019

@gaborbernat Eeep. I didn't draft a news fragment -- CHANGELOG doesn't reflect the change

@gaborbernat
Copy link
Contributor

I've actually added one, committed just did not push 😆 oh well it's out now.

@bskinn
Copy link
Author

bskinn commented Nov 22, 2019

Hehehe. Most people probably aren't testing py39 yet anyways...won't even notice the patch version bump.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Error during environment creation in Python 3.9.0a1
3 participants