Skip to content

Conversation

@vkucera
Copy link
Collaborator

@vkucera vkucera commented May 23, 2025

Fix hidden dependencies which prevent application of IWYU in O2Physics.

@github-actions
Copy link
Contributor

REQUEST FOR PRODUCTION RELEASES:
To request your PR to be included in production software, please add the corresponding labels called "async-" to your PR. Add the labels directly (if you have the permissions) or add a comment of the form (note that labels are separated by a ",")

+async-label <label1>, <label2>, !<label3> ...

This will add <label1> and <label2> and removes <label3>.

The following labels are available
async-2023-pbpb-apass4
async-2023-pp-apass4
async-2024-pp-apass1
async-2022-pp-apass7
async-2024-pp-cpass0
async-2024-PbPb-apass1
async-2024-ppRef-apass1
async-2024-PbPb-apass2
async-2023-PbPb-apass5

@vkucera vkucera marked this pull request as ready for review May 23, 2025 14:29
@vkucera vkucera requested a review from a team as a code owner May 23, 2025 14:29
@alibuild
Copy link
Collaborator

alibuild commented May 23, 2025

Error while checking build/O2/fullCI_slc9 for 29f4dfc at 2025-05-25 16:30:

## sw/BUILD/O2Physics-latest/log
Error in cling::AutoLoadingVisitor::InsertIntoAutoLoadingState:
Error in cling::AutoLoadingVisitor::InsertIntoAutoLoadingState:
Error in cling::AutoLoadingVisitor::InsertIntoAutoLoadingState:
Error in cling::AutoLoadingVisitor::InsertIntoAutoLoadingState:
Error in cling::AutoLoadingVisitor::InsertIntoAutoLoadingState:
Error in cling::AutoLoadingVisitor::InsertIntoAutoLoadingState:


## sw/BUILD/O2-full-system-test-latest/log
Detected critical problem in logfile digi.log
digi.log:[31998:internal-dpl-ccdb-backend]: [16:30:15][ERROR] Exception while running: Fatal error. Rethrowing.
digi.log-[31998:internal-dpl-ccdb-backend]: [16:30:15][FATAL] Unhandled o2::framework::runtime_error reached the top of main of o2-sim-digitizer-workflow, device shutting down. Reason: Fatal error
[31998:internal-dpl-ccdb-backend]: [16:30:13][ERROR] CCDBDownloader CURL transfer error - Timeout was reached
[31998:internal-dpl-ccdb-backend]: [16:30:13][ERROR] CcdbDownloader finished transfer http://alice-ccdb.cern.ch/CPV/Calib/BadChannelMap for 1550600800000 (agent_id: alimetal01.cern.ch-1748183324-e80M07) with http code: 0
[31998:internal-dpl-ccdb-backend]: [16:30:13][ERROR] File CPV/Calib/BadChannelMap could not be retrieved. No more hosts to try.
[31998:internal-dpl-ccdb-backend]: [16:30:13][FATAL] Unable to find CCDB object CPV/Calib/BadChannelMap/1550600800000
[31998:internal-dpl-ccdb-backend]: [16:30:15][ERROR] Exception while running: Fatal error. Rethrowing.
[31998:internal-dpl-ccdb-backend]: [16:30:15][FATAL] Unhandled o2::framework::runtime_error reached the top of main of o2-sim-digitizer-workflow, device shutting down. Reason: Fatal error
[ERROR] Workflow crashed - PID 31998 (internal-dpl-ccdb-backend) did not exit correctly however it's not clear why. Exit code forced to 128.


## sw/BUILD/o2checkcode-latest/log
--
========== List of errors found ==========
++ GRERR=0
++ grep -v clang-diagnostic-error error-log.txt
++ grep ' error:'
grep: error-log.txt: binary file matches
++ GRERR=1
++ [[ 1 == 0 ]]
++ mkdir -p /sw/INSTALLROOT/ee4be3d7e5bfaee6422ce9829f5fa90acacbe0c2/slc9_x86-64/o2checkcode/1.0-local134/etc/modulefiles
++ cat
--

Full log here.

@vkucera
Copy link
Collaborator Author

vkucera commented May 30, 2025

@ktf Can this be reviewed and merged, please?

@ktf ktf self-requested a review June 3, 2025 11:52
Copy link
Member

@ktf ktf left a comment

Choose a reason for hiding this comment

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

This perfectly illustrates my point. There is no point in polluting all the headers with system includes and core libraries like arrow. The only bit I would agree on is ASoA.h.

@vkucera
Copy link
Collaborator Author

vkucera commented Jun 3, 2025

The point was to make the header compilable which is not the case now.

If there is a consensus to use certain headers to provide symbols from other headers, they should be marked as such, using the the // IWYU pragma: export flags.

See https://clangd.llvm.org/guides/include-cleaner#scenarios-and-solutions

Otherwise it's impossible to apply IWYU tools anywhere where these headers are included.

@vkucera
Copy link
Collaborator Author

vkucera commented Jun 4, 2025

@ktf Updated reflecting #14354

@vkucera vkucera requested a review from ktf June 4, 2025 16:55
@alibuild
Copy link
Collaborator

alibuild commented Jun 7, 2025

Error while checking build/O2/fullCI_slc9 for 8ae2751 at 2025-06-13 01:27:

input queue has size 539
output queue has size 10
input queue has size 495
output queue has size 10
input queue has size 457
output queue has size 10
input queue has size 427
output queue has size 10
input queue has size 425
output queue has size 10
input queue has size 401
output queue has size 10
input queue has size 366
output queue has size 10
input queue has size 337
output queue has size 10
input queue has size 312
output queue has size 10
input queue has size 275
output queue has size 10
input queue has size 243
output queue has size 10
input queue has size 210
output queue has size 10
input queue has size 172
output queue has size 10
input queue has size 133
output queue has size 10
input queue has size 87
output queue has size 10
input queue has size 46
output queue has size 10
input queue has size 9
output queue has size 10
input queue has size 0
output queue has size 11
input queue has size 0
output queue has size 13
input queue has size 0
output queue has size 17
input queue has size 0
output queue has size 18
++ cp thinned_compile_commands.json compile_commands.json
++ CHECKS='-*,modernize-avoid-bind,modernize-deprecated-headers,modernize-make-shared,modernize-raw-string-literal,modernize-redundant-void-arg,modernize-replace-auto-ptr,modernize-replace-random-shuffle,modernize-shrink-to-fit,modernize-unary-static-assert,modernize-use-equals-default,modernize-use-noexcept,modernize-use-nullptr,modernize-use-override,modernize-use-transparent-functors,modernize-use-uncaught-exceptions,readability-braces-around-statements'
++ tee error-log.txt
+++ which O2codecheck
+++ find /sw/slc9_x86-64/GCC-Toolchain/v14.2.0-alice2-1/lib -name crtbegin.o -exec dirname '{}' ';'
++ run_O2CodeChecker.py -j 32 -clang-tidy-binary /sw/slc9_x86-64/o2codechecker/v18.1.2.1-local1/bin/O2codecheck -clang-apply-replacements-binary /sw/slc9_x86-64/Clang/v18.1.8-21/bin-safe/clang-apply-replacements -extra-args=--extra-arg=--gcc-install-dir=/sw/slc9_x86-64/GCC-Toolchain/v14.2.0-alice2-1/lib/gcc/x86_64-unknown-linux-gnu/14.2.0 '-header-filter=.*SOURCES(?!.*/3rdparty/).*' '-checks=-*,modernize-avoid-bind,modernize-deprecated-headers,modernize-make-shared,modernize-raw-string-literal,modernize-redundant-void-arg,modernize-replace-auto-ptr,modernize-replace-random-shuffle,modernize-shrink-to-fit,modernize-unary-static-assert,modernize-use-equals-default,modernize-use-noexcept,modernize-use-nullptr,modernize-use-override,modernize-use-transparent-functors,modernize-use-uncaught-exceptions,readability-braces-around-statements'
No checks enabled.
Unable to run clang-tidy.

Full log here.

@vkucera vkucera changed the title BinningPolicy.h: Include What You Use IWYU: BinningPolicy.h Jun 13, 2025
@ktf ktf merged commit 19e73ce into AliceO2Group:dev Jun 25, 2025
11 of 12 checks passed
@vkucera vkucera deleted the iwyu branch June 25, 2025 12:49
mhemmer-cern pushed a commit to mhemmer-cern/AliceO2 that referenced this pull request Sep 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants