# Java/Scala/Kotlin Agent

## 2026 Release Notes

<table><thead><tr><th width="95.546875">Version</th><th width="129.26953125">Date</th><th>Changes</th></tr></thead><tbody><tr><td>4.0.2763</td><td>April 27, 2026 </td><td><p><strong>New Features and Updates:</strong></p><ul><li>Enabled the <code>createBuildSessionId</code> parameter to be mapped from <code>sl-config.json</code> to <code>pom.xml</code>.</li><li>Improved test execution initialization flow.</li><li>Optimized footprint buffer handling.</li></ul></td></tr><tr><td>4.0.2760</td><td>April 22, 2026</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Upgraded dependencies to address transitive security vulnerabilities.</li></ul></td></tr><tr><td>4.0.2754</td><td>April 6, 2026</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Improved backward compatibility.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Addressed a <code>NullPointerException</code> during the <code>useModuleName</code> check that caused TIA to be disabled.</li></ul></td></tr><tr><td>4.0.2751</td><td>April 2, 2026</td><td><p><strong>Resolved Issues:</strong></p><ul><li>Addressed a conflict caused by non-shadowed classes in certain edge-case scenarios.</li></ul></td></tr><tr><td>4.0.2745</td><td>March 30, 2026</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Enabled <code>sl-test-listener.jar</code> to function as a CD agent when configured with the system property <code>-Dsl.mode=scanAndCoverage</code>. </li><li>Aligned Java agent parameters with conventions used in other technologies (supporting both single-dash <code>-</code> and double-dash <code>--</code>). Maintained full backward compatibility via aliases for parameters and commands.</li><li>Added support for parameter aliases in configuration file <code>sl-config.json</code> .</li><li>Enhanced detection of older versions of the Cucumber runner to prevent integration issues.</li><li>Updated instrumentation to exclude more internal packages, addressing flaky runs caused by missing default configuration on Azul Java.</li></ul></td></tr><tr><td>4.0.2731</td><td>March 4, 2026</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Improved footprint collection: the agent now sends method hits reported before execution resolution.</li></ul></td></tr><tr><td>4.0.2729</td><td>February 24, 2026</td><td><p><strong>Resolved Issues:</strong></p><ul><li>Fixed support for <code>testProjectId</code> — setting the <code>testProjectId</code> header when resolving <code>buildSessionId</code> with <code>labId</code>.</li></ul></td></tr><tr><td>4.0.2727</td><td>February 23, 2026</td><td><p><strong>Resolved Issues:</strong></p><ul><li>Fixed a logging issue during the agent auto-upgrade process.</li><li>Added support for the <code>.slignore</code> file, allowing specified files to be skipped during the scan.</li></ul></td></tr><tr><td>4.0.2721</td><td>February 4, 2026</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added support for verbose console output across agents and command-line tools.</li><li>Improved integration with TestNG.</li><li>Added support for JUnit 6.</li><li>Added support for the JBehave framework.</li><li>Introduced the <code>sl.prId</code> parameter.</li><li>Updated fallback logic for agents and plugins so that, in case of network issues preventing retrieval of the recommended version, a newer compatible version is suggested instead.</li><li>Added new Maven configuration options: <code>logToConsole</code> and <code>logToFile</code>.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Prevented duplicate scans when a scan for the same build has already been submitted.</li><li>Fixed Maven integration issues related to configuration handling.</li></ul></td></tr></tbody></table>

## 2025 Release Notes

<table><thead><tr><th width="95.25">Version</th><th width="129.444091796875">Date</th><th>Changes</th></tr></thead><tbody><tr><td>4.0.2700</td><td>December 22, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Improved the scheduled task manager to better support parallel test execution.</li></ul></td></tr><tr><td>4.0.2692</td><td>December 19, 2025</td><td><p><strong>Resolved Issues:</strong></p><ul><li>Fixed integration issues between SeaLights and Maven when using customized Surefire and Failsafe plugin configurations, including support for custom <code>executions</code> sections and Maven profiles.</li></ul></td></tr><tr><td>4.0.2688</td><td>December 3, 2025</td><td><p><strong>New Features and Updates:</strong> </p><ul><li>Switched the logging framework from Logback to Tinylog.</li><li>Upgraded the OpenTelemetry version used by the agent. </li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Fixed source file resolution when using a Git repository without SeaLights plugins.</li></ul></td></tr><tr><td>4.0.2682</td><td>November 11, 2025</td><td><p><strong>Resolved Issues:</strong></p><ul><li>Fixed an integration issue in the SBT plugin.</li></ul></td></tr><tr><td>4.0.2681</td><td>October 29, 2025</td><td><p><strong>New Features and Updates:</strong> </p><ul><li>Added diagnostic information reporting to the Cockpit.</li><li>Removed the use of certain external libraries.</li><li>Added support for multiple <code>argLine</code> entries in Maven Surfire and Failsafe configurations.</li><li>Added support for Java 25.</li><li>Upgraded the embedded OpenTelemetry Agent from version 1.26.0 to 1.33.6.  </li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Fixed an issue with TestNG 7 where tests recommended for skipping were reported as skipped but still executed.</li></ul></td></tr><tr><td>4.0.2656</td><td>September 2, 2025</td><td><p><strong>New Features and Updates:</strong> </p><ul><li>Added support for locating <strong>buildSessionId.txt</strong> in the current working directory. </li><li>Introduced support for Karate 1.5.x, including reporting the detected Karate version to the Cockpit.</li><li>Removed unusued dependencies from the source code.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Fixed test execution handling for Unit Tests and corrected footprint submission to the Collector.</li></ul></td></tr><tr><td>4.0.2646</td><td>August 19, 2025</td><td><p><strong>New Features and Updates:</strong> </p><ul><li>Improved clock synchronization with updated default intervals and optimized logging.</li><li>Extended default timeouts for HTTP requests.</li><li>Enhanced parsing options for the Build Scanner CLI; parameters are now case sensitive.</li><li>Enhanced Agent behavior by reducing error logs when request sending is disabled; the Agent now automatically attempts recovery after 60 minutes.</li><li>Upgraded dependent libraries and removed vulnerabilities.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Fixed TIA support for Cucumber 7.27.0.</li><li>Fixed AWS Lambda support by correcting retrieval of active executions.</li></ul></td></tr><tr><td>4.0.2635</td><td>July 7, 2025</td><td><p><strong>New Features and Updates:</strong> </p><ul><li>Added support for parameterized TestNG tests.</li><li>Added ability to customize the parameter identified method for TestNG tests. Use the <code>sl.parameterIdentifierMethod</code> parameter instead of the default <code>toString()</code> behavior.</li><li>Enhanced pull request handling by extending the buildSessionId option with the parameters buildname and branchname.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Fixed compatibility with TestNG 7.x.</li></ul></td></tr><tr><td>4.0.2630</td><td>June 25, 2025</td><td><p><strong>New Features and Updates:</strong> </p><ul><li>Support for the <code>testProjectId</code> parameter, enabling more flexible test project configurations.</li><li>Detection and resolution of Git repository paths.</li><li>Added retry mechanism to ensure successful dispatch of the build completion event.</li></ul></td></tr><tr><td>4.0.2623</td><td>June 18, 2025</td><td><p><strong>New Features and Updates:</strong> </p><ul><li>Added support for multi-component applications (multiple BuildSessionIDs managed in a single JVM process) for shared libraries support.</li></ul></td></tr><tr><td>4.0.2622</td><td>May 29, 2025</td><td><p><strong>New Features and Updates:</strong> </p><ul><li>Added support for using encoded JWT tokens with the Java Agent.</li><li>Introduced a token encryption command in the build scanner utility for enhanced security.</li><li>Added support for executing the test listener  with custom JVM parameters in the Gradle plugin.</li></ul></td></tr><tr><td>4.0.2619</td><td>April 30, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added support for TestNG and the Quantum framework.</li><li>Enhanced the Java CD Agent to allow passing the token via the  <code>SL_TOKEN</code> environment variable.</li></ul></td></tr><tr><td>4.0.2617</td><td>April 17, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Improved Agent stability by automatically disabling it when an overly broad <code>packagesIncluded</code> configuration is detected. This safeguard applies to the build scanner, test listener, and CD Agent.</li></ul></td></tr><tr><td>4.0.2614</td><td>April 9, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added feature-level support for Cucumber.</li><li>Enhanced resolution of executions in parallel test stages for more accurate reporting.</li></ul></td></tr><tr><td>4.0.2610</td><td>March 24, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Enhanced SBT integration by allowing developers to define the <code>taskAndTestStages</code> property.</li><li>Introduced the diagnostic header <code>x-sl-agentTechnology</code> for improved traceability.</li><li>Added support for marking test runs as calibration runs using the parameter <code>sl.calibrationLearning=true</code> or the environment variable <code>SL_CALIBRATION_LEARNING=true</code>.</li><li>Optimized memory usage during partial build scans.</li></ul></td></tr><tr><td>4.0.2606</td><td>March 1, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Extended support for <code>pl.pragmatists.JUnitParams</code> to versions 1.0.3 through 1.1.1.</li><li>Updated Logback libraries to address vulnerabilities (CVE-2024-12798, CWE-138).</li><li>Enhanced Maven integration with improved comments handling in pom.xml files. </li><li>Introduced the <code>sl.pomIndentEnabled</code> system property for sl-build-scanner.jar.</li><li>Improved handling of long TIA response times by interrupting requests exceeding 120 seconds.</li></ul></td></tr><tr><td>4.0.2602</td><td>February 10, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Removed vulnerable library <code>com.jcraft:jsch</code>.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Fixed duplicate reporting of skipped Cucumber tests JUnit 5 test discovery.</li></ul></td></tr><tr><td>4.0.2599</td><td>February 3, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Improvement the CD Agent by automating the correction of the  <code>sl.includes</code> and <code>sl.excludes</code> system properties.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Improved support for custom class loaders returning <code>null</code> instead of <code>ClassDefNotFoundException</code> when a class is not found.</li></ul></td></tr><tr><td>4.0.2596</td><td>January 16, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Enhanced integration with the Git CLI to streamline operations.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Resolved an issue that could cause the Java agent to hang.</li><li>Fixed a problem where unit tests failed when loading <code>apache.commons.configuration</code>.</li></ul></td></tr><tr><td>4.0.2593</td><td>January 12, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added the ability to disable recursive scanning for the CD Agent.</li></ul></td></tr><tr><td>4.0.2581</td><td>January 2, 2025</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added support for launching the Java Agent using JBoss <code>MODULE_OPTS</code>.</li><li>Enabled compatibility with Bouncy Castle in JBoss environments.</li><li>Optimized memory usage for method-line coverage to reduce runtime footprint.</li></ul></td></tr></tbody></table>

## 2024 Release Notes

<table><thead><tr><th width="95.25">Version</th><th width="129.444091796875">Date</th><th>Changes</th></tr></thead><tbody><tr><td>4.0.2577</td><td>December 3, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added the <code>scanInnerJars</code> feature flag to control scanning of embedded Java archives.</li></ul></td></tr><tr><td>4.0.2574</td><td>November 21, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added support for parametrized JUnit4 tests with <code>JUnitParamsRunner</code>.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Improved context propagation support for Selenium Java.</li></ul></td></tr><tr><td>4.0.2570</td><td>November 12, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Upgraded dependent libraries to address security vulnerabilities.</li></ul></td></tr><tr><td>4.0.2565</td><td>October 26, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Upgraded dependent libraries to address security vulnerabilities.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Improved handling of startup parameters in <code>sap_java_buildpack</code>.</li></ul></td></tr><tr><td>4.0.2556</td><td>October 2, 2024</td><td><p><strong>Resolved Issues:</strong></p><ul><li>Improved graceful Agent shutdown when network connection issues occur.</li><li>Fixed handling of the <code>logEnabled</code> parameter during Maven integration.</li></ul></td></tr><tr><td>4.0.2550</td><td>September 24, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added support for inherited JUnit4 and JUnit5 including final test methods.</li></ul></td></tr><tr><td>4.0.2549</td><td>September 16, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Improved filtering of auto-generated Kotlin code when needed.</li><li>Added <code>scannerTask</code> option to Gradle tasks.</li></ul></td></tr><tr><td>4.0.2539</td><td>July 22, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Improved Kotlin support.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Fixed an issue where the test listener encountered errors when reading information from a JSON file.</li></ul></td></tr><tr><td>4.0.2531</td><td>June 25, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added support for per-line method coverage.</li><li>Added support for configuring the test listener from a JSON file, including <code>token</code>, <code>buildSessionId</code> and <code>collectorUrl</code> (primary for Lambda support).</li><li>Improved code instrumentation compatibility with JMockit.</li><li>Added support for working with the Gradle build cache.</li></ul></td></tr><tr><td>4.0.2505</td><td>May 27, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Added support for mutation testing on the PiTest framework.</li></ul></td></tr><tr><td>4.0.2499</td><td>April 30, 2024</td><td><p><strong>New Features and Updates:</strong></p><ul><li>Introduced support for CD Agent with single components.</li><li>Improved detection of synthetic and inherited Scala methods to be ignored in build scans.</li><li>Added collector support for the Java Agent.</li></ul><p><strong>Resolved Issues:</strong></p><ul><li>Fixed scanning of classes located inside embedded Java archives.</li></ul></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sealights.io/knowledgebase/agent-release-notes/java-technologies/java-scala-kotlin-agent.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
