On Wed, 10 Mar 2021 16:44:14 GMT, Hannes Wallnöfer <hann...@openjdk.org> wrote:
> This adds a "Related Packages" table to package summary pages with a list of > neighboring tables. The rules for including packages is as follows: > > 1. The super package of the current package is included if it exists. > 2. Direct subpackages of the current package are included, but only if their > number does not exceed 20, in which case no subpackages are included. > 3. If steps 1 and 2 did not produce more than 5 packages, sibling packages > of the current package are included, but only if their number is not greater > than 5. > > In steps 2. and 3. above, either all or no candidate packages are included. > In other words, if the threshold is exceeded none of the candidate packages > are included in the list. The cut-off values are arbitrary, but have shown to > produce reasonably good results with various codebases. > > A few example of API documentation generated with this feature: > > http://cr.openjdk.java.net/~hannesw/8260388/api.01/ > http://cr.openjdk.java.net/~hannesw/8260388/javafx.01/ > http://cr.openjdk.java.net/~hannesw/8260388/tomcat.02/ > http://cr.openjdk.java.net/~hannesw/8260388/servlet.01/ > > This is a first step to introduce the new feature. There may be future > enhancements to fine-tune the feature or make it more customizable. All OK; some suggestions for future work/cleanup/improvement src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PackageSummaryBuilder.java line 68: > 66: private final static int MAX_SUBPACKAGES = 20; > 67: private final static int MAX_SIBLING_PACKAGES = 5; > 68: For future work, move these to a config file. Short-term "workaround" suggestions still for a separate RFR: annotate these and similar declarations with an internal source-retention annotation of `@Configuration` ------------- Marked as reviewed by jjg (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/2917