Add qtpy+PySide6 UI compatibility test; fix duplicate widget names#132
Draft
Max Rakitin (mrakitin) wants to merge 1 commit intouse-qtpyfrom
Draft
Add qtpy+PySide6 UI compatibility test; fix duplicate widget names#132Max Rakitin (mrakitin) wants to merge 1 commit intouse-qtpyfrom
Max Rakitin (mrakitin) wants to merge 1 commit intouse-qtpyfrom
Conversation
- Add isstools/ui/test_ui_compat.py: headless offscreen script that loads every .ui file with qtpy.uic.loadUiType (PySide6 backend) and reports pass/fail. Must be run via 'pixi run python isstools/ui/test_ui_compat.py' so pyside6-uic is on PATH. - Fix ui_xlive.ui: rename second 'horizontalLayoutWidget_7' → 'horizontalLayoutWidget_7b' and second 'horizontalLayoutWidget_11' → 'horizontalLayoutWidget_11b'. pyside6-uic (Qt6) rejects duplicate object names; PyQt5 uic was lenient. - Fix ui_sample_manager.ui: rename second 'groupBox' → 'groupBox_2' for the same reason. All 34 .ui files now load cleanly: 34 passed, 0 failed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
Author
|
Before the fix: 18:51 $ pixi run python isstools/ui/test_ui_compat.py
OK ui_batch.ui
OK ui_batch_automated.ui
OK ui_batch_manual.ui
OK ui_beamline_setup.ui
OK ui_camera.ui
OK ui_emission_energy_selector.ui
OK ui_emission_energy_selector_no_optics.ui
OK ui_energy_selector.ui
OK ui_energy_selector_with_periodic_table.ui
OK ui_energy_selector_without_e0.ui
OK ui_info_beamline.ui
OK ui_info_general.ui
OK ui_info_shutters.ui
OK ui_johann_spectrometer.ui
OK ui_motor_widget.ui
OK ui_motor_widget_compact.ui
OK ui_pilatus.ui
OK ui_plan_queue.ui
OK ui_plan_queue_v2.ui
OK ui_processing.ui
OK ui_run.ui
Error while compiling the generated Python file
FAIL ui_sample_manager.ui: cannot unpack non-iterable NoneType object
OK ui_sample_positioner.ui
OK ui_sample_registry.ui
OK ui_scan_manager.ui
OK ui_sdd_manager.ui
OK ui_spectrometer.ui
OK ui_spectrometer_R.ui
OK ui_spectrometer_motors.ui
OK ui_trajectory_manager.ui
OK ui_tutorial.ui
OK ui_user_manager.ui
OK ui_xia_manager.ui
Error while compiling the generated Python file
FAIL ui_xlive.ui: cannot unpack non-iterable NoneType object
Results: 32 passed, 2 failed out of 34 files. |
Contributor
Author
|
After the fix: 18:53 $ pixi run python isstools/ui/test_ui_compat.py
OK ui_batch.ui
OK ui_batch_automated.ui
OK ui_batch_manual.ui
OK ui_beamline_setup.ui
OK ui_camera.ui
OK ui_emission_energy_selector.ui
OK ui_emission_energy_selector_no_optics.ui
OK ui_energy_selector.ui
OK ui_energy_selector_with_periodic_table.ui
OK ui_energy_selector_without_e0.ui
OK ui_info_beamline.ui
OK ui_info_general.ui
OK ui_info_shutters.ui
OK ui_johann_spectrometer.ui
OK ui_motor_widget.ui
OK ui_motor_widget_compact.ui
OK ui_pilatus.ui
OK ui_plan_queue.ui
OK ui_plan_queue_v2.ui
OK ui_processing.ui
OK ui_run.ui
OK ui_sample_manager.ui
OK ui_sample_positioner.ui
OK ui_sample_registry.ui
OK ui_scan_manager.ui
OK ui_sdd_manager.ui
OK ui_spectrometer.ui
OK ui_spectrometer_R.ui
OK ui_spectrometer_motors.ui
OK ui_trajectory_manager.ui
OK ui_tutorial.ui
OK ui_user_manager.ui
OK ui_xia_manager.ui
OK ui_xlive.ui
Results: 34 passed, 0 failed out of 34 files. |
Contributor
Author
|
By the way, I've ran the same script, but with the PyQt5 within |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
That's something copilot came up with. Need to test at the beamline.
Add isstools/ui/test_ui_compat.py: headless offscreen script that loads every .ui file with qtpy.uic.loadUiType (PySide6 backend) and reports pass/fail. Must be run via 'pixi run python isstools/ui/test_ui_compat.py' so pyside6-uic is on PATH.
Fix ui_xlive.ui: rename second 'horizontalLayoutWidget_7' → 'horizontalLayoutWidget_7b' and second 'horizontalLayoutWidget_11' → 'horizontalLayoutWidget_11b'. pyside6-uic (Qt6) rejects duplicate object names; PyQt5 uic was lenient.
Fix ui_sample_manager.ui: rename second 'groupBox' → 'groupBox_2' for the same reason.
All 34 .ui files now load cleanly: 34 passed, 0 failed.