chore(docs): escape default values in generated starter option tables - #1970
Merged
Merged
Conversation
The website build fails with "dropping cells from incomplete row
detected end of table" on the Debezium starter pages. The default of
custom-sanitize-pattern is a regex with '|' alternations, and
UpdateStarterDocPageMojo wrote default values into the AsciiDoc table
unescaped, so each '|' opened a new cell.
Pass default values through escapeCell(), which already escapes '|'
and '{' in the description column. This also escapes the
${exception.message} default in the ActiveMQ, ActiveMQ 6, AMQP and JMS
pages so it is not read as an attribute reference.
Regenerate the ten affected starter pages.
_Claude Code on behalf of Adriano Machado (@ammachado)_
_This was generated by an AI agent and may contain inaccuracies.
Please verify before relying on it._
davsclaus
approved these changes
Sep 13, 2026
davsclaus
pushed a commit
that referenced
this pull request
Sep 13, 2026
…#1971) The website build fails with "dropping cells from incomplete row detected end of table" on the Debezium starter pages. The default of custom-sanitize-pattern is a regex with '|' alternations, and UpdateStarterDocPageMojo wrote default values into the AsciiDoc table unescaped, so each '|' opened a new cell. Pass default values through escapeCell(), which already escapes '|' and '{' in the description column. This also escapes the ${exception.message} default in the ActiveMQ, ActiveMQ 6, AMQP and JMS pages so it is not read as an attribute reference. Regenerate the ten affected starter pages. Backport of #1970 to camel-spring-boot-4.22.x. (cherry picked from commit 45145ce) _Claude Code on behalf of Adriano Machado (@ammachado)_ _This was generated by an AI agent and may contain inaccuracies. Please verify before relying on it._
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The camel-website build (example run) fails with Asciidoctor errors on the Debezium starter pages:
The same error shows up for
debezium-mongodb,debezium-mysql,debezium-oracle,debezium-postgresanddebezium-sqlserver, on bothmainandcamel-spring-boot-4.22.x.Root cause. The default value of
camel.component.debezium-*.custom-sanitize-patternis a regex with|alternations (\.jaas.config$|.*basic.auth.user.info|...).UpdateStarterDocPageMojoescaped the Description column withescapeCell()but wrote the Default column as-is, so each|opened a new table cell. That row had 9 cells instead of 4. Asciidoctor only catches the mismatch at the closing|===, which is why the error points at the last row.Changes
UpdateStarterDocPageMojo: pass default values through the existingescapeCell(), which escapes|and{.generatePageandSBPropertyare now package-private so the test can call them.UpdateStarterDocPageMojoTest(new): checks that a|in a default keeps the row at 4 cells, that a{in a default is escaped, and that boolean and missing defaults still render unchanged. The first two tests fail without the fix.|in thecustom-sanitize-patterndefault is escaped.activemq,activemq6,amqp,jms: theeager-poison-bodydefault${exception.message}becomes$\{exception.message}, the same way descriptions already handle{, so Asciidoctor no longer reads it as an attribute reference. This one did not break the build.Verification
camel-spring-boot-generator-maven-pluginpass.update-starter-doc-pageon the ten affected starters. Only the ten rows above changed.check-docon this PR passes with no "dropping cells" errors in its log. It renders these docs through camel-website's Antora playbook, which usesfailure_level: warn, so this confirms the pages render cleanly.Related
apache/cameldocs. Those are fixed separately in chore(docs): fix malformed tables and callouts that fail the website build camel#26356 (main), [backport camel-4.22.x] chore(docs): fix malformed tables and callouts that fail the website build camel#26357 (camel-4.22.x) and [backport camel-4.18.x] chore(docs): fix malformed tables and callouts that fail the website build camel#26358 (camel-4.18.x).camel-spring-boot-4.22.xhas the same generator code and the same broken pages, so it needs a backport of this PR.🤖 Generated with Claude Code on behalf of Adriano Machado (@ammachado)
This was generated by an AI agent and may contain inaccuracies. Please verify before relying on it.