Endform logo

Changelog

Latest updates and improvements to Endform.

This week brings improvements to suite execution reliability, more data about suite runs, dashboard navigation tweaks, and better error message formatting in analytics.

Major features & improvements

  • Suite run auto-cancellation: Suite runs will now automatically cancel if no observers have been connected for over 90 seconds, preventing runaway executions and reducing unnecessary resource usage.
  • Concurrency fix for retries: Fixed an issue where parallel test retries didn’t respect the configured concurrency limits.
  • Suite runs data: Added test count, billable minutes, and total duration columns to the suite runs analytics table.
  • Error message formatting: Improved error message formatting in test attempts tables. We now interpret ANSI codes for colors and styles, making error messages easier to read.
  • Dashboard navigation improvements: Moved tabs to the top bar for a cleaner layout, and organized settings into sections.

We’ve been improving the accuracy and ergonomics of the analytics dashboard. As a part of that, we have added a pass rate metric.

Major features & improvements

  • Pass rate metrics: Analytics now include pass rate percentages. This can be shown for suite runs, test runs, and test attempts.
  • Timezone-aware analytics: Analytics graphs now bucket data according to your local timezone, ensuring time-based aggregations align with your actual day boundaries.
  • Improved analytics charts: Charts now use a timescale that skips missing data points for more honest visualization of metrics like averages and percentages, instead of filling the gaps with zeros.

Not every week ships major features. This week we’ve been dialing in on reliability - ensuring that Endform works well under more tough conditions.

Major features & improvements

  • SSO organization management: Users are now automatically added to their SSO organizations upon login.

CLI version updates

Version 0.45.x

  • Dependency optimizations: Type-only imports are now skipped during dependency analysis, improving performance for projects with large import trees
  • Reliability improvements: Tweaking retry and error handling to perform better with larger suites or unstable network conditions.

On our journey towards complete Playwright compatibility, we now respect the Playwright fullyParallel configuration option.

Previously we ran each test case on a separate runner, but now if fullyParallel is set to false (Playwright’s default), each file will be scheduled independently. This makes it easier to use hooks like beforeAll and afterAll as intended.

Major features & improvements

  • Fully parallel test execution: Endform now respects Playwright’s fullyParallel configuration. By default, test cases in the same file run serially on the same runner. Set fullyParallel: true to distribute each test case to separate runners for maximum parallelization.
  • Remote Bun support: We now include a recent version of Bun on our remote runners. This means that you can run Bun scripts alongside or from within your Playwright tests.

This week brings complete Playwright filter support to Endform. 🎉

Major features & improvements

  • Playwright filter support: Support for all Playwright filter options including --project, --test-list, --only-changed, --no-deps, --shard, and --forbid-only.
  • Integrated proxy network: Proxy network is now built into the main CLI, eliminating the need for a separate endform-proxy-network installation. You can safely remove endform-proxy-network from your dependencies.

CLI version updates

Version 0.45.x

  • All Playwright filters: Complete support for Playwright’s filter arguments like --project, --shard, --only-changed, and more
  • Environment variable destructuring: Support for const { MY_VAR } = process.env pattern in dependency analysis

Version 0.44.x

  • ESM module resolution: Better support for ESM projects that have CJS dependencies.
  • More performant report transfers: Reports are now transferred more efficiently, improving how quickly we can finish up suite runs.

Version 0.43.x

  • Integrated proxy network: No longer requires separate installation of endform-proxy-network
  • Smaller endform cli: Optimized release builds with reduced file sizes
  • Playwright request API support: Playwright’s request API now works correctly through proxies.

This week brings major improvements to how Endform handles Playwright configurations, with support for nested configs and comprehensive trace options. CLI 0.42.x includes a significant internal rewrite that makes Endform work more naturally with Playwright’s file system conventions.

Major features & improvements

  • Complete trace mode support: All of Playwright’s trace options are now supported, including advanced modes like on-first-retry and retain-on-first-failure. Previously Endform only supported basic options like on, off, and retain-on-failure.

CLI version updates

Version 0.42.x

  • Full trace mode support: All Playwright trace options are now supported, including on-first-retry, on-all-retries, retain-on-first-failure, and other advanced trace modes.

  • Nested Playwright config support: Playwright configurations can now live in nested directories instead of requiring them at the same level as package.json. The CLI uses a new path system that understands Playwright’s multiple reference points (config directory, test root, package.json location, and repository root).

  • Improved Playwright config handling: The CLI now transfers your Playwright config as-is to remote runners instead of pre-serializing it, allowing for better dynamic configuration.

This week brings Playwright 1.56 compatibility to endform.

Major features & improvements

  • Playwright 1.56 support: Endform now fully supports Playwright 1.56, ensuring you can use the latest features and improvements from Playwright’s newest release.

CLI version updates

Version 0.41.x

  • Improved symbolic link handling: Projects with multiple major versions of the same nested dependency now work correctly.
  • Better dry-run accuracy: The --dry-run flag now creates dependency zips that more closely match what would actually be uploaded to Endform, giving you more accurate previews before running tests
  • Smarter optional dependency handling: The CLI now only downloads optional dependencies that are OS or architecture-specific (like native binaries), avoiding unnecessary re-downloads of JavaScript-based optional dependencies that already exist in node_modules
  • Enhanced package.json resolution: Switched to using OXC’s native package.json positioning instead of custom resolution logic, improving reliability for complex project structures

This week brings major improvements to test asset handling with full snapshot and screenshot support in CLI 0.41.x, plus several dashboard enhancements including a new changelog page and a pending invitations UI.

Major features & improvements

  • Snapshot & screenshot support: The CLI now fully supports Playwright snapshots, screenshots, and similar test assets. These files are automatically tracked as dependencies per test, and any changes made during test runs are properly synchronized back from the remote runners. This makes visual regression testing and snapshot-based testing work seamlessly with Endform’s remote execution.

  • Team invitations: Pending team invitations are now visible in the dashboard header and on the new organization page, making it easier to manage your team access.

CLI version updates

Version 0.41.x

  • Snapshot & screenshot support: The CLI now fully supports Playwright snapshots, screenshots, and similar test assets. 👆

  • Improved support for complex testing setups: Enhanced handling of optional dependencies, Playwright configurations, and Chromium browser arguments to support more diverse testing layouts and reduce setup complexity.

CLI version updates

Version 0.40.x

  • Max failures configuration: Added support for Playwright’s maxFailures configuration option, giving you more control over when test runs should stop based on failure thresholds.

  • JSON import support: Improved support for importing JSON files in your tests, with better parsing and dependency tracking to ensure all necessary files are uploaded for test execution.

  • Teardown projects: Better support for Playwright teardown projects, ensuring cleanup operations run reliably at the end of your test suites.