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

Work around for mro issues with Pyside now does not work #22

Closed
kiwi0fruit opened this issue Jun 3, 2017 · 4 comments
Closed

Work around for mro issues with Pyside now does not work #22

kiwi0fruit opened this issue Jun 3, 2017 · 4 comments

Comments

@kiwi0fruit
Copy link

kiwi0fruit commented Jun 3, 2017

There is a Pyside-Enaml bug. It had a working workarounds on python 2.7. Now they do not work for some reason.

Both patches proposed (1st and 2nd) do not fix the problem on Enaml 0.10.0 (Python 3 version from conda install -c ecpy enaml).

The test enaml code:

PushButton:
    text = "Test PySide-Enaml bug"
    clicked ::
        information(self, "Testing", "If you see this then presumably PySide-Enaml bug was patched.\n" +
                    "But it still can be broken if Python hangs after pressing OK.")

Before patches applied message box does not appear and python shows long error messages. After patch applied the message box appear, but when I close it pressing OK Windows says that python.exe stopped working. After I close it i get only Process finished with exit code -1073741819 (0xC0000005).

Windows 7 x64 Miniconda python. Checked with Python 3.6 x64, PySide from conda install -c conda-forge pyside and with Python 3.4 win32, Pyside from pip install pyside.

@kiwi0fruit kiwi0fruit changed the title Work around for mro issues with Pyside now do not work. Work around for mro issues with Pyside now do not work Jun 3, 2017
@kiwi0fruit kiwi0fruit changed the title Work around for mro issues with Pyside now do not work Work around for mro issues with Pyside now does not work Jun 3, 2017
@MatthieuDartiailh
Copy link
Owner

Pyside was never officially supported and now that pyside2 is under way for qt5, I do not have a strong drive to spend time on this. Sorry.
If you come up with a solution I will nonetheless be happy to review a PR.

@kiwi0fruit
Copy link
Author

Additioanl info: these two patches also do not work on Enaml 0.10.0 at Python 2.7 (same behaviour as described above). But they do work on Enaml 0.9.8 at Python 2.7.

This may indicate that some instability was introduced to Enaml python 3 version (Error code 0xc0000005 means access violation).

@MatthieuDartiailh
Copy link
Owner

I will try to give a look. Thanks for the details.

@kiwi0fruit
Copy link
Author

Actually this is most likely to be the PySide fault. A year ago I was trying to get realtime video in Qt widget (no Enaml, may be it was just qtpy). Everything worked fine on PyQt but on PySide there were lags and damage of frames. And it looked like it's somekind of memory bugs. So access violation is a thing that we can expect from PySide.

But at the same time the patches above work fine on Enaml 0.9.8@py2.7 but do not on 0.10.0@py2.7. So there is still some room for speculations.

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

No branches or pull requests

2 participants