root-project / root

The official repository for ROOT: analyzing, storing and visualizing big data, scientifically
https://root.cern
Other
2.64k stars 1.26k forks source link

ROOT tag file contains hard coded paths #10059

Open ferdymercury opened 2 years ago

ferdymercury commented 2 years ago

Describe the bug

The ROOT doxygen tag files posted in https://root.cern/reference/ contain full hard coded paths to /home/sftnight/... that are not available from outside users.

Expected behavior

No hard-coded paths are shown there.

To Reproduce

Maybe playing with STRIP_FROM_PATH in the Doxyfile could solve this.

Additional context

https://github.com/doxygen/doxygen/issues/9185

couet commented 2 years ago

@ferdymercury : Thanks for reporting. Do you have an idea what STRIP_FROM_PATH should be / you know that matter better than me. I am happy to merge a PR fixing it if you have one.

ferdymercury commented 2 years ago

We need to add two elements to STRIP_FROM_PATH, one is: /home/sftnight/build/workspace/root-makedoc-master/rootspi/rdoc/master_TMP/

and the other: /home/sftnight/build/workspace/root-makedoc-master/rootspi/rdoc/src/master/

Now, I do not know if this can be done in the Doxyfile in a clean way, by specifying the "current" directory or using the environment variable $(DOXYGEN_OUTPUT_DIRECTORY) or "../../../", not sure...

couet commented 2 years ago

in Doxyfile we have:

STRIP_FROM_PATH        = $(DOXYGEN_STRIP_PATH)

And DOXYGEN_STRIP_PATH is defined in Makefile the following way:

DOXYGEN_STRIP_PATH := $(shell cd $(PWD)/../..; pwd)

Is that ok ? looks fine to me. No ?

ferdymercury commented 2 years ago

Yes, but that's the ROOT trunk source directory.

Somehow, in ROOT.tag we are also including files from the rootspi repository, and that's maybe not in the STRIP_PATH right now? (Probably these are generated on the fly by the script or something like that?)

If not, maybe this is a bug in doxygen. We could report it if we find a minimal reproducer.

couet commented 2 years ago

I see it is /home/sftnight/build/workspace/root-makedoc-master/rootspi/rdoc/master_TMP/pyzdoc/ . So the pyzdoc which I guess should e also put in STRIP_FROM_PATH somehow ?

couet commented 2 years ago

Yes that's it because that folder is added in the list of folders to be scanned by doxygen at the end of "makeinput.sh`

ferdymercury commented 2 years ago

Yes. STRIPfrompath accepts an array of paths (space separated), not just a single path.

ferdymercury commented 2 years ago

I filed a bug report in doxygen https://github.com/doxygen/doxygen/issues/9221

couet commented 2 years ago

have you tried STRIP_FROM_PATH ? Why do you think there is a bug ?

ferdymercury commented 2 years ago

yes, I tried and the path is still there

ferdymercury commented 2 years ago

by the way, do you know why the root-makedoc-master building is not running through since one month ? (https://lcgapp-services.cern.ch/root-jenkins/view/ROOT/job/root-makedoc-master/) Last stable build (#2613 [5d12207b]), 1 mo 7 days ago

couet commented 2 years ago

It runs but it is marked as failing when a tutorial fails.

ferdymercury commented 2 years ago

I filed a bug report in doxygen doxygen/doxygen#9221

A fix has been proposed. (PR not yet merged)

couet commented 2 years ago

Let me know when it will be in and I will install the new version.

ferdymercury commented 1 year ago

@couet the PR of doxygen has been merged into master. So now, I would suggest to add the missing pyzdoc folder to DOXYGEN_STRIP_PATH in the Makefile, as dicussed above, and upgrade doxygen on the build machine.

couet commented 1 year ago

@ferdymercury sorry for the late reply. I was off last week. I'll look asap.

ferdymercury commented 1 year ago

The feature is now on release 1.9.6

dpiparo commented 2 months ago

@couet , ping.