Releases: DataDog/datadog-ci-rb
1.4.0
Highlights
Auto test retries
Test Visibility’s Auto Test Retries feature allows retrying failing tests up to N times to avoid failing your build due to flaky tests:
a failing test case is retried either until it passes successfully or until there are no more retry attempts left (in which case the build fails).
ITR is out of beta
Intelligent test runner for Ruby is out of beta now and is considered GA. Now DD_CIVISIBILITY_ITR_ENABLED env variable is not required to enable ITR - configuration in test settings page is enough.
Better test skipping for Cucumber
When ITR skips cucumber features, Before/After blocks are skipped as well.
Added
- Auto test retries for cucumber (#212)
- Auto test retries for RSpec (#213)
- Auto test retries for minitest (#214)
- implement auto test retries RFC (#219)
Changed
- Skip Before/After hooks in cucumber when scenario is skipped by intelligent test runner (#211)
- gem datadog 2.3 is now minimal required version (#220)
- Enable agentless telemetry when library is running in agentless mode (#221)
- Add Ruby 3.4 to the testing matrix (#217)
- add different fallbacks for unshallowing remotes (#218)
- make itr_enabled config parameter true by default (#216)
- RSpec - don't report test errors if rspec process is quitting (#215)
Read the full changeset and the release milestone.
1.3.0
Highlights
This release adds internal Datadog telemetry to this library that will significantly simplify support and troubleshooting for customer issues.
Added
- Add test_session metric (#207)
- API metrics (#206)
- git commands telemetry (#205)
- implement ITR metrics for internal telemetry (#204)
- Implement code coverage metrics for internal telemetry (#203)
- Implement manual_api_events metric (#202)
- HTTP transport metrics and minor telemetry tweaks (#201)
- Send event_created and event_finished metrics for internal telemetry (#200)
Read the full changeset and the release milestone.
1.2.0
Highlights
This release fixes an important limitation of per test code coverage that we use for intelligent test runner.
Now it correctly covers ActiveRecord and ActiveModel classes when they don't have any custom methods implemented.
Changed
- Expand test impact analysis with allocation tracing (#197)
Read the full changeset and the release milestone.
1.1.0
Highlights
datadog-ci library now automatically ignores WebMock/VCR libraries without custom configuration from user's side
Added
- Ignore Webmock automatically when making HTTP calls (#193)
Read the full changeset and the release milestone.
1.0.1
Highlights
This releaes fixes the issue with code coverage tool for ITR not covering background threads.
Fixed
- multi threaded code coverage support for datadog_cov (#189)
- code coverage extension fixes and improvements (#171)
Read the full changeset and the release milestone.
1.0.0
Highlights
This is the first major release of Datadog's test visibility library after extracting it from ddtrace gem.
Intelligent test runner
Intelligent Test Runner that selectively runs only tests that are affected by changes in your feature branch.
Knapsack Pro support
Test runner Knapsack Pro v7.2 is now supported.
Browser tests support (via selenium)
Adds browser tests support with Datadog RUM integration.
Added
- datadog-cov native extension for per test code coverage (#137)
- citestcov transport to serialize and send code coverage events (#148)
- Code coverage events writer (#150)
- Git tree upload - git command line integration (#151)
- Add Git::SearchCommits api client (#152)
- Upload packfiles API client (#153)
- Git tree uploader (#154)
- Git repository unshallowing logic (#155)
- Git upload async worker (#156)
- Reduce ITR-induced code coverage overhead for default branch (#157)
- Skippable tests api client (#158)
- Request skippable tests when configuring ITR (#159)
- Test skipping implementation (#160)
- "why this test was skipped" feature (#165)
- custom configurations tags support for ITR (#166)
- unskippable tests for ITR (#167)
- Knapsack Pro 7/RSpec 3 support (#172)
- add settings option to ignore code coverage for bundled gems location (#174)
- log an error message if tracing is disabled but test visibility is enabled (#175)
- Browser tests support via selenium integration (#183)
Changed
- automatically trace with correct time even when time is stubbed by timecop (#185)
- depend on gem datadog ~> 2.0 (#190)
- add additional debug logging, do not skip tests when running in forked processes (#168)
- accept gzipped responses from API (#170)
Removed
- Ruby 2.1-2.6 support is dropped
- remove deprecated
use
alias (#173)
Fixed
- Fix Knapsack Pro integration (#180)
Read the full changeset and the release milestone.
1.0.0.beta6
Highlights
This release adds support for browser tests when selenium-webdriver is used.
See the official docs.
Added
- Browser tests support via selenium integration (#183)
Read the full changeset and the release milestone.
1.0.0.beta5
Highlights
This release fixes the following issues with Knapsack Pro integration:
- now we ignore knapsack_pro:rspec_test_example_detector rake task and don't instrument RSpec in dry-run mode
- fix the dropping tests issue
Changed
- accept gzipped responses from API (#170)
Fixed
- Fix Knapsack Pro integration (#180)
Read the full changeset and the release milestone.
1.0.0.beta4
Highlights
Added Knapsack Pro v7 support and optimized code coverage performance for the case when bundled gems are
installed in the project folder.
Added
- Knapsack Pro 7/RSpec 3 support (#172)
- add settings option to ignore code coverage for bundled gems location (#174)
- log an error message if tracing is disabled but test visibility is enabled (#175)
Removed
- remove deprecated use alias (#173)
Read the full changeset and the release milestone.
1.0.0.beta3
This release contains Intelligent Test Runner changes making it ready for the public beta.
Added
- "why this test was skipped" feature (#165)
- custom configurations tags support for ITR (#166)
- unskippable tests for ITR (#167)
Changed
- additional debug logging, do not skip tests when running in forked processes (#168)
Read the full changeset.