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

Swtich to build_export_depend for libpcl-all-dev #447

Merged
merged 1 commit into from
Apr 23, 2024

Conversation

Yadunund
Copy link
Contributor

Fix #446

Once merged, a new bloom release is required.

Signed-off-by: Yadunund <yadunund@openrobotics.org>
Copy link
Contributor

@Aposhian Aposhian left a comment

Choose a reason for hiding this comment

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

LGTM!

@SteveMacenski SteveMacenski merged commit 44d0274 into ros-perception:ros2 Apr 23, 2024
1 of 4 checks passed
@Yadunund Yadunund deleted the yadu/fix-#446 branch April 24, 2024 00:17
SteveMacenski pushed a commit that referenced this pull request May 29, 2024
Signed-off-by: Yadunund <yadunund@openrobotics.org>
SteveMacenski added a commit that referenced this pull request May 29, 2024
* Swtich to build_export_depend for libpcl-all-dev (#447)

Signed-off-by: Yadunund <yadunund@openrobotics.org>

* bump to 2.5.2 for release

---------

Signed-off-by: Yadunund <yadunund@openrobotics.org>
Co-authored-by: Yadu <yadunund@gmail.com>
@Rayman
Copy link
Contributor

Rayman commented May 30, 2024

Due to this change the build for iron is failing:

https://build.ros2.org/job/Ibin_uJ64__pcl_conversions__ubuntu_jammy_amd64__binary/

jazzy doesn't have this commit yet
https://build.ros2.org/job/Jbin_uN64__pcl_conversions__ubuntu_noble_amd64__binary/

I think this can be solved in two ways

  1. This package doesn't need any dependencies to build. It only contains headers. Therefore we move all find_package call to the BUILD_TEST section
  2. build_export_depend doesn't pull in the dependeny during build, only for dependent packages. Therefore we can also convert the PCL dependency to a <build> depend tag

@SteveMacenski
Copy link
Member

SteveMacenski commented May 30, 2024

I defer to your judgement - open a PR and I can run again

Also, possibly happy to add you as a maintainer here as well so I'm not a blocker. We'd have to ask others, but I think you are diligent and well meet the criteria. Would you be interested in that?

@Rayman
Copy link
Contributor

Rayman commented May 31, 2024

I'll open a PR for that

If you want you can add me as maintainer, I have a bit of time for reviewing code and doing some small fixes. Maybe add a CI to this repo.

@Aposhian
Copy link
Contributor

This package doesn't need any dependencies to build. It only contains headers. Therefore we move all find_package call to the BUILD_TEST section

I don't think that is ideal, since the headers for this package pull in PCL headers. Yes, building this package doesn't need to find package PCL, but if you build a dependent package, then it's weird because you could only include headers from pcl_conversions, but then you would need to find_package PCL yourself. Normally calling find_package on dependenies shows up in the CMake package config file, and I believe that is what build_export_depend is intended to indicate.

build_export_depend doesn't pull in the dependeny during build, only for dependent packages. Therefore we can also convert the PCL dependency to a <build> depend tag

It was a build depend before this PR was merged, and the build was broken then for a different reason.

@Aposhian
Copy link
Contributor

Actually I think we may just be able to fix this by putting libpcl-all-dev as a build_depend and a build_export_depend.

@SteveMacenski
Copy link
Member

@cottsay @paulbovbel any objections to adding @Rayman as a co-maintainer on this? He's been active here for some time and I trust his judgement.

@Rayman
Copy link
Contributor

Rayman commented May 31, 2024

Hmm, on further thought you still need to find_package(PCL) before you can ament_export_dependencies(PCL). So a <build_depend> + <build_export_depend> seems the best indeed.

@SteveMacenski
Copy link
Member

Fire up a PR and we can do this again

🎵 Oh round, oh round we go 🎵

Rayman added a commit to nobleo/perception_pcl that referenced this pull request Jun 3, 2024
SteveMacenski pushed a commit that referenced this pull request Jun 3, 2024
* Fix `Could NOT find Boost (missing: Boost_INCLUDE_DIR)`

Fix #446
See the discussion at #447

* Fix ament_cpplint

* Fix ament_lint_cmake
@Timple
Copy link

Timple commented Jun 4, 2024

Cool, thanks @Rayman

Would it be possible to re-bloom this @SteveMacenski ? 🙂

Rayman added a commit to nobleo/perception_pcl that referenced this pull request Jun 6, 2024
SteveMacenski pushed a commit that referenced this pull request Jun 6, 2024
Same fix as #452, but now for `pcl_conversions`
Fix #446
See the discussion at #447
SteveMacenski pushed a commit that referenced this pull request Jun 6, 2024
Same fix as #452, but now for `pcl_conversions`
Fix #446
See the discussion at #447
SteveMacenski added a commit that referenced this pull request Jun 6, 2024
* Fix `Could NOT find Boost (missing: Boost_INCLUDE_DIR)` #452 (#454)

Same fix as #452, but now for `pcl_conversions`
Fix #446
See the discussion at #447

* bump to 2.5.4

---------

Co-authored-by: Ramon Wijnands <ramon.wijnands@nobleo.nl>
@SteveMacenski
Copy link
Member

🎵 Round and round we go 🎵

ros/rosdistro#41528

audrow pushed a commit to audrow/perception_pcl that referenced this pull request Aug 20, 2024
Signed-off-by: Yadunund <yadunund@openrobotics.org>
@audrow audrow mentioned this pull request Aug 20, 2024
SteveMacenski pushed a commit that referenced this pull request Aug 20, 2024
* Swtich to build_export_depend for libpcl-all-dev (#447)

Signed-off-by: Yadunund <yadunund@openrobotics.org>

* Add build depend

Signed-off-by: audrow <audrow@google.com>

---------

Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: audrow <audrow@google.com>
Co-authored-by: Yadu <yadunund@gmail.com>
@Timple
Copy link

Timple commented Oct 21, 2024

🎵 Oh round, oh round we go 🎵

Indeed 😉

I spend another day chasing a hard to find dependency issue:
autowarefoundation/autoware.universe#9131

Turns out this has not been released for Jazzy. Would you mind a jazzy bloom @SteveMacenski ?

Timple added a commit to nobleo/autoware.universe that referenced this pull request Oct 21, 2024
Timple added a commit to nobleo/autoware.universe that referenced this pull request Oct 21, 2024
Timple added a commit to nobleo/autoware.universe that referenced this pull request Oct 21, 2024
@SteveMacenski
Copy link
Member

Hi ho. Sorry for the delay, we had ROSCon, ROS-I, and then I took a short vacation while in Europe. I'm getting back to work this morning :-)

@Rayman have you run a release yet or for a new distribution? This might be a good place to try it out. If not, I can give you some instructions if you're not familiar with the process. We basically need to branch off jazzy from ros2 and run bloom for jazzy. We just need to check that no major API/ABI breaking changes are on jazzy from when it was forked from ros2 to break ABI/API, but I just looked and I don't think that's the case, so it should be a straight forward new-distribution bloom release.

@Timple if @Rayman doesn't get back to us in a week or doesn't have the time, ping me again and I'll do it.

@Timple
Copy link

Timple commented Nov 4, 2024

Well, no need for excuses to go on a holliday 😄

I'm happy to do the release as well. But neither I nor Rayman have access I guess: https://github.com/ros2-gbp/ros2-gbp-github-org/blob/130e2325ce8558570514efce7a9cc77a8c9288c2/perception.tf#L3

@SteveMacenski
Copy link
Member

SteveMacenski commented Nov 4, 2024

Please submit a PR to add it and tag me in. Steven Ragnarok should be able to easily merge that to give you access - though I think that's for Rayman. I don't think you have maintainer rights on this repo (... yet, wanna help? 😉 ) for you to also have release rights

@Timple
Copy link

Timple commented Nov 4, 2024

I'll leave it to @Rayman for now 🙂

@Rayman
Copy link
Contributor

Rayman commented Nov 5, 2024

Hi @SteveMacenski,

I've looked at the commits that are now on the ros2 branch and I see that there are no breaking changes, only features. So my plan is as follows:

  • Tag version 2.6.2 from the current ros2 branch
  • Release this version in jazzy & rolling
  • Keep releasing the ros2 branch to jazzy & rolling until we have a PR with a breaking feature

Is this OK?

@SteveMacenski
Copy link
Member

You could do this yes. I would recommend branching now though for logistical reasons. Its easy to forget when merging a PR that is breaking ABI/API the status of the ros2 branch and if it includes jazzy to remember to do the fork off then. Its better to do the fork immediately so that there's never a question about the state when merging into ros2. Otherwise, you can run bloom and re-release breaking changes or someone on the Jazzy distribution uses ros2 branch for source builds and they have new build errors.

@Rayman
Copy link
Contributor

Rayman commented Nov 7, 2024

I've created the 2.6.2 release tag. The next step is to bloom this for jazzy & rolling.

@Timple
Copy link

Timple commented Nov 7, 2024

After: ros2-gbp/ros2-gbp-github-org#635

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.

Regression in ROS 2 Iron Buildfarm
5 participants