The latest merged PR makes the tests fail on my machine (osx M3, zig 0.15.2).
https://github.com/roc-lang/roc/pull/8487
Build Summary: 50/59 steps succeeded; 4 failed; 1039/1055 tests passed; 16 failed
test transitive failure
└─ tests_summary transitive failure
├─ run test eval transitive failure
│ └─ compile test eval Debug native 1 errors
├─ run test repl transitive failure
│ └─ compile test repl Debug native 1 errors
├─ run test snapshot_tool_test transitive failure
│ └─ compile test snapshot_tool_test Debug native 1 errors
└─ run test fx_platform_test 0/16 passed, 16 failed
This is the error I see most in the error message, which is huge.
src/eval/interpreter.zig:9615:94: error: missing struct field: saved_rigid_subst
try work_stack.push(.{ .apply_continuation = .{ .call_cleanup = .{
~^
Thanks for reporting @Matthieu Pizenberg! I was able to reproduce and will investigate.
I suspect this error snuck in because we don't use a merge queue. I don't think we should use one though to avoid a large increase in our power usage even though github CI is free. It just seems wasteful given how rarely it creates problems.
PR#8489 should fix it (not merged yet).
Merged :)
yeah we used to have a merge queue and it was more annoying than helpful, so we ended up accepting that occasionally we will land two PRs that interact to break main, and that's the less bad option for now :smile:
:100:
Merge queues are so annoying
When they work well, at scale, they are awesome.
But most implementations I have seen, especially ones used with Github, are much more pain than good.
In work environments, I am definitely a fan of one commit per PR with the ability to create a small tree of PRs, but I have not seen that implemented well in open source.
And that workflow works best with being able to merge a stack at once or automatically with a queue.
Last updated: Dec 21 2025 at 12:15 UTC