Skip to content

Use explicit Boost targets in warehouse_ros_sqlite - #62

Merged
rhaschke merged 2 commits into
moveit:ros2from
Tobias-Fischer:codex/robostack-warehouse-ros-sqlite-boost-targets
Jul 20, 2026
Merged

Use explicit Boost targets in warehouse_ros_sqlite#62
rhaschke merged 2 commits into
moveit:ros2from
Tobias-Fischer:codex/robostack-warehouse-ros-sqlite-boost-targets

Conversation

@Tobias-Fischer

Copy link
Copy Markdown
Contributor

This PR is part of an effort to contribute RoboStack downstream patches back upstream.

Origin: RoboStack patch/ros-rolling-warehouse-ros-sqlite.patch, authored by Daisuke Nishimatsu.

Best-guess rationale: warehouse_ros_sqlite only needs Boost headers for the library itself and filesystem/thread for the tests. Linking the explicit Boost targets avoids relying on the aggregate ${Boost_LIBRARIES} variable and keeps the target dependencies precise for modern CMake toolchains.

This upstreams a RoboStack build fix from patch/ros-rolling-warehouse-ros-sqlite.patch.

The best-guess rationale is that warehouse_ros_sqlite only needs Boost headers for the library itself and filesystem/thread for the tests. Linking the explicit Boost targets avoids relying on the aggregate ${Boost_LIBRARIES} variable and keeps the target dependencies precise for modern CMake toolchains.

Signed-off-by: Tobias Fischer <info@tobiasfischer.info>
@Tobias-Fischer

Copy link
Copy Markdown
Contributor Author

FYI @wep21 and @traversaro, this upstream PR comes from the RoboStack patch upstreaming tracker: RoboStack/robostack.github.io#16. Origin patch: patch/ros-rolling-warehouse-ros-sqlite.patch.

@rhaschke rhaschke left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Generally looks good to me.

Comment thread CMakeLists.txt Outdated
Co-authored-by: Robert Haschke <rhaschke@users.noreply.github.com>
@rhaschke
rhaschke merged commit 5e2fd13 into moveit:ros2 Jul 20, 2026
2 of 8 checks passed
nbbrooks added a commit that referenced this pull request Aug 3, 2026
Four problems, all of which leave CI on `ros2` uninformative today.

1. fail-fast

The matrix had no `fail-fast: false`, so it defaulted to true. The rolling-main
job fails in ~60s (problem 2) and GitHub then cancels every sibling before it
can report. From run 29725301361 on 5e2fd13:

  rolling-main + ccov  07:39:31 -> 07:40:39  failure
  rolling-testing      07:39:31 -> 07:40:47  cancelled
  humble-main          07:39:31 -> 07:40:47  cancelled
  humble-testing       07:39:32 -> 07:40:47  cancelled
  iron-main            07:39:31 -> 07:40:47  cancelled
  iron-testing         07:39:31 -> 07:40:46  cancelled

One environmental failure, five results discarded -- including the two humble
jobs that would have passed. As a result #62, the only commit on this branch
since 1.0.8, had never been validated by CI.

2. rolling + ROS_REPO: main on Resolute

Rolling's base OS moved to Ubuntu Resolute, and Rolling's `main` apt repo has no
Resolute packages yet, so the job dies in setup before CMake:

  E: Unable to locate package ros-rolling-ros-environment
  'setup_rosdep' returned with code '100' after 0 min 8 sec

Switch it to `testing`, which does work on Resolute, and pin OS_CODE_NAME
explicitly rather than relying on industrial_ci's default -- that default has
already changed once.

3. iron is EOL and this package is not released to it

Iron reached EOL in November 2024, and iron/distribution.yaml carries no
`release:` version for warehouse_ros_sqlite. A third of the matrix was testing a
distro that never ships.

4. Three released distros had no coverage

Released from this single `ros2` branch, versus what was tested:

  humble  1.0.8-1  tested
  jazzy   1.0.8-1  NOT tested
  kilted  1.0.8-1  NOT tested
  lyrical 1.0.8-1  NOT tested
  rolling 1.0.8-2  tested (broken)

Coverage moves off the deleted rolling-main job onto rolling-testing, making it
non-blocking -- the same trade PickNikRobotics/rviz_visual_tools#301 made.

lyrical gates. It is released, it is Resolute, and ros-lyrical-warehouse-ros is
published, so it gives a blocking Resolute signal rather than leaving all
Resolute coverage on the non-blocking rolling job. Verified green.

rolling stays non-blocking because ros-rolling-warehouse-ros is not published:

  E: Unable to locate package ros-rolling-warehouse-ros

warehouse_ros 2.0.7 carries the tf2 .h -> .hpp fix that unblocks that build;
drop NONBLOCKING from rolling once it is on the buildfarm.

Note this renames rolling-testing and deletes rolling-main + ccov, both of which
are required status checks on `ros2`, so branch protection must be updated to
Format, humble-main, humble-testing, jazzy-main, kilted-main, lyrical-main
before this can merge.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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.

2 participants