Thanks for having a good look at it, Jon. My replies are inline.
On 14 Aug 2020, at 17:49, Jonathan Gibbons
<[email protected]> wrote:
Good cleanup.
Some systemic changes needed. Details below.
-- Jon
On 8/13/20 11:48 AM, Pavel Rappo wrote:
Hello,
Please review the below change for
https://bugs.openjdk.java.net/browse/JDK-8251550
http://cr.openjdk.java.net/~prappo/8251550/webrev.00/
This represents squashed commits that have accumulated in my git
branch. Since the changeset has started to look dangerously big, I
decided not to wait until we finish the migration to Git and
GitHub, and push it sooner. The less the others have to merge, the
better.
-Pavel
Some of the doctree changes contain this sequence:
<p>
<pre>
That will trigger a doccheck warning for a redundant <p> tag.
Fixed.
Since you're improving the doc comments for the DocTree nodes, it
would be nice to use <i>...</i> or (better) <var>,,,</var> around
the variables in the templates. For example:
34 * <pre>
35 * @author <var>name-text</var>
36 * </pre>
37 *
Understood. However, for now I would prefer consistency (with the
interfaces of the com.sun.source.tree package) over further improvement.
DocRootTree:
I think you need {@literal ...} on line 33.
Why? The doc comment uses an HTML entity, not a naked "@" symbol:
* <p>
* <pre>
* {@docroot}
* </pre>
Are you looking at the actual *diff* rather than at a *view* of the
webrev? Webrev is infamous for producing a certain type of illusions.
DocTypeTree:
As an enhancement, given that the tools only support HTML 5 these
days, It might be helpful to give the specific text for an HTML 5
document
32 * <pre>
33 * <!doctype text>
34 * </pre>
+ * For HTML5 documents, the correct form is {@code <!doctype
html>}.
Added the proposed line.
EntityTree:
Maybe remove the "misleading" spaces in the examples?
Removed the spaces.
General:
Thinking aloud, for a future update when we have the `{@spec}` tag.
In the introductory sentence for each tag, replace the use of
`{@code}` by `{@spec}` linking to the right place in the doc-comment
tag specification. I guess for many, it's not necessary, but the
idea came to mind reading IndexTree, where more information may be
helpful. That being said, additional info belongs in the tag spec,
not the tree node spec.
Agreed.
DocSourcePositions:57,89
replace `CompilationUnit` with `compilation unit`
Replaced.
DocTreeFactory:112
We are inconsistent about whether to use `{..}` for inline tags,
which will be worse when we add our first bimodal standard tag,
`@return`, but using `{...}` for `{@deprecated}` is definitely wrong
Yes, I have that thought too. I fixed "@deprecated" along with other
block tags in DocTreeFactory.java. On the other hand, I added missing
curly braces around "@summary".
General: (question)
Does a trailing space inside `{@code something }` cause extra
whitespace in the rendered HTML?
Yes, it does. I removed those *outer* trailing whitespace characters.
DocTreePath:37,96,98,99
More un-code-d type names. Follow existing conventions for either
using `{@code...}` or the descriptive equivalent (e.g. "tree path")
@code-d those and some others.
Trees:239,240
replace "The" by "the"
Replaced there and in one other place.
remove package name from TypeMirror, and use @code for that and
ErrorType
Removed the package, but will NOT do the rest: it would be completely
inconsistent with everything else in that file.
DocCommentParser:
avoid Latin abbreviations; use "for example, such as"
Fixed. Although, I don't get the rationale behind this piece of
advice. One reason not to use any abbreviations would be the period
characters: periods interfere with detecting first sentences in doc
comments.
1103: another candidate for `{@spec}` !!
Yes. I just felt I have to provide something more fresh and
immediately accessible.
Pretty: removing import
In general, this is a dangerous edit; throughout javac, you will see
imports of javac.util.List in preference to java.util.List. I assume
you have compiled and run the tests, to validate this change.
Correct, before posting the initial webrev I ran the tiers 1 through
3 in our CI. It was fine.
WriterFactory:135
Trailing period.
Removed there and in some other places.
BaseTaglet
Yay for removing redundant doc comments from overridden methods!
toolkit/taglets/Taglet.java
41,143:
If you think "tag" refers to instances in doc comments, the original
was correct
If you think "tag" refers to the class of the instances, the new
text should use "the block tag"
Those terms have to be better defined in the spec.
142: consider remove "all" from end of line
Removed.
-Pavel
-- Jon