gnodet commented on PR #13678:
URL: https://github.com/apache/maven/pull/13678#issuecomment-6368887185
Thanks for the investigation! After tracing the full rendering pipeline I've
found that the root cause is in Modello's xdoc generator, not in the `.mdo`
descriptions. The `.mdo` files are correct as written.
**Root cause trace:**
1. MXParser reads `<description>` outside CDATA and XML-decodes `<` →
`<`, so `{@code <activation>}` becomes the string `{@code <activation>}`.
2. `XdocGenerator.rewrite()` passes this to the `chhorz` javadoc-parser
which wraps `{@code X}` in `<code>X</code>` **without HTML-escaping `X`** →
produces `<code><activation></code>`.
3. Jsoup (XML output mode) treats `<activation>` as an unknown HTML element
and silently drops it.
**Fix:** I've opened a PR against Modello to pre-process `{@code}` /
`{@literal}` tags and HTML-escape their content before the parser+Jsoup
pipeline: https://github.com/codehaus-plexus/modello/pull/619
This PR (wrapping in CDATA + double-escaping) is not the right approach — it
adds complexity and changes the semantics of the descriptions without
addressing the underlying Modello bug. Once Modello 2.8.2 ships with the fix,
the Maven site will render correctly without any changes here.
I'll close this PR in favour of the upstream Modello fix.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]