Adriano Machado created CAMEL-23531:
---------------------------------------

             Summary: documentation: Jackson 3 docs in place of Jackson 2 on 
dataformats
                 Key: CAMEL-23531
                 URL: https://issues.apache.org/jira/browse/CAMEL-23531
             Project: Camel
          Issue Type: Bug
          Components: build system
    Affects Versions: 4.20.0, 4.19.0
            Reporter: Adriano Machado


h2. Summary

The dataformats documentation index lists Jackson 2.x and Jackson 3.x entries 
under colliding basenames, so only one of each pair survives publication. As a 
result, {{JSON Jackson}} on 
https://camel.apache.org/components/next/dataformats/index.html resolves to a 
single Jackson variant (3.x) rather than showing both 2.x and 3.x as distinct 
entries.

h2. Background

While migrating the doc symlink pipeline from gulp to a Maven mojo 
(CAMEL-23492), new logging surfaced 4 basename collisions in the 
{{dataformats}} group. Two source files (one from {{camel-jackson}} / 2.x, one 
from {{camel-jackson3}} / 3.x) flatten to the same destination filename, so the 
second symlink overwrites the first.

h2. Colliding basenames

|| Basename || Source A (Jackson 2.x) || Source B (Jackson 3.x) ||
| {{jackson.adoc}} / {{jackson.json}} | 
components/camel-jackson/src/main/docs/jackson-dataformat.adoc | 
components/camel-jackson3/src/main/docs/jackson-dataformat.adoc |
| {{jacksonXml.adoc}} / {{jacksonXml.json}} | components/camel-jacksonxml/... | 
components/camel-jacksonxml3/... |
| {{avroJackson.adoc}} / {{avroJackson.json}} | 
components/camel-avro-jackson/... | components/camel-avro-jackson3/... |
| {{protobufJackson.adoc}} / {{protobufJackson.json}} | 
components/camel-protobuf-jackson/... | components/camel-protobuf-jackson3/... |

Each pair collides twice — once for the {{.adoc}} page and once for the 
{{.json}} metadata.

h2. Impact

* The dataformats index page lists only one of each Jackson variant.
* Users cannot discover the 2.x vs 3.x split from the public docs.
* The collision is silent — the previous gulp pipeline did not warn either; the 
new mojo logs make it visible ({{linked N files (from M sources)}} where {{M > 
N}}).

h2. Reproduction

# Open https://camel.apache.org/components/next/dataformats/index.html
# Search for {{JSON Jackson}} — only one entry is shown, not two.
# Check {{components/camel-jackson/src/main/docs/jackson-dataformat.adoc}} and 
{{components/camel-jackson3/src/main/docs/jackson-dataformat.adoc}} — both 
exist on disk but only one is published.

h2. Suggested fix

Disambiguate the destination basenames for the 3.x variants (e.g. 
{{jackson3.adoc}}, {{jacksonXml3.adoc}}, {{avroJackson3.adoc}}, 
{{protobufJackson3.adoc}}) and update the dataformats nav so both 2.x and 3.x 
entries are listed.

h2. Notes

* Discovered via the new {{PrepareDocSymlinksMojo}} logging in CAMEL-23492. The 
collision pre-exists that PR; CAMEL-23492 only made it visible.
* Out of scope for CAMEL-23492 — filing separately so the doc fix has its own 
review.

----

_Claude Code on behalf of Adriano Machado_



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to