dependabot[bot] opened a new pull request, #1000:
URL: https://github.com/apache/opennlp/pull/1000

   Bumps [de.hs-heilbronn.mi:zlibsvm-core](https://github.com/rzo1/zlibsvm) 
from 2.1.2 to 3.0.0.
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/rzo1/zlibsvm/releases";>de.hs-heilbronn.mi:zlibsvm-core's
 releases</a>.</em></p>
   <blockquote>
   <h2>zlibsvm-3.0.0</h2>
   <h1>Changelog</h1>
   <h2>3.0.0</h2>
   <h3>Breaking Changes</h3>
   <ul>
   <li><strong>Java 21 required</strong> — Minimum Java version raised from 17 
to 21.</li>
   <li><strong><code>SvmTrainer.train()</code> now returns 
<code>Optional&lt;SvmModel&gt;</code></strong> — Previously returned 
<code>null</code> when cross-validation mode was enabled. Callers must update 
from <code>model = trainer.train(docs)</code> to <code>model = 
trainer.train(docs).orElseThrow()</code> (or handle the empty case).</li>
   <li><strong><code>SvmMetaInformation</code> is now immutable</strong> — All 
8 setter methods (<code>setSvmConfiguration</code>, 
<code>setNumberOfClasses</code>, <code>setAmountOfSupportVectors</code>, 
<code>setRhoConstants</code>, <code>setLabelForEachClass</code>, 
<code>setProbabilityA</code>, <code>setProbabilityB</code>, 
<code>setNumberOfSupportVectorsForEachClass</code>) have been removed from the 
interface and implementation. These were unused across the codebase.</li>
   <li><strong><code>NativeSvmModelWrapper</code> multi-arg constructors 
replaced by Builder</strong> — The 9- and 11-parameter constructors have been 
replaced with a fluent <code>NativeSvmModelWrapper.Builder</code>. The 
canonical <code>NativeSvmModelWrapper(svm_model)</code> constructor is 
unchanged.</li>
   <li><strong>Assertions replaced with 
<code>IllegalArgumentException</code></strong> — All <code>assert</code> 
statements in public API methods now throw 
<code>IllegalArgumentException</code> with descriptive messages. Code catching 
<code>AssertionError</code> from zlibsvm must catch 
<code>IllegalArgumentException</code> instead.</li>
   </ul>
   <h3>New Features</h3>
   <ul>
   <li><strong><code>SvmDocumentImpl</code></strong> — A ready-to-use 
<code>SvmDocument</code> implementation is now provided in 
<code>zlibsvm-core</code>, eliminating the need for users to write their 
own.</li>
   <li><strong>Cross-validation test coverage</strong> — New tests verify that 
cross-validation mode returns an empty <code>Optional</code> and produces 
meaningful accuracy values across different fold counts.</li>
   </ul>
   <h3>Bug Fixes</h3>
   <ul>
   <li><strong><code>SvmTrainingTestCase</code>: copy-paste errors</strong> — 
Test was comparing <code>getRhoConstants()</code> three times instead of 
validating <code>getProbabilityA()</code> and <code>getProbabilityB()</code>. A 
separate assertion was comparing a model's config to itself instead of the 
reference model.</li>
   <li><strong><code>SvmModelImpl</code>: incomplete config 
reconstruction</strong> — When loading models from native LIBSVM, only 6 of 16 
configuration fields were reconstructed. Added 
<code>SvmConfigurationImpl.fromNativeParameter()</code> factory to capture all 
fields.</li>
   <li><strong><code>PrimitiveHelper</code>: array index safety</strong> — 
Map-to-array conversions used HashMap keys directly as array indices, risking 
<code>ArrayIndexOutOfBoundsException</code> with non-sequential keys. Now uses 
sorted iteration.</li>
   <li><strong><code>SvmConfigurationImpl</code>: mutable state 
exposure</strong> — <code>getWeight()</code> and <code>getWeightLabel()</code> 
returned mutable lists, allowing callers to corrupt the immutable 
configuration. Now wrapped in <code>Collections.unmodifiableList()</code>.</li>
   <li><strong><code>SvmPerformanceTestCase</code></strong>: 
<code>MODE_NAME</code> typo renamed to <code>MODEL_NAME</code>; 
<code>@BeforeEach</code> changed to <code>@BeforeAll</code> so the reference 
benchmark runs once per class instead of before every test.</li>
   </ul>
   <h3>Improvements</h3>
   <ul>
   <li><strong>Migrated to JUnit 5</strong> (Jupiter) from JUnit 4.</li>
   <li><strong>Comprehensive JavaDoc</strong> added across all public API 
interfaces, enums, and core implementations.</li>
   <li><strong>README reworked</strong> — Fixed broken code formatting in the 
prediction example, added Requirements section, improved structure.</li>
   </ul>
   <h3>Dependency Updates</h3>
   <ul>
   <li>JUnit: 4.13.2 → 5.12.1</li>
   <li>maven-surefire-plugin: 3.5.4 → 3.5.5</li>
   <li>maven-compiler-plugin updated</li>
   <li>log4j-slf4j2-impl: 2.25.1 → 2.25.3</li>
   <li>maven-javadoc-plugin: 3.11.3 → 3.12.0</li>
   <li>maven-source-plugin: 3.3.1 → 3.4.0</li>
   <li>forbiddenapis: 3.9 → 3.10</li>
   <li>license-maven-plugin: 2.6.0 → 2.7.1</li>
   <li>versions-maven-plugin: 2.19.0 → 2.21.0</li>
   <li>central-publishing-maven-plugin updated</li>
   <li>actions/checkout: 5.0.0 → 6.0.2</li>
   <li>actions/setup-java: 5.0.0 → 5.2.0</li>
   </ul>
   </blockquote>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/27b9fbcae6e6b37f30c5d3fcc73a8cb8e256e0cf";><code>27b9fbc</code></a>
 Release 3.0.0</li>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/267ac0601b9783400a9ff342d80fb0df1cacd38b";><code>267ac06</code></a>
 Bump to 3.0.0-SNAPSHOT, require Java 21</li>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/b5463485a142cf66e18448bdfa4a8015a07c9073";><code>b546348</code></a>
 Add test coverage for cross-validation training path</li>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/dc767ecfbcda7e8e02b5899ac19617b4da25f30a";><code>dc767ec</code></a>
 Return Optional&lt;SvmModel&gt; from train() instead of null for CV mode</li>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/37a701f06edbb9bcd3c852a423ec2f0aeeb4fd4e";><code>37a701f</code></a>
 Refactor NativeSvmModelWrapper to use Builder pattern</li>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/75f5f0330c52835ce6bcd3ab005a4c5d4c26aeaf";><code>75f5f03</code></a>
 Make SvmMetaInformation immutable by removing unused setters</li>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/9bf9859526eed2911ae4e8b6006c55510a3f12c2";><code>9bf9859</code></a>
 Replace test mocks with SvmDocumentImpl in core domain</li>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/90f8d0accf81489737bedece754080a6b147b003";><code>90f8d0a</code></a>
 Replace assert statements with IllegalArgumentException checks</li>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/fbf56f779545c60423d6095b9e98d0a7d2ba5157";><code>fbf56f7</code></a>
 Fix mutable state exposure and broken Comparable contract</li>
   <li><a 
href="https://github.com/rzo1/zlibsvm/commit/a0e76082adddeb29c932e2d2827082fb6e9293dc";><code>a0e7608</code></a>
 Add *.model to .gitignore for generated test artifacts</li>
   <li>Additional commits viewable in <a 
href="https://github.com/rzo1/zlibsvm/compare/zlibsvm-2.1.2...zlibsvm-3.0.0";>compare
 view</a></li>
   </ul>
   </details>
   <br />
   
   
   [![Dependabot compatibility 
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=de.hs-heilbronn.mi:zlibsvm-core&package-manager=maven&previous-version=2.1.2&new-version=3.0.0)](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]

Reply via email to