eclipse-iceoryx / iceoryx2

Eclipse iceoryx2™ - true zero-copy inter-process-communication in pure Rust
https://iceoryx.io
Apache License 2.0
1.03k stars 40 forks source link

[#425] Periodic timer #428

Closed elfenpiff closed 1 month ago

elfenpiff commented 1 month ago

Notes for Reviewer

For the waitset we require a periodic timer so that it can be triggered cyclicly with multiple timeouts. The standard use case is a process that shall publish messages on two distinct services with different frequencies.

Another use case is to wait for incoming messages on a service with liveliness property. The process shall be triggered as soon as a timeout was hit so that it can take actions.

Pre-Review Checklist for the PR Author

  1. [x] Add sensible notes for the reviewer
  2. [x] PR title is short, expressive and meaningful
  3. [x] Relevant issues are linked in the References section
  4. [x] Every source code file has a copyright header with SPDX-License-Identifier: Apache-2.0 OR MIT
  5. [x] Branch follows the naming format (iox2-123-introduce-posix-ipc-example)
  6. [x] Commits messages are according to this guideline
    • [x] Commit messages have the issue ID ([#123] Add posix ipc example)
    • [x] Commit author matches Eclipse Contributor Agreement (and ECA is signed)
  7. [x] Tests follow the best practice for testing
  8. [x] Changelog updated in the unreleased section including API breaking changes
  9. [x] Assign PR to reviewer
  10. [x] All checks have passed (except task-list-completed)

Checklist for the PR Reviewer

Post-review Checklist for the PR Author

  1. [ ] All open points are addressed and tracked via issues

References

Closes #425

orecham commented 1 month ago

Just needs green CI.

codecov[bot] commented 1 month ago

Codecov Report

Attention: Patch coverage is 74.54545% with 28 lines in your changes missing coverage. Please review.

Project coverage is 78.97%. Comparing base (aec86ae) to head (28cc01a). Report is 11 commits behind head on main.

Files with missing lines Patch % Lines
iceoryx2-bb/posix/src/timer.rs 74.54% 28 Missing :warning:
Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/428/graphs/tree.svg?width=650&height=150&src=pr&token=FN3YFXTJCI&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx)](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/428?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx) ```diff @@ Coverage Diff @@ ## main #428 +/- ## ========================================== - Coverage 78.97% 78.97% -0.01% ========================================== Files 194 195 +1 Lines 22730 22840 +110 ========================================== + Hits 17951 18037 +86 - Misses 4779 4803 +24 ``` | [Files with missing lines](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/428?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx) | Coverage Δ | | |---|---|---| | [iceoryx2-bb/posix/src/timer.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/428?src=pr&el=tree&filepath=iceoryx2-bb%2Fposix%2Fsrc%2Ftimer.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDItYmIvcG9zaXgvc3JjL3RpbWVyLnJz) | `74.54% <74.54%> (ø)` | | ... and [4 files with indirect coverage changes](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/428/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx)