Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Redesign Player class with PIMPL idiom #1447

Merged
merged 19 commits into from
Sep 20, 2023
Merged

Conversation

roncapat
Copy link
Contributor

Prerequisite of #1419, to allow more elegant parameter parsing and constructor chaining.
Recorder has already PIMPL implementation, so this is also to align the codebase.

@roncapat roncapat marked this pull request as ready for review September 4, 2023 12:40
@roncapat roncapat requested a review from a team as a code owner September 4, 2023 12:40
@roncapat roncapat requested review from emersonknapp and jhdcs and removed request for a team September 4, 2023 12:40
@MichaelOrlov
Copy link
Contributor

@roncapat Does this PR still in the WIP (Work In Progress) stage?
I see a bunch of test failures in the player in the build_and_test CI job

@roncapat
Copy link
Contributor Author

@MichaelOrlov yep sorry, I haven't forgot about these, it's just a complex time at work. I'll be back on this as soon as I can :) I'll mark it again as draft, pending some manual testing ( I struggle to understand from CI output where the problem might be).

In the meantime, if you want, may I ask you to check especially how I had to modify the mock player / which protected methods I had to add to Player in order to let the mock player compile again?

@MichaelOrlov
Copy link
Contributor

Hi @roncapat, no worries. I want to move forward with this PR and ready to help and contribute.
I've made a thorough review and prepared all required fixes to be ready to move forward and merge this branch to the master.
Please see my PR on your repo roncapat#2

But before merging my PR on your branch please fix DCO for your commits on your branch!
After that, I will rebase my branch and then you will be able to safely merge changes from my PR and I will approve and run the full CI before merge on master.

To add your Signed-off-by line to every commit in this branch:
Ensure you have a local copy of your branch by checking out the pull request locally via command line.
In your local branch, run: git rebase HEAD~17 --signoff
Force push your changes to overwrite the branch: git push --force-with-lease origin patch-3

@roncapat
Copy link
Contributor Author

Just give me 24 hours and it will be done, very appreciated! :)

@MichaelOrlov
Copy link
Contributor

Sure - take your time.

Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com>
Signed-off-by: Michael Orlov <michael.orlov@apex.ai>
Use upper level public API from owner class for callbacks to facilitate
unit tests

Signed-off-by: Michael Orlov <michael.orlov@apex.ai>
@roncapat
Copy link
Contributor Author

@MichaelOrlov all CI jobs look good now (thanks for the fixes!!).

Copy link
Contributor

@MichaelOrlov MichaelOrlov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@roncapat Thank you for your contribution.
LGTM.

@MichaelOrlov
Copy link
Contributor

Gist: https://gist.githubusercontent.com/MichaelOrlov/a39fb5e49cd1ed0fb04bc24093496a17/raw/21b5269f54d30e1fe81dc645ead0a147d9f1f06f/ros2.repos
BUILD args: --packages-above-and-dependencies rosbag2_transport rosbag2_tests
TEST args: --packages-above rosbag2_transport rosbag2_tests
ROS Distro: rolling
Job: ci_launcher
ci_launcher ran: https://ci.ros2.org/job/ci_launcher/12680

  • Linux Build Status
  • Linux-aarch64 Build Status
  • Windows Build Status

@MichaelOrlov MichaelOrlov changed the title Player PIMPL Redesign Player class with PIMPL idiom Sep 20, 2023
@MichaelOrlov MichaelOrlov merged commit 96c11b0 into ros2:rolling Sep 20, 2023
14 checks passed
@ros-discourse
Copy link

This pull request has been mentioned on ROS Discourse. There might be relevant details there:

https://discourse.ros.org/t/ros-2-tsc-meeting-minutes-2023-09-21/33733/1

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.

3 participants