RFR: 8337111: Bad HTML checker for generated documentation [v3]

Nizar Benalla nbenalla at openjdk.org
Thu Dec 19 16:19:46 UTC 2024


On Thu, 19 Dec 2024 15:52:52 GMT, Hannes Wallnöfer <hannesw at openjdk.org> wrote:

>> Nizar Benalla has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains eight additional commits since the last revision:
>> 
>>  - Add a test for external links
>>    separate checks into different jtreg tests
>>    fix typos
>>  - Merge remote-tracking branch 'upstream/master' into new-docs-tests-suit
>>  - Merge remote-tracking branch 'upstream/master' into new-docs-tests-suit
>>  - add file with all vetted links
>>  - improve some parts based on review comments
>>  - Merge remote-tracking branch 'upstream/master' into new-docs-tests-suit
>>  - Merge remote-tracking branch 'upstream/master' into new-docs-tests-suit
>>  - Convert parts of doccheck into tests
>
> test/docs/jdk/javadoc/doccheck/ExtLinksJdk.txt line 266:
> 
>> 264: https://docs.oracle.com/en/java/javase/23/docs/api/java.base/java/math/BigDecimal.html
>> 265: https://docs.oracle.com/en/java/javase/23/docs/specs/man/java.html
>> 266: https://docs.oracle.com/en/java/javase/24/docs/specs/man/java.html
> 
> Is this right that some links are left pointing to version 23 and 24 resources, while most are updated to 25? 
> I'm afraid it will be unpractical to manually update these links twice a year, so we should use some placeholder/macro to insert the current feature release. But that will only work if the links are also generated uniformly with the current feature release (for example by the `@extLink` taglet).

The [java man page ](https://docs.oracle.com/en/java/javase/21/docs/specs/man/java.html#removed-java-options) has links to previous releases (I think these are added manually).

`SourceVersion.java` and `ClassFileFormatVersion.java` have hardcoded links to jls24 and jvms24 links, as in:


     * @see <a
     * href="https://docs.oracle.com/javase/specs/jls/se24/html/index.html">
     * <cite>The Java Language Specification, Java SE 24 Edition</cite></a>
     */
    RELEASE_24,



Not 100% sure but I think anything that isn't pointing to `se25` is hardcoded to point to a different link, I could use a special macro for the current `se25` links (something like `@VERSION@` and then substitute it when reading from the file).

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/21879#discussion_r1892633966


More information about the javadoc-dev mailing list