Skip to content

Conversation

unlessgames
Copy link
Collaborator

There was a bug in the event flattening logic that resulted in incorrectly overlapping events in the output stream for some nested polyphonic patterns which in turn supressed some events from playing downstream.

Also cleaning up empty vecs from the output.

Copy link

Benchmark for 62961ac

Click to view benchmark
Test Base PR %
Cycle/Generate 48.6±0.76µs 48.4±0.63µs -0.41%
Cycle/Parse 377.5±5.78µs 380.4±4.95µs +0.77%
Rust Phrase/Clone 435.4±6.13ns 427.9±6.43ns -1.72%
Rust Phrase/Create 75.2±1.37µs 76.7±1.16µs +1.99%
Rust Phrase/Run 663.3±7.32µs 647.3±5.13µs -2.41%
Rust Phrase/Seek 135.7±250.23µs 138.3±255.98µs +1.92%
Scripted Phrase/Clone 653.3±5.41ns 651.3±5.41ns -0.31%
Scripted Phrase/Create 989.9±16.61µs 983.8±11.27µs -0.62%
Scripted Phrase/Run 1723.5±15.30µs 1716.4±12.17µs -0.41%
Scripted Phrase/Seek 224.4±452.50µs 220.8±446.33µs -1.60%

@emuell
Copy link
Member

emuell commented Oct 16, 2025

Looks good to me and works fine from what I've tested.

@unlessgames unlessgames merged commit 60edd31 into dev Oct 16, 2025
2 checks passed
@unlessgames unlessgames deleted the fix/poly-cycles branch October 16, 2025 12:46
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.

2 participants