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

Tests: Fix test failures in Python 3.8 (fixes #6594) #6595

Merged
merged 1 commit into from
Nov 10, 2019

Conversation

felixonmars
Copy link
Contributor

I am not sure whether this is the correct fix but the test suite passes.

I am not sure whether this is the correct fix but the test suite passes.
@matham
Copy link
Member

matham commented Nov 10, 2019

I think anytime you get a reference error here it generally means that you're acessing something dead, which means it's a bug in your code.

Is this from local tests that are failing? And on which os? I haven't been able to get 3.8 to work on windows so I didn't have a chance to run the test suite.

@matham
Copy link
Member

matham commented Nov 10, 2019

Oh, never mind. Didn't see the related issue. But before we can know if this is the right fix, we should understand what change in py3.8 is causing this.

Copy link
Member

@matham matham left a comment

Choose a reason for hiding this comment

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

Ok, I can confirm that on py3.7, calling dir on a dead proxy returns a empty list, while in 3.8 it raises an exception. I guess kivy was using a undocumented hack with dir.

Long term we should probably switch to using as it's been available since 3.4: https://docs.python.org/3/library/weakref.html#weakref.WeakMethod.

@matham matham merged commit 80e0af9 into kivy:master Nov 10, 2019
@felixonmars felixonmars deleted the patch-1 branch December 24, 2019 08:58
AndreMiras added a commit to AndreMiras/EtherollApp that referenced this pull request Apr 13, 2020
Note that mesa-common-dev is required for building Kivy.
This might be needed because there is no Kivy wheels for Python 3.8.
Kivy was bumped to post 1.11.1 to fix a weak ref issue addressed via:
kivy/kivy#6595
AndreMiras added a commit to AndreMiras/EtherollApp that referenced this pull request Apr 13, 2020
Note that mesa-common-dev is required for building Kivy.
This might be needed because there is no Kivy wheels for Python 3.8.
Kivy was bumped to post 1.11.1 to fix a weak ref issue addressed via:
kivy/kivy#6595
@yvvt0379
Copy link

@matham Could you please explain to me what 'dead' means? Thanks

@matham matham added this to the 2.0.0 milestone Oct 28, 2020
@matham matham changed the title Fix test failures in Python 3.8 (fixes #6594) Tests: Fix test failures in Python 3.8 (fixes #6594) Dec 9, 2020
@matham matham added the Component: tests/CI Tests, CI, GitHub settings label Dec 9, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: tests/CI Tests, CI, GitHub settings
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants