dependabot[bot] opened a new pull request, #568: URL: https://github.com/apache/opennlp-sandbox/pull/568
Bumps [org.docx4j:docx4j-core](https://github.com/plutext/docx4j) from 11.5.14 to 17.0.4. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/plutext/docx4j/blob/VERSION_17_0_5/CHANGELOG.md">org.docx4j:docx4j-core's changelog</a>.</em></p> <blockquote> <h1>Version 17.0.4</h1> <h2>Release date</h2> <p>2 September 2026</p> <h2>Contributors to this release</h2> <p>Jason Harrop</p> <p>Claude Fable 5, Opus 4.8</p> <h2>Changes in Version 17.0.4</h2> <p>OpenDoPE:</p> <ul> <li>the default binding traverser is now BindingTraverserNonXSLT (fastest in benchmarks; feature parity with the XSLT pathway as of this release). To restore the previous default, set docx4j.model.datastorage.BindingHandler.Implementation=BindingTraverserXSLT</li> <li>od:RptPosCon now evaluates positions per repeat occurrence, so the same repeat control can be used twice in one paragraph; expanded repeats are tagged with a new od:RptOcc param (issue 690)</li> <li>a binding inside a repeat can now address a specific item of the repeated collection using a position function predicate at the repeat step, eg .../ranks[last()]/rank (discussion 691); a numeric predicate (eg [1]) still means the current instance</li> <li>cloned xpath ids now include the repeat occurrence, so two occurrences of the same repeat control no longer overwrite each other's entries in the xpaths part (which mis-bound the earlier occurrence where the copies' bindings had been edited to differ)</li> <li>OpenDoPEHandler's StAX preprocessing path now recurses into replacement content, so nested constructs (eg a condition inside an expanded repeat, or nested repeats) are processed as they are in the default path; previously a false condition inside a repeat leaked its content</li> <li>OpenDoPEReverter: two occurrences of the same repeat whose expansions are immediately adjacent (eg copy-pasted repeat rows in a table) are no longer merged on revert (uses od:RptOcc); a repeat instance whose template control can't be found is now left alone instead of nulling content</li> <li>BindingTraverserNonXSLT and BindingTraverserStAX now implement od:RptPosCon (previously only the default BindingTraverserXSLT did), and now bind run-level sdts whose content is runs directly; SdtStAXHandler handles sdts in hdr/ftr/footnote/endnote, no longer NPEs on unknown contexts, and its element context stack is now per-instance (was static, so shared across threads)</li> <li>BindingTraverserNonXSLT/StAX text binding now routes through ValueInserterPlainText like the XSLT pathway: the sdtPr's w:rPr is applied to generated runs (was lost), an empty result restores the placeholder, a custom inserter set via BindingHandler.setValueInserterPlainText is honoured, and tbl/tr-shaped bound sdts are rebuilt (were silently left unbound); date (w:date) and checkbox (w14:checkbox) content controls are now bound too (previously XSLT-pathway only); picture binding now preserves the authored drawing where it contains an a:blip (just the image rel is replaced), and od:Handler=picture (incl. width=) is supported; XHTML import (od:ContentType=application/xhtml+xml, via ImportXHTML or altChunk fallback) and Flat OPC injection (od:progid=Word.Document) are now supported too; sdtPr hygiene matches the XSLT pathway (hyperlink content strips w:dataBinding/w:text for Word 2007, restored placeholders get</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/plutext/docx4j/commit/e91c47ac84c270b54ad7d52ec60b33973ba408aa"><code>e91c47a</code></a> fix dodgy version.</li> <li><a href="https://github.com/plutext/docx4j/commit/c046558d8f39b52d018b30444a9f21427937d617"><code>c046558</code></a> HtmlVisitorParityTest: gate font-family assertion on mapping, not discovery</li> <li><a href="https://github.com/plutext/docx4j/commit/70f4527e1b63d84e0331ece7dfb2a129aa7d2a1a"><code>70f4527</code></a> HtmlVisitorParityTest: don't block a release on OS font discovery</li> <li><a href="https://github.com/plutext/docx4j/commit/661fecf85b407427450cac0faeab008ac3aa99c2"><code>661fecf</code></a> HtmlVisitorParityTest: show actual output when span composition fails</li> <li><a href="https://github.com/plutext/docx4j/commit/b516ded0b39fc7ad362eb8eaa9a3b6736964487d"><code>b516ded</code></a> Prepare for 17.0.4 release</li> <li><a href="https://github.com/plutext/docx4j/commit/000138e796bc157131dd70f690695f788eff81ac"><code>000138e</code></a> Getting Started: drop the forum section; human contact via LLM section</li> <li><a href="https://github.com/plutext/docx4j/commit/d994510ad74b7bcecdc6c41d6fb6aca05dface32"><code>d994510</code></a> GenGettingStartedDocs: break generated HTML at block boundaries</li> <li><a href="https://github.com/plutext/docx4j/commit/f31e24abb38e6a425f0874aac17474edfc900f6b"><code>f31e24a</code></a> etc/GenGettingStartedDocs.java: regenerate the guide's derived formats</li> <li><a href="https://github.com/plutext/docx4j/commit/12ca55b578b97e15297b7969a9420d7c371a2bc0"><code>12ca55b</code></a> Getting Started: TOC updated; regenerate HTML + new MD, dogfooded</li> <li><a href="https://github.com/plutext/docx4j/commit/393170dd26ae49b4580d0bc1af8b92bb46444c2f"><code>393170d</code></a> Getting Started guide: "Using an LLM with docx4j" section</li> <li>Additional commits viewable in <a href="https://github.com/plutext/docx4j/compare/docx4j-11.5.14...docx4j-17.0.4">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> -- 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]
