Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to PySide6 #171

Merged
merged 22 commits into from
May 6, 2024
Merged

Switch to PySide6 #171

merged 22 commits into from
May 6, 2024

Conversation

sea-bass
Copy link
Owner

@sea-bass sea-bass commented May 6, 2024

This PR switches from PyQt5 (GPL license) to PySide6 (LGPL license, not restrictive if you dynamically link as in this case).

It should also better support macOS (see https://wiki.qt.io/Qt_for_Python) -- @eholum can you check how this one works for you?

@sea-bass sea-bass requested a review from eholum May 6, 2024 03:15
Copy link

github-actions bot commented May 6, 2024

Coverage

Coverage Report
FileStmtsMissCoverMissing
__init__.py00100% 
core
   __init__.py90100% 
   dynamics.py430100% 
   gazebo.py136894%55, 124, 230, 244–248
   hallway.py731086%59, 61, 63, 96, 158, 196–199, 205
   locations.py1262183%53, 55, 69, 84–85, 87, 98–99, 101–102, 119, 177, 192, 217, 227, 273, 284–285, 287–288, 312
   objects.py69494%78, 106, 137, 197
   robot.py2145872%140–141, 203, 216, 263, 277–278, 282, 286, 292–293, 295–296, 313–314, 342, 344–345, 366–367, 370–373, 376–378, 403, 407–409, 411, 413–416, 429–431, 435, 437–439, 441, 444–445, 448, 470–471, 479, 484–489, 492, 505
   room.py48197%113
   world.py57113875%146–147, 183–184, 188, 241–242, 244–245, 273–274, 325, 339–340, 342–343, 372–376, 378–380, 382–383, 386, 390–394, 397–399, 402–409, 440, 476–477, 480, 496, 526–527, 538, 541, 563–567, 569–571, 574–575, 578–581, 583, 586, 588–590, 592–594, 596, 615, 625–629, 664–665, 668–671, 688–689, 695–696, 698–699, 701, 703–704, 706, 708–709, 719–720, 723, 725, 739, 741, 748, 795, 826–827, 846–847, 851–852, 887–888, 890, 907–908, 927–931, 943–946, 958–961, 986–987, 989, 1033–1034, 1166–1167
   yaml_utils.py1061189%64, 68, 152–154, 158–159, 182–183, 207–208
gui
   __init__.py20100% 
   main.py1583279%24, 26, 28–30, 32, 53, 85–86, 189–192, 199–202, 204, 207–213, 217–219, 223–224, 230, 241
   world_canvas.py2305874%29–31, 35–37, 41, 117–118, 124, 126, 128, 191, 195, 246–251, 257–258, 260–262, 267–268, 271, 274–276, 279, 284–285, 287, 314, 336–341, 344, 347–348, 363–365, 368, 385, 414, 432–433, 435–436, 478, 494, 501
manipulation
   __init__.py10100% 
   grasping.py2366174%102, 110–112, 114–122, 124, 132, 462, 464–466, 470–472, 566–568, 571–575, 583, 586–588, 593–594, 600–604, 607–614, 617–619, 628, 630, 632–638
navigation
   __init__.py30100% 
   a_star.py781087%67–72, 74–76, 165
   execution.py34488%46–47, 49–50
   occupancy_grid.py1391489%44–47, 49–53, 56, 192, 226, 234, 238
   path_planner.py26676%33, 36, 38, 42, 85, 90
   planner_base.py591771%29–35, 51, 57–59, 140–145
   prm.py725622%40–44, 46, 50–51, 54, 57–64, 66–67, 76–79, 85, 101–102, 104–109, 111–112, 115–118, 121–126, 135, 144, 154, 156, 158–159, 161, 174–178
   rrt.py172795%228, 353–354, 360–361, 363, 392
   world_graph.py70395%118, 121, 145
planning
   __init__.py00100% 
   actions.py664334%59–60, 62, 66–75, 77–80, 82–86, 88–91, 93–97, 99–100, 102–104, 150–151, 154–158
planning/pddlstream
   __init__.py7185%13
   default_mappings.py90100% 
   planner.py40880%119–126
   primitives.py57296%68, 208
   utils.py85396%66, 99–100
utils
   __init__.py00100% 
   general.py33487%23, 45, 51–52
   knowledge.py1391688%90–91, 100, 135–138, 145, 149–150, 163, 178, 182, 224, 240, 295
   motion.py60690%56, 67–71
   polygon.py1110100% 
   pose.py89396%79, 211, 227
   search_graph.py93396%240–242
   trajectory.py650100% 
TOTAL352960882% 

Tests Skipped Failures Errors Time
168 0 💤 0 ❌ 0 🔥 3m 3s ⏱️

Copy link
Collaborator

@eholum eholum left a comment

Choose a reason for hiding this comment

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

We are in business.

I tested both the docker and non-docker workflows on MacOS (I skipped my VM).

The only caveat for using Docker is setting DISPLAY=host.docker.internal:0 in the compose file but meh.

@eholum
Copy link
Collaborator

eholum commented May 6, 2024

Screenshot 2024-05-06 at 4 55 04 PM

Base automatically changed from support-jazzy to main May 6, 2024 23:04
@sea-bass
Copy link
Owner Author

sea-bass commented May 6, 2024

We are in business.

I tested both the docker and non-docker workflows on MacOS (I skipped my VM).

The only caveat for using Docker is setting DISPLAY=host.docker.internal:0 in the compose file but meh.

Is this a MacOS specific thing? We can add some doc instructions or something for that?

@sea-bass sea-bass marked this pull request as ready for review May 6, 2024 23:06
@sea-bass sea-bass merged commit 83ba5ac into main May 6, 2024
8 of 13 checks passed
@sea-bass sea-bass deleted the pyside6 branch May 6, 2024 23:12
@eholum
Copy link
Collaborator

eholum commented May 7, 2024

Is this a MacOS specific thing? We can add some doc instructions or something for that?

I would say it's not worth managing documentation for getting containers on MacOS access to DISPLAY, it's a headache that doesn't seem to have one solution. I'm just using what's worked for me. Maybe we could just add a comment to the compose file saying that this works on Ubuntu but other OS's might have specific needs?

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.

None yet

2 participants