We use semantic versioning:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality in a backwards-compatible manner, and
- PATCH version when you make backwards compatible bug fixes.
- [feature] tia-client: add API to hash test data when creating ClusteredTestDetails
- [breaking change] This release requires Teamscale 5.9 or higher
- [feature] Made ensure-processed and include-failed-and-skipped options available in teamscale-client
- [fix] option parsing errors were not logged in rare cases
- [breaking change] changed default message to include partition and upload date
- [breaking change] Bumped minimum supported Gradle version for the Gradle plugin to 6.5 so we can support Java 11
- [feature] Made score and duration of test selected by TIA available via the teamscale-client
- [breaking change] removed options
coverage-via-http
andteamscale-testwise-upload
. Usetia-mode=http
ortia-mode=teamscale-upload
instead. - [breaking change] tia-client: changed Java API
- [feature] always exclude common libraries from profiling to shrink coverage files
- [feature] enable changing and reading the commit message via a new
/message
REST endpoint - [breaking change] changing the partition is now a PUT request to
/partition
(formerly POST to/partition/{partitionName}
)
- [breaking change] default for
--interval
changed from 60 to 480 minutes - [feature] Support for uploading XML reports to artifactory
- [fix] Docker image did not react to SIGTERM
- [feature] All artifacts are now also available on Maven Central
- [fix]
test-env
option was ignored
- [fix] revision is ignored during validation for automatic upload to Teamscale
- [fix] Prevent "out of memory" in small JVMs: Don't cache test executions in memory
- [breaking change]
--ignore-duplicates
(and-d
option in convert tool) have been replaced with--duplicates
option - [breaking change]
--filter
option in convert tool has been renamed to--includes
- [breaking change]
--exclude
option in convert tool has been renamed to--excludes
- [fix] Remove retry logic for impacted tests request
- [fix] Resolve possible memory leak during report generation
- [feature] Use git.commit.id from git.properties instead of branch and timestamp
- [breaking change] Reduce XML report size by only including source file coverage, no class coverage
- [feature] New option
--ignore-uncovered-classes
to further reduce size of XML reports - [fix] converter produces duplicate test entries for testwise coverage
- [breaking change]
--classDir
option in convert tool has been renamed to--class-dir
- [feature]
--class-dir
option allows to pass in a.txt
file with the class file directories/jars separated by newlines
- [feature] add TIA client library for integrating TIA in your custom test framework
- [fix] Delete empty coverage directories
- [fix] Don't upload empty coverage reports
- [fix]
git.properties
commit was not used for upload - [feature] Upload ignored
origin/
prefix ingit.properties
's branch name - [fix]
http-server-port
option does not pass validation in normal mode - [fix] Executable spring boot jar produces no coverage
- [feature] Added
coverage-via-http
option for testwise mode - [feature] Added
teamscale-revision
option to supply VCS revision instead of branch and timestamp - [feature] Added
/revision
HTTP endpoint for testwise mode - [feature] Updated JaCoCo to 0.8.5
- [fix] Significantly reduced memory footprint
- [fix]
--run-all-tests
doesn't run any tests at all - [fix] test-wise coverage report incorrect for classes in default package
- [fix] WildFly won't start with agent attached
- [feature] make
out
parameter optional with sensible fallback (subdirectorycoverage
in agent installation directory) - [feature] if no
teamscale-commit
,teamscale-git-properties-jar
orteamscale-commit-manifest-jar
is configured, all loaded Jar/War/Ear/... files that contain profiled code are checked for agit.properties
file. This allows auto-detecting agit.properties
file without any additional configuration.
- [documentation] Configuration for SAP NetWeaver Java (>= 7.50) is now documented
- [feature] supplying a
class-dir
option is no longer mandatory - [feature] agent logs errors in case of empty coverage dumps (i.e. misconfigured agent)
- [fix] prevent NPE when trying to read manifest from Jar file
- [feature] support for git.properties to supply commit information
- [breaking change] Agent now ignores SSL certificates by default and only turns on validation if
validate-ssl=true
is passed in the agent arguments. Existing setups will continue to work but validation will be disabled from this version on - [fix] Agent uses higher timeouts (20s) for all HTTP connections to account for slow networks
- [fix] Reduced memory requirements for generating testwise coverage.
- [breaking change] When using the
convert
tool in--testwise-coverage
mode the new--split-after 5000
option will break up testwise coverage files automatically after the specified number of tests written. This ensures that generated reports are small enough to be uploaded to Teamscale. Default is5000
. The given output file will now be appended suffixed-1
,-2
etc.. If the specified output file is namedtestwise_coverage.json
the actually written file will be calledtestwise_coverage-1.json
for the first 5000 tests. For uploading multiple files use an upload session.
- [fix] Prevent
-1
to show up as covered line in Testwise Coverage report
- [feature] added
dump-on-exit
option - [breaking change] added
mode
option (Must be set for Testwise Coverage mode.http-server-port
ortest-env
alone is no longer sufficient) - [feature] The agent now optionally accepts test execution results via /test/end
- [feature] Support for Java 12
- [breaking change] The convert tool now uses wildcard patterns for the class matching (was ant pattern before)
- [breaking change] The agent returns the correct 204 and 400 status codes in Testwise Coverage mode
- [feature] The agent now also supports Java 11 code.
- [feature] The agent now also supports line coverage in Testwise Coverage mode
- [breaking change] Test impact mode no longer uploads reports to teamscale and does no longer generate reports on its own (see TEST_IMPACT_ANALYSIS_DOC -> How to get testwise coverage)
- [feature] Added
test-env
option
- [feature] Added option to upload to azure file storage
- [feature] Paths passed to the agent can now be relative and contain ant patterns
- [breaking change] switched to logback for logging. All logging configurations must be replaced with logback XMLs. This fixes Java 10 compatibility issues with Log4j by removing Log4j from the agent
- [feature] make agent log INFO and above to
agentdir/logs
by default - [fix] isolate agent further from the application to prevent errors from conflicting library versions
- [feature] dump interval of 0 only dumps at the end
- [fix] Test Impact Mode: Empty reports are no longer dumped
- [fix] Test Impact Mode: JUnit is uploaded before testwise coverage
- [fix] prevent log files from flooding disk with default log4j config files
- [fix] NativeWebSocketServletContainerInitializer not found
- [breaking change] added
teamscale-commit-manifest-jar
option. Automatic fallback to MANIFEST.MF on classpath is no longer supported
- [feature] added
config-file
option
- [fix] fixed class conflict with JAXB in WebSphere
- [feature] added Test Impact mode via
http-server-port
- [feature] added ability to read commit branch and timestamp from MANIFEST.MF
- [feature] added options to configure coverage upload to Teamscale
- [fix] remove version number from jar file name
- [fix] prefill the
javaws.properties
correctly on Windows
- [breaking change] removed
watch
mode and madeconvert
mode the default. Only the agent is now supported
- [feature] prevent clashes between our dependencies and the profile app's
- [breaking change] logging for the agent must now be configured via the
logging-config
parameter
- [breaking change] Docker image is now designed to use the agent instead of the client
- [feature] add wrapper around
javaws
to allow profiling Java Web Start applications
- [breaking change] ignore-duplicates is now the default for the agent to simplify the initial setup
- [fix] fix handling of Windows paths
- [fix] using
upload-url
in conjunction withupload-metadata
caused a crash
This version was never checked in, thus there is no tag for it in the Git
- [fix] using
upload-url
in conjunction withupload-metadata
caused corrupt files
- [breaking change] agent option separator is now a semicolon, no longer a colon (to support Windows paths)
- [breaking change] merged
include
andjacoco-include
parameters. Both use the JaCoCo pattern syntax - [feature] allow dumping via HTTP file upload
- [feature] add agent for regular dumping without separate process
- [breaking change] you must pass
true
orfalse
explicitly to the-d
parameter - [feature] allow setting explicit host name via
--host
- [feature] add Docker image
- [tooling] add Docker image build and Docker Hub project
- [fix] working directory was missing from systemd service file
- [feature] added
convert
mode to do one-time conversion. The old behavior is now reachable via thewatch
command (which is also the default if no command is provided).
- [tooling] add GitLab build and
dist
task. Update documentation
- [feature] added
-d
switch to ignore non-identical, duplicate class files during report generation