[jdk17] Integrated: JDK-8262886: javadoc generates broken links with {@inheritDoc}
Hannes Wallnöfer
hannesw at openjdk.java.net
Thu Jul 1 07:29:07 UTC 2021
On Fri, 11 Jun 2021 07:14:42 GMT, Hannes Wallnöfer <hannesw at openjdk.org> wrote:
> (This jdk17 PR is the continuation of PR openjdk/jdk#4459 in the mainline jdk repo, commits are identical at the point of transition.)
>
> This change fixes a whole slew of shortcomings in the redirection of relative links in doc comments. The basic idea is that relative links are authored to work in their "native primary" environment (e.g. the package summary page for a package or the class page for a class and its members), and have to be rewritten when used in other contexts such as "use" or index pages.
>
> A list of omissions that are fixed in this change:
>
> - Relative links in class or member comments were not redirected when inherited by other classes
> - Relative links in package comments were not rewritten when displayed in other package summaries as "related packages"
> - Fragment links used in foreign contexts were not completed with the file name
> - Relative links in module comments were not redirected at all
>
> While fixing above issues I also made sure link rewriting is kept to a minimum, avoiding it as much as possible for elements that live in the same package.
>
> Furthermore, the test for redirected relative links was a bit out of order. The `javadoc` command issued by the test returned `ERROR` because one of the source files contained non-valid HTML (an anchor with a `name` attribute to test whether that attribute would be modified). Because of this, the `checkLinks()` method was never invoked, which is a problem for a test that is supposed to make sure generated links are valid. I changed the test to use the valid `id` attribute instead of `name` and made sure `checkLinks()` is executed again.
>
> I also added checks for the newly supported cases. I added a whole new test for modules since retrofitting the existing test to cover modules would not have been practical.
This pull request has now been integrated.
Changeset: 962f1c1a
Author: Hannes Wallnöfer <hannesw at openjdk.org>
URL: https://git.openjdk.java.net/jdk17/commit/962f1c1a9b5b38d28cdf8580389641525fff1b4a
Stats: 489 lines in 9 files changed: 393 ins; 49 del; 47 mod
8262886: javadoc generates broken links with {@inheritDoc}
Reviewed-by: jjg
-------------
PR: https://git.openjdk.java.net/jdk17/pull/17
More information about the javadoc-dev
mailing list