ejeschke / ginga

The Ginga astronomical FITS file viewer
BSD 3-Clause "New" or "Revised" License
121 stars 77 forks source link

Add support for PyQt6 and PySide6 #1002

Closed ejeschke closed 2 years ago

ejeschke commented 2 years ago

This adds support for PyQt6 and PySide6 widget toolkits. It removes support for PyQt4 and PySide, since those are not supported any more by qtpy.

ejeschke commented 2 years ago

Text drawn in certain widgets and icons can look fuzzy, at least on hi-res (e.g. 4K) displays. Still looking for a fix for this.

ejeschke commented 2 years ago

I had to create test environments installing pyqt and qtpy from PyPI, since conda does not yet have Qt6.

ejeschke commented 2 years ago

Fixed the "fuzziness issue", at least as far as I have been able to test it.

ejeschke commented 2 years ago

In principle, I am okay with removing support for old packages. Do we need to add qt6 under options.extra_requires in setup.cfg? There is already an entry for qt5.

What do you think? In this case either one is fine. Should we list every possible version of every back end there?

pllim commented 2 years ago

Should we list every possible version of every back end there?

We never listed Qt4 but going forward, Qt6 is probably going to be more and more common. If we list it, it would be clear to user what they need to install for Qt6, but then again it increases maintenance burden, so I'll leave it to your good judgment.

ejeschke commented 2 years ago

Should we list every possible version of every back end there?

We never listed Qt4 but going forward, Qt6 is probably going to be more and more common. If we list it, it would be clear to user what they need to install for Qt6, but then again it increases maintenance burden, so I'll leave it to your good judgment.

Maybe change it to qt6 when that becomes the norm in conda? I think that's kind of the benchmark for our user-base.

ejeschke commented 2 years ago

@pllim, do you want more time to test or are you ok to merge?

pllim commented 2 years ago

Feel free to merge. Thanks!