-
Notifications
You must be signed in to change notification settings - Fork 19
feat: tagfiles generation for cross-referencing in doxygen format #670
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
feat: tagfiles generation for cross-referencing in doxygen format #670
Conversation
dd39c17
to
30d3333
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The logic for the Writer looks great. I think the only issue is where it would be called from.
669e5ee
to
518dfe5
Compare
The problem CI has been fixed. Could you rebase this? |
However, we will still have a problem with the USR from Krystian's commit blocking CI. I want to start by comparing the XML in the artifacts. Do you have the result for Boost.URL multipage? That's the one we can't risk breaking because it's already in production. It has to be compatible with the existing one. |
5728d41
to
4ea091f
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
4ea091f
to
10d6cca
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
10d6cca
to
08cbc26
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
08cbc26
to
120b717
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It fails with
assertion failed: n <= indent_.size() on line 203 in src/lib/Gen/xml/XMLTags.cpp
120b717
to
e469482
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
e469482
to
7b9455e
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
The implementation of the tagfile write is excellent. CI failed after I rebased. That was a good thing because it helped me catch a bug. So, the reason CI is failing is trivial. The The real issue causing all of that is the API design. Your new
This bug was already there, but CI only made it evident. It worked before rebasing because Because of how If this is hard to achieve because we can't decouple the logic of This fixes the underlying problem and the original issue with |
7b9455e
to
f04184a
Compare
This issue is addressed. I’ll let you know once CI passes so you can review, and if it’s good to go, feel free to merge. |
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
f04184a
to
9b74877
Compare
9fe6bec
to
88251df
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
You need to specify the Currently, |
We can change that default. Or at least enable it in CI. This can't go untested. We need these file artifacts in CI.
We never require an absolute path. The tagfile is relative to the output path. Not the config path. |
I didn’t see a way to make the tagfile path relative to the output path directly. I believe I’ll need to update the code handling the configuration options to support this behavior (though I’m not entirely sure yet). I’ll go ahead and make the necessary changes, but I’ll address this in a separate PR. |
Whatever you put in "relativeto" will go to an https://github.com/cppalliance/mrdocs/blob/develop/src/lib/Lib/Config.cpp#L75 When the argument is a relative path, it gets the base path for normalization here: https://github.com/cppalliance/mrdocs/blob/develop/src/lib/Lib/Config.cpp#L95 The base path can come from "relativeto" or from the default path prefix. There's no default prefix because the string is empty by default. When it comes from "relative-to", we get it with this function call: Line 229 in 6156756
The function only considers the Reference directories for now: Line 192 in 6156756
It doesn't currently consider other options as valid prefixes. It would probably need to change to consider the One thing to consider is that the output path will need to be normalized before the tagfiles path. In practice, it means the output needs to come before the tagfile option in the json file. In principle, the python script could identify dependencies between options to rearrange them but I don't think it's something we need for now. |
PR created #743 |
88251df
to
9f160cc
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
9f160cc
to
385e8ee
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
385e8ee
to
678091b
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
678091b
to
14e9579
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
14e9579
to
ad6d576
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
ad6d576
to
96041b6
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
96041b6
to
ba81b70
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
ba81b70
to
02fc87c
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
02fc87c
to
3ecd787
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
3ecd787
to
84821d0
Compare
An automated preview of the documentation is available at https://670.mrdocs.prtest2.cppalliance.org/index.html |
Fixes #650