Release Notes#

September 23, 2024 - 21.1#

Features#

  • [SDK] New Java SDK! Source is available on GitHub and usage instructions can be found in our documentation. The module is available on Maven Central under the Antithesis namespace.

  • [Debugging] Interactive commands show a more accurate and complete status while running.

  • [Runtime] Detailed logs are included in error reporting for all tests that fail to complete.

  • [Runtime] New backstop service will notify the caller if, for any reason at all, a test could not be completed.

Fixes#

  • [Runtime] Webhook calls made with invalid parameters will fail faster and send useful debugging information.

  • [Notebook] Enhanced filtering in the log viewer in cases where the “source” and “stream” are unset.

  • [Notebook] Markdown renderer correctly displays links.

September 12, 2024 - 20.1#

Features#

  • [Debugging] Multiverse Debugging allows you to replay a bug, inspect your system, change history, and explore possible resolutions of the issue. Read more in our announcement post here!

  • [Notebook] A fully integrated help system is now available under the help() function.

  • [Notebook] Refresh of the notebook UI.

Fixes#

  • [Notebook] Fixed a number of stability issues with networking in debugging sessions.

  • [Simulation] Additional fixes for stability when gathering artifacts.

September 6, 2024 - 19.3#

Features#

  • [Simulation] Software under test in Antithesis now has access to a greatly increased amount of system memory.

  • [Simulation] All containers in the Antithesis environment now have a bash shell available. This enhanced environment allows debugging commands and artifact gathering even in “minimal” container images.

  • [Debugging] Lower latency when injecting commands in multiverse debugging.

  • [Reports] Users can now copy any moment’s information easily wherever they are displayed in reports using the “Copy moment” feature.

Fixes#

  • [Reports] Fixed a class of issues where reports are sometimes generated before all the data is collected.

  • [Reports] Improved the loading screen of reports.

August 26, 2024 - 17.1 & 18.3#

Features#

  • [Reports] Triage reports progressivly load property details, greatly speeding initial page load and increasing scalability limits for log volume and debugging artifacts.

  • [SDK] The Go and C++ SDKs now feature rich assertions. As introduced in the Zelda blog post, rich assertions give users of the Antithesis SDKs the power to guide Antithesis’ search for bugs in their software. Supported in Go SDK v0.4.0 and C++ SDK v0.4.0.

  • [CI] New integrations for Discord and Slack show results of Antithesis tests directly in your team’s chats. The Antithesis bot posts counts of passing and failing Properties and a link back to the full results.

  • [CI] The GitHub Action integration now summarizes results in the information posed back. Any failing test properties will cause the integration to report a failure.

  • [Reports] A new “Changed” filter in the Triage Report highlights newly failing and passing properties.

Fixes#

  • [Runtime] Improved the handling of invalid and malformed parameters.

  • [Runtime] Fixed a class of issues in which transient network errors could cause test evaluation to hang.

  • [Reports] Fixed a number of error messages for clarity and brevity. In more cases, include logs leading up to errors.

  • [Reports] Fixed a situation where the Triage Report could show inaccurate history for a property.

June 19, 2024 - 16.1#

Features#

  • [Reports] New options for controlling access to reports. We can now integrate directly with your OIDC-enabled Identity Provider to ensure that only authorized users can load reports.

  • [Reports] Property groups now support up to 1,000 properties.

  • [Runtime] When a test fails to start (for example, due to a build failure), logs are now returned along with the error message indicating the reason for the failure.

Fixes#

  • [SDK] The C++ SDK (v0.3.1) improved the way that assertions in templates or header files are handled.

  • [Runtime] Fixed issue where images passed via web parameters were always tagged as latest in the Antithesis environment. Now, images specified by tag (when using the antithesis.images API parameter) retain that tag inside the Antithesis environment.

  • [Reports] Fixed a number of situations in which reports would fail to load.

  • [Reports] Fixed a case where the property history of reports would wrongly treat different test setups as the same test.

  • [Reports] Improved performance when a property has many sub-groups.

  • [CI] Fixed a case where, when using the GitHub Action, transient GitHub API errors could cause a test to report failure.

June 3, 2024 - 15.2#

Features#

  • [SDK] SDK messages now appear in Antithesis logs. This includes assertions being hit, system lifecycle events, and custom messages you emit through the SDK’s logging API.

  • [Simulation] The default kernel in the Antithesis environment has been upgraded to 6.1.

Fixes#

  • [Reports] Fixed a case where debug logs after the moment a bug occurred could not be loaded.

May 14, 2024 - 13 & 14.1#

Features#

  • [SDK] New Rust SDK! Source is available on GitHub and usage instructions can be found in our documentation.

  • [SDK] The C++ SDK offers a dedicated header file for coverage instrumentation support. This header is compatible with C programs and does not require a modern compiler or C++ version.

  • [SDK] Triage reports now inform you whether the SDK was set up correctly.

  • [Runtime] When a single bug is found multiple times within a test, we pick a few examples for which to report full logs and other debugging artifacts. We now always pick the examples with the least total output volume leading up to them, as a proxy for simplicity of reproduction.

  • [Runtime] New API parameter, antithesis.description, which customize headers in reports and emails. For details, see the webhook documentation.

  • [Runtime] New API parameter, antithesis.config_image, which specifies the configuration image for a test. For details, see the webhook documentation.

  • [Runtime] The antithesis.images API parameter is now more powerful and flexible. For details, see the webhook documentation.

  • [Runtime] Misconfigured tests now fail faster in some cases and send more actionable information back to the caller.

  • [CI] Antithesis GitHub Action: Shipped the v0.4 update which supports all the new API parameters in this release.

Fixes#

  • [SDK] Reports now correctly handle large numbers of SDK assertions (200+).

  • [SDK] Go: multiple bugfixes.

  • [Runtime] Fixed issue where container dates could be malformed in reports.

  • [Runtime] Fixed situations where excessively verbose logs emitted by customer software could degrade the report experience.

  • [API] Fixed situations where malformed API parameters did not cause obvious failures.

  • [Reports] Fixed bug where Antithesis internal system messages leaked into reports.

Apr 22, 2024 - 12.1#

Features#

  • [Reports] All Log Viewers have an Expand / “Full Screen” button.

  • [Reports] New default property that software was built for x86_64. Many users have ARM-based laptops and can accidentally push ARM containers when iterating locally.

  • [SDK] Multiple C++ SDK improvements, including better shared library loading.

  • [SDK] A new, easy option for sending program log output to Antithesis. Program output sent in this way will appear in logs sent back in reports, helping to identify bugs and diagnose root causes. More details are documented in the capturing output section.

Fixes#

  • [Reports] Multiple fixes to improve report loading speed.

  • [Service] In more cases, Customer Support will be notified of errors.

Apr 9, 2024 - 11.3#

Features#

  • [SDK] New C++ SDK! See the source on Github and see the documentation for usage information.

  • [SDK] Go SDK (v0.3.4) adds new pass-through compile flag no_antithesis_sdk. See the Go SDK documentation for detailed information.

  • [Runtime] New API parameter, antithesis.source, used to establish history for properties. See the webhook documentation for more information.

  • [Runtime] Extracting files from running system now supports streams as well as regular files.

Mar 4, 2024 - 10.3#

Features#

  • [SDK] New Go SDK! See the source on Github and see the documentation.

  • [API] Webhook parameter antithesis.images specifies software image versions by digest or tag. See webhook documentation.

  • [API] Webhook parameter antithesis.report.recipients configures per-run report destination addresses. See webhook documentation.

  • [Service] A new GitHub Actions integration allows for direct use of Antithesis from a standard project on GitHub. Tests can be started either automatically or on-demand and results are directly attached to commits for future reference. Details are documented in the CI Integration section.

  • [Reports] New default property “Software images match expected platform” checks that software was built for x86_64. Many users have ARM-based laptops and can accidentally push ARM containers when iterating locally.

  • [Reports] Reports support dark mode in compatible browsers.

Fixes#

  • [Reports] Many fixes to improve the load speed for reports.

  • [Instrumentation] Fixed issue encountered when adding coverage instrumentation to WAR files.

  • [Service] Fixed situations in which CI callbacks could fail to fire.

Dec 20, 2023 - 5.1#

Features#

  • [Reports] Logs captured in reports can be searched by text and filtered by text through inline search bars. Additionally, logs coverage extends somewhat beyond bug manifestation, which often surfaces stack traces, etc.

  • [Reports] Reports use less bandwidth and render more quickly once loaded.

  • [Instrumentation] ASAN-compiled binaries are supported with Antithesis instrumentation.

  • [Fault Injection] New fault type: clock-skew faults can be introduced at the customer container level.

  • [Reports] New report: the Bug Report offers a deep-dive for debugging a particular issue.

  • [API] Artifact gathering is more configurable to match customers’ needs.

  • [Reports] Triage Reports include:

    • Additional metadata about tested software such as upload data and all the tags associated with that container.

    • Much more complete description about each tested property.

    • Go instrumented binaries have correct line-number information in stack traces, etc.

    • Bugs in the Triage Report have a “Copy moment” function.

Fixes#

  • [API] Core dump files did not support spaces in the name.

  • [API] Artifact (core dump, log file, etc.) extraction is more reliable.

  • [Fault Injection] Thread-pausing for LLVM-based binaries could be unexpectedly disabled.

  • [Reports] In some cases customers would receive multiple emails for a single test.