Skip to content
This repository was archived by the owner on Jul 8, 2025. It is now read-only.

[pull] develop from eXist-db:develop#383

Open
pull[bot] wants to merge 1768 commits into
EIDO-Systems:developfrom
eXist-db:develop
Open

[pull] develop from eXist-db:develop#383
pull[bot] wants to merge 1768 commits into
EIDO-Systems:developfrom
eXist-db:develop

Conversation

@pull

@pull pull Bot commented Jun 5, 2025

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.1)

Can you help keep this open source service alive? 💖 Please sponsor : )

joewiz and others added 28 commits May 30, 2026 17:20
Three follow-ups to Juri's review comments:

  - XHTML5Writer: add a class-level javadoc clarifying that the
    class contributes only the HTML5 void-element + inline-element
    sets and points readers at `XHTMLWriter.writeDoctype` (the new
    home of the DOCTYPE emission logic that previously lived here).
    Addresses Juri's "Where is the doctype written now?" and
    "What is an XHTML5Writer anyway?" questions on
    XHTML5Writer.java:126.

  - IndentingXMLWriter: extract `parseSuppressionName` helper from
    the inline suppress-indentation parsing block, dropping nesting
    from five levels to one and addressing the
    "Too many levels of indentation. I would invert if-conditions
    together with returning early. Maybe extracting it into a method
    would help as well." comment at line 194.

  - XMLWriter: insert space after `if`/`else if` for the six
    PR-introduced offenders in `writeChars`, addressing the
    "formatting : `if (`" comment at line 737.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…ecks

A user-defined function declared as element() that returned the result
of a persistent intersect (e.g. ($root/x, $root/y) intersect ($root/y,
$root/z)) failed with err:XPTY0004 "expected type: element(); got:
node()" even though every item in the result was in fact an element.

NodeSet.intersection and NodeSet.except both return an AVLTreeNodeSet,
which inherited AbstractNodeSet.getItemType()'s unconditional Type.NODE.
FunctionCall's return-type check (FunctionCall.java:216) then called
SequenceType.checkType(result.getItemType()) which compared Type.NODE
against the declared Type.ELEMENT and rejected the result. The matching
union path was unaffected because NodeSet.union returns a
NewArrayNodeSet, which extends AbstractArrayNodeSet and tracks itemType
per add().

This commit gives AVLTreeNodeSet the same per-add itemType tracking,
mirroring AbstractArrayNodeSet.checkItemType: ANY_TYPE is refined to
the first added item's type, identical adds are no-ops, and conflicting
adds fall back to Type.NODE. getItemType() now reports the tracked
type, exposing element() (or whatever common supertype the items
share) to sequence-level type checks.

The fix also corrects the analogous except() case, which had the same
latent bug but had not been reported.

Closes #4255

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
… eXist webapp context

Form bodies larger than 200,000 bytes posted to any servlet under
/exist were rejected with HTTP 400 "Unable to parse form content"
with no documented way to raise the limit. The historical workaround
(setting the per-Request attribute
"org.eclipse.jetty.server.Request.maxFormContentSize" in jetty.xml)
was removed in Jetty 12; the only recognised path in modern Jetty is
ServletContextHandler.setMaxFormContentSize, which was never wired
into eXist's context XML and so silently defaulted to 200 KB.

Add a <Set name="maxFormContentSize"> call to both the embedded
(/exist) and standalone (/) WebAppContext XML files, sourcing the
limit from a new jetty.http.maxFormContentSize property with a
backward-compatible default of 200000. Operators can now raise the
limit at startup with -Djetty.http.maxFormContentSize=<bytes>.

The companion knob maxFormKeys (default 1000) is also exposed via
jetty.http.maxFormKeys for parity with the upstream Jetty default
parameter set; in earlier Jetty versions this was a separate limit
that has tripped a handful of REST/RESTXQ-heavy deployments.

A new test JettyMaxFormContentSizeTest parses each shipped context
XML through Jetty's XmlConfiguration (the same path Jetty itself
uses at startup) and verifies both the default value and that the
override property is honoured.

Closes #4087

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The 180s forkedProcessTimeoutInSeconds caps and the failsafe
DeadlockIT/RemoveCollectionIT excludes were dragged into the
serialization-compliance commit cb3fee3 by an old rebase from
PR #6186, which has since been closed without merging. Develop
does not carry these settings, so this PR has been tripping a fork
timeout that develop is immune to: Surefire's default is no fork
timeout, and the v6346 unit-test fork runs ~3.5 minutes wall-clock
on CI runners against the 180s cap (1856 tests, several 80-100s
storage tests).

Revert the orphan pom.xml hunks back to develop's text. No
serialization-test or production code is touched. The PR's other
content is unchanged.

Fixes the "Failed to execute goal ... maven-surefire-plugin ...
There was a timeout in the fork" failure @line-o reported in the
2026-05-31 review of PR #6346.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
A FLWOR whose for clause filtered with a not(@attr) predicate, then
traversed the preceding:: or following:: axis, returned wrong results
when the source was a persistent (stored) document but worked correctly
in-memory. The bug no longer reproduces on develop -- verified
2026-05-30 against HEAD b990cd6; downstream work on the
persistent-axis evaluator or not()-predicate handling appears to have
incidentally fixed it.

Per @duncdrum's review prompt on the issue (favouring regression tests
even when no fix commit is paired), this pins the reproducer so the
in-mem/persistent asymmetry cannot return silently.

The XQSuite is adapted verbatim from the report on the issue. Eight
test functions cover the cross-product:

  - preceding:: + following::
  - with-predicate + without-predicate
  - persistent (doc()) + in-memory (document{}) input

All eight must return "true,true" -- both bar elements (outer + inner)
have a preceding and a following <foo/>. With the original bug present,
only the persistent + with-predicate variants returned the wrong value.

Closes #3684

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Per @duncdrum's review on PR #6420: imports for ResourceFactory and
URL instead of the inline fully-qualified names. No behavior change.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Prior to this commit, XQSuite caught errors from %test:tearDown
functions in test:call-func-with-annotation and emitted a <system-err>
element, but the outer ($result, $tearDown)[1] selector then discarded
that element. Consumers of the suite XML (CI, IDE Run-as-test panels,
JUnit-shaped reporters) saw no trace of the tearDown failure -- the
%test:setUp counterpart was already surfaced via the testsuite text
content but the tearDown path was a silent dead end.

The fix:

1. Compute the tearDown result before constructing the <testsuite>,
   so its <system-err/> can be folded in alongside the test results.
2. When tearDown threw, append a <system-err>tearDown error: ...
   </system-err> child to the <testsuite> and bump the errors count
   by one. The element name matches the JUnit convention so existing
   consumers handle it naturally.
3. On the setUp-failure path (which already short-circuits the test
   run), append the same "tearDown error: ..." text to the existing
   error message and count the tearDown error toward the errors
   attribute too.
4. Clean tearDowns continue to produce no marker -- the output is
   byte-identical to before the fix, so passing test files are
   unchanged.

The fix is verified by three new JUnit cases in
XQSuiteTearDownErrorTest:

  - cleanTearDownProducesNoMarker      -- backwards-compatible
  - throwingTearDownIsSurfaced         -- new visibility, errors=1
  - throwingSetUpAndTearDownBothSurfaced -- both paths combined

Each stores a small module to /db/test-6422, invokes
test:suite(inspect:module-functions(...)) against it, serializes the
result, and asserts on the XML. Without the xqsuite.xql change the
latter two cases fail with the bug's signature (errors="0" and no
mention of the tearDown error string); with the change they all pass.

Reviewers: the chosen output shape (<system-err>tearDown error: ...
</system-err>) is the most JUnit-idiomatic of the options I
considered (others were a synthetic <testcase name="tearDown"> with
an <error/> child, or a custom <tearDownError/> element). Happy to
adjust if the project prefers a different shape -- the issue
discussion left the wire format open.

Closes #6422

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…nt-size

[bugfix] Expose jetty.http.maxFormContentSize and maxFormKeys for the eXist webapp context
…ter-not

[test] Pin preceding/following axis after not() filter for #3684
[feature] W3C XSLT/XQuery Serialization 3.1 compliance: XML/HTML/XHTML/JSON/text/adaptive
…turn

[bugfix] Track item type in AVLTreeNodeSet for correct return-type checks
…value checks

Per F&O 3.1 section 2.4 (option parameter conventions) plus section 17.5.3:

* Wrong-typed option values now raise XPTY0004 (was: FOJS0005 for 'escape',
  silently accepted for others).
* 'duplicates' values are checked against the permitted set {reject,
  use-first, retain}; non-permitted values raise FOJS0005.
* 'validate' + 'duplicates: retain' is rejected as an incompatible
  combination (FOJS0005).
* Unknown option keys on fn:json-to-xml raise FOJS0005.
* Empty-sequence option values trigger XPTY0004 (cardinality 0).
* 'fallback' arity is validated against the declared function signature.

Behavior under recognized, valid options is unchanged. Implementing the
'validate', 'escape', and 'fallback' semantics themselves is out of scope
and tracked in the parent triage report.

Targets ~11 fn-json-to-xml XQTS HEAD failures
(json-to-xml-error-018/019/020/021/022/023/024/025/026/040/041).

Refs F&O 3.1: https://www.w3.org/TR/xpath-functions-31/#options

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Per F&O 3.1 section 2.4, option values undergo function-call-style coercion:
nodes are atomized to xs:untypedAtomic before the type check, which is
then cast to the declared type. Calling .atomize() on the item picks up
both element() and attribute() values that the previous strict-type
check was wrongly rejecting with XPTY0004.

Closes fn-parse-json-946 (XQTS HEAD) which uses
map { 'duplicates': <foo>reject</foo> }.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Commit e3a2da8 introduced a single PERMITTED_DUPLICATES set
{reject, use-first, retain} that was applied to both fn:parse-json and
fn:json-to-xml. That regressed fn:parse-json calls using "use-last"
(the XQSuite test arr:parse-json-duplicates use-last case) with
FOJS0005 "value not permitted".

Per F&O 3.1 the permitted values differ:

* §17.4.1 fn:parse-json: "reject", "use-first", "use-last"
  https://www.w3.org/TR/xpath-functions-31/#func-parse-json
* §17.5.1 fn:json-to-xml: "reject", "use-first", "retain"
  https://www.w3.org/TR/xpath-functions-31/#func-json-to-xml

Both share "reject" and "use-first"; parse-json adds "use-last"
(preserve last value), json-to-xml adds "retain" (keep duplicates in
the XML output, incompatible with validate=true).

Splits PERMITTED_DUPLICATES into per-function sets selected by the
existing isJsonToXml flag. fn:json-doc shares fn:parse-json's option
semantics (§17.4.4) and so picks up the parse-json permitted set, which
is correct.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds the per-element-type validation required by F&O 3.1 §17.4.2 (XML
Representation of JSON) and §17.5.4 (fn:xml-to-json):

- Reject non-whitespace text node children of <map>/<array> elements
  (whitespace, comments and PIs are still ignored per spec).
- Reject element children of leaf-type elements (<string>, <number>,
  <boolean>, <null>).
- Reject no-namespace attributes other than 'key', 'escaped-key',
  'escaped'; reject any attribute in the xpath-functions namespace
  (the schema's anyAttribute namespace="##other").
- Require 'escaped' and 'escaped-key' to hold a valid xs:boolean value.
- Reject element names outside the six allowed local names at start-tag
  rather than only at end-tag.

Per W3C bug 29917 / qt3tests xml-to-json-065, 'escaped' is tolerated on
non-string elements (treated as a no-op); only the lexical value is
enforced.

Foreign-namespace attributes remain ignored, matching the schema rule.

Closes the over-permissive-validation sub-cluster of fn-xml-to-json
FOJS0006 failures identified in the 2026-05-10 triage report
(predecessor PR #6342 closed the walk-from-doc-root sub-cluster).

XQTS HEAD fn-xml-to-json: +10 newly passing, 0 regressions on
xml-to-json-{033, 040, 042, 043, 044, 062, 063, 069, 081, 082}.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Addresses line-o's review comments on PR #6350 (lines 267, 288, 329).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Addresses reinhapa's review on PR #6350.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…sal path

PR #6342 (merged after this branch was first proposed) rewrote
fn:xml-to-json's element-input traversal from StAX to a DOM walk
(walk-from-doc-root antipattern fix) so the function now operates on
the input subtree directly. The structural-validation logic this PR
added in commit 3000e1b was wired into the StAX path, which is no
longer the primary entry for element inputs after #6342, so 10 XQTS
xml-to-json cases that expect FOJS0006 began passing through to a
successful JSON serialisation again after the rebase onto develop.

Port the validation rules into the DOM path via three new helpers:

  - validateDomAttributes: rejects attributes in the
    xpath-functions namespace and no-namespace attributes outside
    the {key, escaped-key, escaped} allow-list; validates that
    escaped / escaped-key carry a valid xs:boolean lexical value
  - validateContainerChildren: rejects non-whitespace text children
    of map / array
  - validateNoElementChildren: rejects element children of leaf JSON
    elements (string, number, boolean, null)

Wired into writeJsonElement (attributes), writeJsonMap /
writeJsonArray (container children), and the four leaf writers.
writeJsonBoolean's signature picks up XPathException to match.

Tests touched by this commit (all assert FOJS0006, all now pass on
develop):
  xml-to-json-text-child-of-array
  xml-to-json-text-child-of-map
  xml-to-json-element-child-of-{boolean,null,number,string}
  xml-to-json-attribute-in-json-namespace
  xml-to-json-disallowed-no-ns-attribute
  xml-to-json-invalid-escaped-{value,key-value}

The StAX-path validation methods (validateStartElement,
validateTextInContext, validateAttributes, isJsonElementName,
isLeafElementName) and the dead nodeValueToJsonViaStream entry are
now unreachable; leaving them for a follow-up [refactor] commit so
this commit stays focused on the regression fix.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Bumps [commons-daemon:commons-daemon](https://github.com/apache/commons-daemon) from 1.5.1 to 1.6.0.
- [Changelog](https://github.com/apache/commons-daemon/blob/rel/commons-daemon-1.6.0/RELEASE-NOTES.txt)
- [Commits](apache/commons-daemon@commons-daemon-1.5.1...rel/commons-daemon-1.6.0)

---
updated-dependencies:
- dependency-name: commons-daemon:commons-daemon
  dependency-version: 1.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
[bugfix] Surface %test:tearDown errors in xqsuite output
Switch all 59 POMs to ${revision} with flatten-maven-plugin resolving
it in deployed artifacts. Replace activeByDefault on installer/stress/
benchmarks with explicit umbrella profiles: local-build (default),
release-build (installer + Central Portal publishing via
central-publishing-maven-plugin), perf-tests (stress + benchmarks).
Add release-preflight enforcer and GPG signing to release-build.
Migrate macOS notarization from deprecated altool to notarytool+staple;
fix CI activation guard on mac-dmg-on-mac.

close #3394
close #4519
see #6176
Replaces mvn release:prepare/perform with two GitHub Actions workflows:
ci-release-prepare (workflow_dispatch) updates CITATION.cff, commits,
and
pushes an annotated eXist-X.Y.Z tag; ci-release (tag-triggered) runs
parallel platform jobs for Maven Central deploy, signed+notarized macOS
DMG, and Authenticode-signed Windows installer, converging on a GitHub
Release. Updates exist-versioning-release.md to document the new
procedure.

Closes #5597 #4217
joewiz and others added 30 commits June 20, 2026 23:17
The general-purpose value sequences checked only direct reference equality
(item == values[i]) and did not recurse into items that are themselves
containers, unlike MapType.containsReference and ArrayType.containsReference
which both do `value == item || value.containsReference(item)`. Affected:
ValueSequence, ArrayListValueSequence, OrderedValueSequence,
PreorderedValueSequence, and SubSequence. (NodeSets hold only nodes and
RangeSequence only integers, so neither can nest a map/array; both are
unaffected.)

As a result, a value nested inside a map (or array) held by such a sequence
was invisible to the variable-cleanup guard: when a let/function scope pops,
XQueryContext.popLocalVariables -> VariableImpl.destroy ->
<sequence>.destroy -> <value>.destroy(context, contextSequence) skips closing
a value only if `contextSequence.containsReference(value)`. For a file-backed
binary returned nested in a map inside a sequence, that guard returned false,
so the binary's file channel was closed while still referenced through the
returned map. A later read then failed with "Underlying channel has been
closed", surfaced (e.g.) as "error while obtaining length of binary value"
from xmldb:store.

This is exactly the path the Roaster / existdb-openapi multipart upload
tripped: request:get-uploaded-file-data, carried as $request?body?file?data
(Roaster's form-data binary shape: map { name, data, size }), failed at
xmldb:store. Reproduced with the real Roaster body:parse and reduced to the
test cases below.

Fix: make each general-purpose sequence's containsReference recurse into
container items, mirroring MapType/ArrayType.

Tests:
- ContainsReferenceNestedTest (unit): directly asserts ValueSequence,
  ArrayListValueSequence and SubSequence detect an item nested in a map
  (fails without the fix). OrderedValueSequence/PreorderedValueSequence take
  the identical one-line fix (their OrderSpec construction is not exercised
  directly).
- binary-nested-in-map.xqm (XQSuite, file module): a file:read-binary value
  returned nested in a map inside a sequence and escaping a function, then
  read; fails with "Underlying channel has been closed" before the fix. The
  inner one-iteration FLWOR is load-bearing -- it wraps the map in a
  ValueSequence; a bare map { ... } goes through MapType.containsReference,
  which already recurses, and would not exercise the bug.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…erface helper

Per review feedback on PR #6507: replace the withMapNesting(...) lambda
indirection with straightforward, inlined per-test setup. More verbose and
slightly duplicated, but easier to follow at a glance. No change to coverage:
each test still builds map { "data": $nested } in a fresh context, wraps it in
the sequence type under test, and asserts the nested item is detected while a
sibling item is not.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Bumps [org.expath.packaging:pkg-java](https://github.com/expath/expath-pkg-java) from 2.0.1 to 2.1.1.
- [Commits](expath/expath-pkg-java@pkg-2.0.1...pkg-2.1.1)

---
updated-dependencies:
- dependency-name: org.expath.packaging:pkg-java
  dependency-version: 2.1.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Per review feedback on PR #6507: the fixture setup (create the test directory and
write the .env fixture) now lives in a %test:setUp function, symmetric with the
existing %test:tearDown, instead of inline in the test body.

helper:get-test-directory embeds a fresh uuid on every call, so the directory is
computed once in a module variable ($bnm:directory) shared by setUp and the test,
rather than recomputed per function (which would land the fixture and the read in
different directories).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Bumps the actions group with 1 update: [actions/cache](https://github.com/actions/cache).


Updates `actions/cache` from 5 to 6
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v5...v6)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
…ckaging-pkg-java-2.1.1

Bump org.expath.packaging:pkg-java from 2.0.1 to 2.1.1
XSD 1.1 validation and catalog  fixes.
[refactor] Revise HttpClient creation and caching.
Bumps the lucene group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| org.apache.lucene:lucene-core | `10.4.0` | `10.5.0` |
| org.apache.lucene:lucene-analysis-common | `10.4.0` | `10.5.0` |
| org.apache.lucene:lucene-analysis-icu | `10.4.0` | `10.5.0` |
| org.apache.lucene:lucene-facet | `10.4.0` | `10.5.0` |
| org.apache.lucene:lucene-queries | `10.4.0` | `10.5.0` |
| org.apache.lucene:lucene-queryparser | `10.4.0` | `10.5.0` |


Updates `org.apache.lucene:lucene-core` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-analysis-common` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-analysis-icu` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-facet` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-queries` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-queryparser` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-analysis-common` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-analysis-icu` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-facet` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-queries` from 10.4.0 to 10.5.0

Updates `org.apache.lucene:lucene-queryparser` from 10.4.0 to 10.5.0

---
updated-dependencies:
- dependency-name: org.apache.lucene:lucene-core
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-analysis-common
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-analysis-icu
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-facet
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-queries
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-queryparser
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-analysis-common
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-analysis-icu
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-facet
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-queries
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
- dependency-name: org.apache.lucene:lucene-queryparser
  dependency-version: 10.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lucene
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [org.wiremock:wiremock-standalone](https://github.com/wiremock/wiremock) from 3.9.1 to 3.13.2.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](wiremock/wiremock@3.9.1...3.13.2)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock-standalone
  dependency-version: 3.13.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
…wiremock-standalone-3.13.2

Bump org.wiremock:wiremock-standalone from 3.9.1 to 3.13.2
…6001

Bump the lucene group with 6 updates
[ignore] remove unused dependency plex from distribution
Signed-off-by: Patrick Reinhart <patrick@reini.net>
…tructor

PMD/Codacy UnnecessaryConstructor: the explicit empty no-arg constructor is
redundant -- the compiler generates the default constructor JMH needs.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ThoADnh6VvDt5w8kz7d2d3
[feature] Adds new xmldb-api security services
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants