Releases: DataDog/datadog-ci-rb
1.28.0
Highlights
This release fixes one issue for specs created with rswag-specs gem and makes Datadog test retries more efficient by stopping retries early when we have all signals we need.
Added
- Early exit test retries when further retries no longer provide value (#473)
Fixed
- Fix source location tags for specs created by rswag-specs (#468)
Read the full changeset and the release milestone.
1.27.0
Highlights
This release contains multiple fixes and improvements.
Most notable new features are:
- If you use the Datadog Code Coverage product and have simplecov setup in your test suite, the simplecov report will be uploaded to Datadog automatically (no need to use extra step with datadog-ci command line tool)
- The Test Impact Analysis correctness is further improved: now
before(:context)hooks in RSpec correctly attribute their impact to all tests they influence
Added
- Add context-level code coverage tracking for RSpec to improve Test Impact Analysis correctness (#460)
- Add automatic uploading of code coverage reports to Datadog Code Coverage product (#456)
Changed
- Use pagination for known tests API (#455) (#458)
- GitHub Actions: extract numeric job ID for accurate job URLs (#457)
Fixed
- RSpec: take into account Test Management disabled tests when deciding to skip context hooks (#463)
- Fix for attempt-to-fix flow: don't mask failures for flaky tests being fixed (#464)
- Pass -c safe.directory to all git commands to fix dubious ownership errors (#454)
- fix: rename DD_TRACE_CI_ENABLED to DD_CIVISIBILITY_ENABLED with backwards compatibility (#453)
Read the full changeset and the release milestone.
1.26.0
Highlights
This release makes another step forward for the correctness of Test Impact Analysis - we start tracking static dependencies between files based on Ruby constants they use. The current approach has some limitations but it already catches many dependencies in real world Rails apps that are completely invisible to other code coverage approaches.
Currently the feature is experimental and can be enabled using env variable DD_TEST_OPTIMIZATION_TIA_STATIC_DEPS_COVERAGE_ENABLED=1.
Changed
- Track constants usage in each Ruby file as a static dependency to enrich Test Impact Analysis data (#442)
Read the full changeset and the release milestone.
1.25.0
Highlights
This release adds support for Ruby 4 and Minitest 6
Added
Read the full changeset and the release milestone.
1.24.0
Highlights
This release contains an important fix for Test Impact Analysis feature: now it correctly tracks parent models and included concerns as covered by test.
Also, this release adds new tag @test.final_status (with possible values pass, fail, skip) that can be useful to monitor hard failures (the ones that make your CI red).
Added
- Create final status tag on test events (#433)
Changed
- Add
branchparameter to/test-management/testsrequest (#436)
Fixed
- Fix an inheritance blind spot for Test Impact Analysis (#440)
Read the full changeset and the release milestone.
1.23.3
Highlights
This release contains a fix for a bug with test discovery component being nil which might break test execution completely.
Fixed
- Fix nil error for test discovery component by introducing NullObject pattern for all components of Datadog Test Optimization (#430)
Read the full changeset and the release milestone.
1.23.2
Highlights
Fixes @test.retry_reason tag that had invalid value auto_test_retries when Auto Test Retries feature is used.
The correct value is auto_test_retry.
Added
- Test discovery mode for minitest (#418)
Changed
- DDTest integration, tests discovery: change format of tests.json file (#416)
Fixed
- Fix: rename wrong test.retry_reason value for Auto Test Retries feature (#425)
Read the full changeset and the release milestone.
1.23.1
Highlights
This release fixes source code integration for RSpec tests when test's location is redefined by a custom rspec plugin.
Fixed
- Drop source end line when it is before start line (#414)
Read the full changeset and the release milestone.
1.23.0
Highlights
The highlight of this release is an important fix for parallel_tests tracing when using manual instrumentation.
Additional improvements include better support for DDTest tool currently in development.
Changed
- In test discovery mode output suiteSourceFile for each test (#400)
- DDTest integration changes (#407)
- Support context propagation from Datadog test runner (#399)
Fixed
- Fix issue when parallel_tests doesn't track test sessions when using manual instrumentation (#410)
Read the full changeset and the release milestone.
1.22.1
Highlights
This patch fixes a rare race condition in the configuration process that could lead to unpredictable library behavior, such as incorrectly marking old tests as new. This ensures more reliable and consistent performance of the library.
Fixed
- Fix configuration race condition that caused undefined library behaviour (marking old tests as new as an example) (#402)
Read the full changeset and the release milestone.