Skip to content

Update DroneCAN GUI to PyQt6#120

Merged
tridge merged 7 commits intodronecan:masterfrom
joshanne:pr/update-to-pyqt6
Mar 30, 2026
Merged

Update DroneCAN GUI to PyQt6#120
tridge merged 7 commits intodronecan:masterfrom
joshanne:pr/update-to-pyqt6

Conversation

@joshanne
Copy link
Copy Markdown
Collaborator

@joshanne joshanne commented Mar 26, 2026

Resolves Issue #107

This is probably best considered a draft, but if anyones willing to test, that'd be great.
The testing I've done seems to be fine - things just work.

This PR is currently dependent on the following compatibility changes that have been individually itemised to reduce the complexity of this migration:

This updates dronecan_gui_tool to use PyQt6 instead of PyQt5 (which is end of life).

Largely, PyQt5 changed to PyQt6.
QDirModel was obsoleted and moved to QFileSystemModel.
Some Classes were shifted into different Qt Packages.

Haven't test built on windows - this PR should generate the *.msi for me, hopefully.

@joshanne joshanne force-pushed the pr/update-to-pyqt6 branch from 82e9c79 to 769cb5e Compare March 27, 2026 08:33
@tridge
Copy link
Copy Markdown
Member

tridge commented Mar 27, 2026

Thanks! key thing is testing on MacOS and Windows

modifies all imports from PyQt5 to PyQt6
Corrected imports for QAction
QDirModel was deprecated in Qt5 and removed in Qt6.

The docs talk about QFileSystemModel being the recommended alternative.
When building, ensure pyqt6 is packaged.
@tridge tridge force-pushed the pr/update-to-pyqt6 branch from fdf090c to 32534ec Compare March 29, 2026 22:47
tridge
tridge previously requested changes Mar 29, 2026
Copy link
Copy Markdown
Member

@tridge tridge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the newly added setup_mac.py would need an update for this change as it references Qt5

Drops requirement for qtwidgets and updates to PyQt6
@joshanne
Copy link
Copy Markdown
Collaborator Author

joshanne commented Mar 29, 2026

Updated the macos build to drop support for qtwidgets and PyQt6.

Just waiting on the builds to pass to check it.

@Huibean are you able to test this build?

Copy link
Copy Markdown
Member

@Huibean Huibean left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@tridge tridge dismissed their stale review March 30, 2026 00:25

fixed

@tridge tridge merged commit 35864d0 into dronecan:master Mar 30, 2026
5 checks passed
@joshanne joshanne mentioned this pull request Mar 30, 2026
@joshanne joshanne linked an issue Apr 1, 2026 that may be closed by this pull request
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.

Qt5 is EOL

3 participants