New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
navtree js output varies from ASLR #8158
Comments
|
I don't have an openSUSE system so I had to try it on windows. I had to use a little bit an adjusted script (as I also have Cygwin I can use a lot of *nix commands as well): When running doxygen version 1.8.20 I get 2 different outputs and Fortunately I saved the html directories (output_1_8_20.tar.gz) and could run a diff on them: I also ran with the current master version of doxygen (1.9.0 (67132b8)) and here I got every time (output_master.tar.gz): (I also got this result on Cygwin with the current master). So my first conclusion is that there is a problem regarding the reproducibility in the 1.8.20 version and that this has been "fixed but not released" (in the current master). |
|
I tried to build the master version, but it failed to compile with gcc10: |
|
The code generated for VhdlParser.cc in the mentioned function looks like: this is generated code by javaCC from the file: vhdlparser.jj. At the moment we can not do a lot here. I see that you use the compile option I now also understand why openSUSE has a patch with the 1.8.20 version, regarding vhdlParser.cc: https://build.opensuse.org/package/view_file/openSUSE:Factory/doxygen/vhdlparser-no-return.patch?expand=1 |
|
I got doxygen master built now with SUSE patches added and confirmed that the whole |
When compiling the generated VhdlParser.cc we get a number of warnings about the return type, these are no problems as they all follow an assert(false) but when "promoting" the missing to return type warning to an error (openSUSE) this is a problem. The best way would be that the problem is solved in javaCC though this will be probably a long process, so we use the workaround to overcome the problem. (The problem was detected as part of the reproducibility tests for openSUSE, see doxygen#8158)
|
Good to hear that you got the doxygen master version compiled and that the problem does surface anymore. In the mean time we had a look at the problem of the warnings / errors regarding the return type and made a workaround, see proposed pull request #8164. This will most likely result in the fact that openSUSE won't need their patch for this issue anymore. I think the basic problem as addressed in this issue is fixed but not released. |
|
This issue was previously marked 'fixed but not released', |
|
I'm still seeing a similar issue with |
|
The original problem was for the Can you provide the following information:
Probably best to open a new issue for the problem with the |
|
Somehow I missed your comment earlier.
|
Describe the bug
doxygen produces nondeterministic navtreedata/index.js output from certain input (e.g. the
eigen33.3.8 docs package in openSUSE), unless ASLR is disabled.Expected behavior
output shoud be deterministic
To Reproduce
I made a minimal reproducer with just a few lines:
eigen3-min.tar.gz
tar xf eigen3-min.tar.gz
cd doxygennondeterminism
for i in $(seq 1 10) ; do ./build.sh ; done|sort|uniq -c
6 95846f882fbebd706b1cf5ee43e44cdf -
4 ded422b2f1ba4a1b1cbbba0a929c2554 -
Version
doxygen-1.8.20-3.1 of openSUSE-Tumbleweed-20201029
Additional context
Similar in nature to #7474
This PR was done while working on reproducible builds for openSUSE.
The text was updated successfully, but these errors were encountered: