eclipse-iceoryx / iceoryx2

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

[#195] add sliced api #203

Closed elfenpiff closed 2 months ago

elfenpiff commented 2 months ago

Notes for Reviewer

This PR prepares the API for the new untyped API by introducing .typed::<T>() in the pub/sub builder which returns a typed builder.

In the upcoming sliced and untyped API a similar method will be introduced called .sliced::<T>() or .untyped() that will return a sliced- or untyped-builder.

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. [x] All open points are addressed and tracked via issues

References

Relates to #195

codecov[bot] commented 2 months ago

Codecov Report

Attention: Patch coverage is 94.59459% with 8 lines in your changes are missing coverage. Please review.

Project coverage is 78.58%. Comparing base (1f15bc0) to head (9fdc62f).

Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203/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/203?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 #203 +/- ## ========================================== + Coverage 78.55% 78.58% +0.02% ========================================== Files 181 181 Lines 19970 19984 +14 ========================================== + Hits 15688 15704 +16 + Misses 4282 4280 -2 ``` | [Files](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?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/src/config.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fconfig.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL2NvbmZpZy5ycw==) | `65.17% <ø> (ø)` | | | [iceoryx2/src/port/publisher.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fport%2Fpublisher.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL3BvcnQvcHVibGlzaGVyLnJz) | `81.86% <ø> (ø)` | | | [iceoryx2/src/port/subscriber.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fport%2Fsubscriber.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL3BvcnQvc3Vic2NyaWJlci5ycw==) | `85.79% <ø> (ø)` | | | [iceoryx2/src/port/update\_connections.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fport%2Fupdate_connections.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL3BvcnQvdXBkYXRlX2Nvbm5lY3Rpb25zLnJz) | `0.00% <ø> (ø)` | | | [iceoryx2/src/sample.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fsample.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL3NhbXBsZS5ycw==) | `70.83% <ø> (ø)` | | | [iceoryx2/src/sample\_mut.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fsample_mut.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL3NhbXBsZV9tdXQucnM=) | `100.00% <ø> (ø)` | | | [...x2/src/service/dynamic\_config/publish\_subscribe.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fservice%2Fdynamic_config%2Fpublish_subscribe.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL3NlcnZpY2UvZHluYW1pY19jb25maWcvcHVibGlzaF9zdWJzY3JpYmUucnM=) | `94.44% <ø> (ø)` | | | [iceoryx2/src/service/header/publish\_subscribe.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fservice%2Fheader%2Fpublish_subscribe.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL3NlcnZpY2UvaGVhZGVyL3B1Ymxpc2hfc3Vic2NyaWJlLnJz) | `100.00% <ø> (ø)` | | | [iceoryx2/src/service/mod.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fservice%2Fmod.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL3NlcnZpY2UvbW9kLnJz) | `71.73% <ø> (ø)` | | | [...ryx2/src/service/port\_factory/publish\_subscribe.rs](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree&filepath=iceoryx2%2Fsrc%2Fservice%2Fport_factory%2Fpublish_subscribe.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx#diff-aWNlb3J5eDIvc3JjL3NlcnZpY2UvcG9ydF9mYWN0b3J5L3B1Ymxpc2hfc3Vic2NyaWJlLnJz) | `89.28% <ø> (ø)` | | | ... and [6 more](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx) | | ... and [1 file with indirect coverage changes](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx2/pull/203/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=eclipse-iceoryx)