Skip to content

Fix compilation errors from upstream capy io_result API change#214

Open
sgerbino wants to merge 1 commit intocppalliance:developfrom
sgerbino:pr/capy-update
Open

Fix compilation errors from upstream capy io_result API change#214
sgerbino wants to merge 1 commit intocppalliance:developfrom
sgerbino:pr/capy-update

Conversation

@sgerbino
Copy link
Collaborator

@sgerbino sgerbino commented Mar 19, 2026

Summary by CodeRabbit

Bug Fixes

  • Fixed signal set cancellation handling to return proper result values instead of incomplete error states, ensuring consistent behavior across signal wait operations when cancellation is requested.

@coderabbitai
Copy link

coderabbitai bot commented Mar 19, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 471c64a8-d755-4fce-8702-861f7052aaaa

📥 Commits

Reviewing files that changed from the base of the PR and between 07fab88 and 3f5d23d.

⛔ Files ignored due to path filters (1)
  • test/unit/io_context.cpp is excluded by !**/test/**
📒 Files selected for processing (2)
  • include/boost/corosio/io/io_signal_set.hpp
  • include/boost/corosio/native/native_signal_set.hpp

📝 Walkthrough

Walkthrough

Both signal set implementations updated to return cancellation errors with explicit integer values. When cancellation is requested, await_resume() now returns a complete capy::io_result<int> pair containing the error and a zero value, instead of returning error-only.

Changes

Cohort / File(s) Summary
Signal set cancellation handling
include/boost/corosio/io/io_signal_set.hpp, include/boost/corosio/native/native_signal_set.hpp
Updated await_resume() methods to return {capy::error::canceled, 0} when cancellation is requested, replacing error-only returns with explicit integer payload for consistency.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Poem

🐰 A signal caught, a cancel sent,
Now errors speak with clearer intent!
Zero values, hand-in-hand with care,
Where once was silence, now replies are there. ✨

🚥 Pre-merge checks | ✅ 2
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Fix compilation errors from upstream capy io_result API change' accurately describes the primary change—addressing compilation errors caused by an upstream API change in the capy io_result type. Both modified files update return statements to align with the new API requirement of returning an explicit integer payload alongside the error code.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Mar 19, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 77.76%. Comparing base (07fab88) to head (3f5d23d).

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           develop     #214      +/-   ##
===========================================
+ Coverage    77.75%   77.76%   +0.01%     
===========================================
  Files           96       96              
  Lines         7452     7451       -1     
  Branches      1836     1836              
===========================================
  Hits          5794     5794              
+ Misses        1118     1117       -1     
  Partials       540      540              
Files with missing lines Coverage Δ
include/boost/corosio/io/io_signal_set.hpp 96.15% <ø> (+3.56%) ⬆️
include/boost/corosio/native/native_signal_set.hpp 100.00% <ø> (ø)

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 07fab88...3f5d23d. Read the comment docs.

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

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.

1 participant