dbanas
dbanas

Reputation: 1888

PyFace / PySide2 incompatibility, despite curation by conda?

In a Traits/UI application, I'm getting the following at the end of a traceback:

  File "/anaconda3/envs/pybert64/lib/python3.7/site-packages/traitsui/qt4/html_editor.py", line 27, in <module>
    from pyface.qt import QtCore, QtGui, QtWebKit
  File "/anaconda3/envs/pybert64/lib/python3.7/site-packages/pyface/qt/QtWebKit.py", line 29, in <module>
    from PySide2.QtWebKitWidgets import *
ModuleNotFoundError: No module named 'PySide2.QtWebKitWidgets'

I've done some Web sleuthing and learned that the PySide maintainers recently moved from the QtWebKit... to the QtWebEngine... API and am assuming that's what I'm bumping into here. In other words, I'm assuming that I have incompatible PyFace and PySide2 packages installed.

But, my question is: why didn't the package suite curation services of conda protect me from this?

Here's an excerpt from the output of conda list:

pyface                    6.0.0                    py37_0
pygments                  2.4.2                      py_0
pyibis-ami                3.0.0              pyh7b7c402_0    local
pyopenssl                 19.0.0                   py37_0
pyparsing                 2.4.0                      py_0
pyqt                      5.9.2            py37h655552a_2
pyside2                   5.9.0a1          py37he4028a5_0    conda-forge

Does pyside2 coming from conda-forge negate the usual guarantees offered by conda, wrt/ package compatibility?

Thanks!

Edits, as motivated by comments, below:

  1. @orangelink #1

I'm not sure what you mean by "manually update". I installed the PySide2 package like so:

conda install -n pybert64 PySide2

Note, however, that I do have conda-forge added to the end of my channels option in my ~/.condarc file:

channels:
  - defaults
  - conda-forge

I found this to be necessary, in order to get a few needed packages installed, which were not available from any of the default channels.

  1. @orangelink #2

Okay, thanks. So, what does it mean, pragmatically, for the "Anaconda meta-package" to be curated? Does it mean that as long as I only draw from those channels included in the defaults alias, when executing conda install ... commands, I can be assured of package compatibility?

Upvotes: 0

Views: 178

Answers (1)

dbanas
dbanas

Reputation: 1888

Strangely enough, I was able to solve this problem by uninstalling the PySide2 package.

Upvotes: 0

Related Questions