Skip to content

Feature/experimental features#1206

Merged
wakonig merged 2 commits into
mainfrom
feature/experimental_features
Jun 29, 2026
Merged

Feature/experimental features#1206
wakonig merged 2 commits into
mainfrom
feature/experimental_features

Conversation

@wakonig

@wakonig wakonig commented Jun 27, 2026

Copy link
Copy Markdown
Member

Description

This PR adds the ability to enable certain elements through a qt settings flag called "experimental features". This should allow us to gain feedback from users by giving them early access to features without officially committing to the exact interface.

A first use case is the developer view which works but could benefit from user feedback.

@codecov

codecov Bot commented Jun 27, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 82.60870% with 4 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
bec_widgets/applications/main_app.py 40.00% 2 Missing and 1 partial ⚠️
...gets/widgets/containers/main_window/main_window.py 91.66% 0 Missing and 1 partial ⚠️

📢 Thoughts on this report? Let us know!

@github-actions

github-actions Bot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

Benchmark comparison

Threshold: 20% (lower is better).
Result: 0 regression(s), 0 improvement(s) beyond threshold.

No benchmark regression exceeded the configured threshold.

No benchmark improvement exceeded the configured threshold.

All benchmark results
Benchmark Baseline Current Change Status
BEC IPython client with companion app 2.12913 s 2.2167 s +4.11% ok
BEC IPython client without companion app 2.12382 s 2.21611 s +4.35% ok
Import bec_widgets 0.0136231 s 0.0136459 s +0.17% ok
tests/unit_tests/benchmarks/test_dock_area_benchmark.py::test_add_waveform_to_dock_area 0.15252 s 0.1513 s -0.80% ok

@wakonig wakonig force-pushed the feature/experimental_features branch from 7ecc6e8 to c07a8f5 Compare June 27, 2026 07:04
@wakonig wakonig marked this pull request as ready for review June 27, 2026 08:18
Copilot AI review requested due to automatic review settings June 27, 2026 08:18
@wakonig wakonig self-assigned this Jun 27, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds a global “experimental features” flag (persisted via QSettings) and wires it into the UI so experimental-only elements (initially the Developer/IDE view) can be exposed to users behind a restart-gated toggle.

Changes:

  • Persist a global experimental-features boolean in the profile metadata (_meta.ini) via profile_utils.
  • Add a checkable “Enable Experimental Features” menu action that persists the flag and prompts for restart.
  • Conditionally register DeveloperView in BECMainApp only when the flag is enabled; add unit tests for default/flag persistence.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
tests/unit_tests/test_main_widnow.py Adds a test ensuring the menu action persists the experimental flag and requests restart.
tests/unit_tests/test_main_app.py Adds a test ensuring the developer view is not present when experimental features are disabled.
tests/unit_tests/test_dock_area.py Adds a persistence test for the global experimental-features flag.
bec_widgets/widgets/containers/main_window/main_window.py Adds the “Enable Experimental Features” QAction and restart prompt handling.
bec_widgets/widgets/containers/dock_area/profile_utils.py Adds settings key + getter/setter for the global experimental-features flag.
bec_widgets/applications/main_app.py Gates DeveloperView registration behind the experimental-features flag.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/unit_tests/test_main_widnow.py
Comment thread tests/unit_tests/test_main_widnow.py
Comment thread tests/unit_tests/test_main_app.py
Comment thread bec_widgets/widgets/containers/main_window/main_window.py
Comment thread bec_widgets/applications/main_app.py

@d-perl d-perl left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

this is great, I think it will be very useful and help to get stuff out the door and iterate faster

@wakonig wakonig merged commit 9ce7e36 into main Jun 29, 2026
48 checks passed
@wakonig wakonig deleted the feature/experimental_features branch June 29, 2026 07:41
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.

3 participants