Skip to content

fix!: Mark partial functions as experimental#1780

Open
maximilianruesch wants to merge 3 commits into
mainfrom
mr/fix/set-partial-functions-experimental
Open

fix!: Mark partial functions as experimental#1780
maximilianruesch wants to merge 3 commits into
mainfrom
mr/fix/set-partial-functions-experimental

Conversation

@maximilianruesch
Copy link
Copy Markdown
Collaborator

@maximilianruesch maximilianruesch commented May 29, 2026

There are a few cases that we can handle partial functions in, i.e. when the actual call is not partial (such as qubits.take(i). However, passing partial function values is unsupported lower down the stack, so we must mark them as experimental for now.

Closes #1772

BREAKING CHANGE: Marks a feature that was non-experimental (but was not executable) as experimental.

@maximilianruesch maximilianruesch changed the title fix!: set partial functions to be experimental fix!: Mark partial functions as experimental May 29, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 29, 2026

🐰 Bencher Report

Branchmr/fix/set-partial-functions-experimental
TestbedLinux
Click to view all benchmark results
Benchmarkhugr_bytesBenchmark Result
bytes x 1e3
(Result Δ%)
Upper Boundary
bytes x 1e3
(Limit %)
hugr_nodesBenchmark Result
nodes
(Result Δ%)
Upper Boundary
nodes
(Limit %)
tests/benchmarks/test_big_array.py::test_big_array_compile📈 view plot
🚷 view threshold
158.77 x 1e3
(0.00%)Baseline: 158.77 x 1e3
160.36 x 1e3
(99.01%)
📈 view plot
🚷 view threshold
6,641.00
(0.00%)Baseline: 6,641.00
6,707.41
(99.01%)
tests/benchmarks/test_ctrl_flow.py::test_many_ctrl_flow_compile📈 view plot
🚷 view threshold
27.53 x 1e3
(0.00%)Baseline: 27.53 x 1e3
27.81 x 1e3
(99.01%)
📈 view plot
🚷 view threshold
1,074.00
(0.00%)Baseline: 1,074.00
1,084.74
(99.01%)
tests/benchmarks/test_queue_push_pop.py::test_queue_push_benchmark_compile📈 view plot
🚷 view threshold
10.91 x 1e3
(0.00%)Baseline: 10.91 x 1e3
11.02 x 1e3
(99.01%)
📈 view plot
🚷 view threshold
308.00
(0.00%)Baseline: 308.00
311.08
(99.01%)
tests/benchmarks/test_queue_push_pop.py::test_queue_push_pop_benchmark_compile📈 view plot
🚷 view threshold
14.84 x 1e3
(0.00%)Baseline: 14.84 x 1e3
14.99 x 1e3
(99.01%)
📈 view plot
🚷 view threshold
435.00
(0.00%)Baseline: 435.00
439.35
(99.01%)
🐰 View full continuous benchmarking report in Bencher

@maximilianruesch maximilianruesch marked this pull request as ready for review May 29, 2026 09:31
@maximilianruesch maximilianruesch requested a review from a team as a code owner May 29, 2026 09:31
@codecov-commenter
Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.98%. Comparing base (b6c044e) to head (0f18c7e).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1780   +/-   ##
=======================================
  Coverage   92.98%   92.98%           
=======================================
  Files         135      135           
  Lines       13053    13061    +8     
=======================================
+ Hits        12137    12145    +8     
  Misses        916      916           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@codspeed-hq
Copy link
Copy Markdown

codspeed-hq Bot commented May 29, 2026

Merging this PR will not alter performance

✅ 9 untouched benchmarks


Comparing mr/fix/set-partial-functions-experimental (0f18c7e) with main (5be749a)

Open in CodSpeed

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.

[Bug]: Partial functions should be experimental

2 participants