val-iisc / expresso

expresso
Other
44 stars 14 forks source link

Not compatible with qtutils >=2.0 #14

Open chrisjbillington opened 5 years ago

chrisjbillington commented 5 years ago

I'm a developer of qtutils and thought I would let you know of a backward incompatible change with qtutils that affects this project.

When used with PyQt4, qtutils as of version 2.0 must be imported prior to PyQt4. This is because it enables version 2 of the PyQt API, which must be done before import PyQt4. This changes some datatypes - for example functions that in API v1 would take a QString in API v2 take a regular Python string, and Qstring doesn't exist. Apologies if I'm telling you what you already know.

This was done as part of a port of qtutils to support PyQt5 and PyQt4 at the same time. You may wish to make this change to your program if/when porting it to PyQt5, otherwise you will need to stick with qtutils < 2.0.

Depending on how complex your application is, you might find that simply reordering the imports makes your code work with qtutils > 2.0. Otherwise, I have found that the necessary changes in porting our own applications have been pretty minimal.