Skip to content

Conversation

rjoomen
Copy link
Contributor

@rjoomen rjoomen commented Sep 1, 2025

This allows us to make use of improved C++ language features.

Copy link

codecov bot commented Sep 1, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.51%. Comparing base (4e483d6) to head (e304d3c).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1204      +/-   ##
==========================================
- Coverage   93.51%   93.51%   -0.01%     
==========================================
  Files         272      272              
  Lines       18710    18711       +1     
==========================================
  Hits        17497    17497              
- Misses       1213     1214       +1     

see 2 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@rjoomen
Copy link
Contributor Author

rjoomen commented Sep 1, 2025

This works for all Tesseract projects except tesseract_qt (and perhaps tesseract_ros2), because of an issue in (EOL) Qt5 (more info). It has been fixed apparently, but I believe only for commercial releases in extended support.

BTW: This seems like an interesting way to implement combined Qt5/Qt6 support.

@Levi-Armstrong
Copy link
Contributor

Levi-Armstrong commented Sep 4, 2025

I have looked into this and my only concern with this is it could lead to incompatibility issues when trying to release tesseract_ros2 on jammy. @rjoomen, @marip8 and @marrts What are your thoughts on this?

@rjoomen
Copy link
Contributor Author

rjoomen commented Sep 4, 2025

I have looked into this and my only concern with this is it could lead to incompatibility issues when trying to release tesseract_ros2 on jammy. @rjoomen, @marip8 and @marrts What are your thoughts on this?

The ros2/rviz issue I linked to seems to indicate that backporting the Qt6 support to Humble (on Jammy) and maybe even to Jazzy (on Noble) might be difficult. So that would mean plugins, ie. the Tesseract Workbench, should stay on Qt5 as well. And that would in turn force both tesseract_ros2 and tesseract_qt to stay on C++17, right?

@Levi-Armstrong
Copy link
Contributor

The concern I had was more related to supported c++ 20 features between 22.04 and 24.04. For example 22.04 standard gcc version does not support #include <format> where 24.04 would so we would need to be careful to avoid unsupported features for 22.04. Locally we can upgrade the gcc but I do not believe we can do that when performing a ros release on 22.04.

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