Skip to content

ENH: Add support for PySide6 6.9+#25422

Draft
larsoner wants to merge 4 commits intospyder-ide:masterfrom
larsoner:pyside6
Draft

ENH: Add support for PySide6 6.9+#25422
larsoner wants to merge 4 commits intospyder-ide:masterfrom
larsoner:pyside6

Conversation

@larsoner
Copy link
Contributor

@larsoner larsoner commented Dec 1, 2025

Following #24825 (comment) I:

  • Moved Q* subclasses to last position
  • Changed a bunch of if not PYSIDE2 to if not (PYSIDE2 or PYSIDE6) conditionals
  • Fixed some incomplete manual __init__ calls for those ☝️

This at least gets me to a window that opens and interacts:

Screenshot From 2025-12-01 13-22-05

The TODO I think would be:

  • Check that all if not (PYSIDE2 or PYSIDE6): conditionals call all super class inits
  • Check all Q* classes are at the end (I did things like git grep "QObject, " but this is incomplete)
  • Debug and fix the segfault when exiting (not sure how to do this)
  • Fix removed sig.emit calls (they cause a segfault)
  • Add to CIs

cc @rear1019 in case you want to test and/or contribute. I'm also happy if @ccordoba12 or someone else wants to take over

Closes #20201

@larsoner larsoner marked this pull request as draft December 1, 2025 18:34
@larsoner
Copy link
Contributor Author

larsoner commented Dec 1, 2025

I also see with a slightly better (but still incomplete!) regex:

$ git grep -P "class .*\(Q[A-Z][a-zA-Z]+,.*\)" | wc -l
32

so there are some other candidates to move Q* to the end of class definitions. Not sure if it's needed or helpful, though...

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

Successfully merging this pull request may close these issues.

Support for Qt6

1 participant