Skip to content

Remove tinyxml from macOS installations#821

Merged
christophebedard merged 7 commits intomainfrom
christophebedard/macos-remove-tinyxml
Jun 11, 2025
Merged

Remove tinyxml from macOS installations#821
christophebedard merged 7 commits intomainfrom
christophebedard/macos-remove-tinyxml

Conversation

@christophebedard
Copy link
Copy Markdown
Member

Fixes #820

tinyxml is no longer available from brew: https://formulae.brew.sh/formula/tinyxml

It's no longer needed starting from ROS 2 Jazzy:

We're still supporting Humble, which still depends on tinyxml. Since it's no longer available from brew, I can't (easily) do anything about it.

Signed-off-by: Christophe Bedard <bedard.christophe@gmail.com>
@christophebedard christophebedard requested a review from a team as a code owner June 8, 2025 17:41
@christophebedard christophebedard requested review from MichaelOrlov and emersonknapp and removed request for a team June 8, 2025 17:41
@christophebedard
Copy link
Copy Markdown
Member Author

Oh, I just looked at the macOS source build instructions for ROS 2 Humble: https://docs.ros.org/en/humble/Installation/Alternatives/macOS-Development-Setup.html#install-prerequisites. It install tinyxml from a custom formula: osrf/simulation/tinyxml1. I can try switching to that to keep Humble support.

Signed-off-by: Christophe Bedard <bedard.christophe@gmail.com>
Signed-off-by: Christophe Bedard <bedard.christophe@gmail.com>
@christophebedard
Copy link
Copy Markdown
Member Author

Looks like osrf/simulation/tinyxml1 requires an old version of CMake and brew now installs CMake version 4.0.2, so the build fails.

Let's try to use an older version of the formula to install version 3.31.1 (https://stackoverflow.com/a/58148648), which is the version mentioned in REP 2000 for Kilted on macOS. It should work for this.

Signed-off-by: Christophe Bedard <bedard.christophe@gmail.com>
@codecov
Copy link
Copy Markdown

codecov bot commented Jun 8, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 93.48%. Comparing base (6b64243) to head (3a79840).
Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #821      +/-   ##
==========================================
+ Coverage   93.38%   93.48%   +0.10%     
==========================================
  Files          10       10              
  Lines         257      261       +4     
  Branches       27       27              
==========================================
+ Hits          240      244       +4     
  Misses         17       17              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

This reverts commit 3a79840.

Signed-off-by: Christophe Bedard <bedard.christophe@gmail.com>
This reverts commit 0bde10a.

Signed-off-by: Christophe Bedard <bedard.christophe@gmail.com>
This reverts commit b48cc6e.

Signed-off-by: Christophe Bedard <bedard.christophe@gmail.com>
@christophebedard
Copy link
Copy Markdown
Member Author

Ah, osrf/simulation/tinyxml1 depends on CMake and it pulls in CMake 4.

  ==> Fetching dependencies for osrf/simulation/tinyxml1: cmake
  ==> Fetching cmake
  ==> Downloading https://ghcr.io/v2/homebrew/core/cmake/manifests/4.0.2
  ==> Downloading https://ghcr.io/v2/homebrew/core/cmake/blobs/sha256:0fd627884d0c2819a5c1c100ca7352247c40ca0bd811237139fb50606d78db23

Anyway, I'll just remove tinyxml.

Copy link
Copy Markdown
Member

@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.

LGTM

@christophebedard
Copy link
Copy Markdown
Member Author

Thanks for the review. I'll wait for a confirmation (#820) before merging.

@christophebedard christophebedard merged commit 38b0a7a into main Jun 11, 2025
29 checks passed
@christophebedard christophebedard deleted the christophebedard/macos-remove-tinyxml branch June 11, 2025 15:27
@christophebedard
Copy link
Copy Markdown
Member Author

Released as 0.7.14/v0.7.

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.

macOS "tinyxml has been disabled!"

2 participants