Skip to content

Default clang-format version used in CI not available in recent Ubuntu releases

Version 10 of clang-format, which is used by default to test C++ syntax is not packaged anymore in recent Ubuntu versions which live ROS 2 versions are being released into.

Did a quick scan of the available versions in apt for default Ubuntu releases for LTS ROS versions and there doesn't seem to exist a version compatible with every reasonable Ubuntu release.

ROS/Ubuntu version 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Noetic/Focal x x x x x x x x
Humble/Jammy x x x x x
Jazzy/Noble x x x x x x

Since there's no one-size-fits-all solution, for Ubuntu-packaged versions, I propose to update the default version to the closest we can get, version 18, which for some reason seems to be available for Noetic/Focal(??).

What do you think?

We can add a new allowed-to-fail job for a while to smooth out the transition but I would rather go ahead and make it the new default.

Pinging @aitor.ibarguren and @javier.gonzalezhuarte, as well, in case they have anything to say. I think they're probably the only few people who actually writes any C++ these days.

Edited by Prada Sarasola, Miguel
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information