Endform logo

Changelog

Latest updates and improvements to Endform.

We’ve rewritten how we track test identities. This should make analytics more predictable and stable over time.

Major features & improvements

  • Test identity rewrite: Tests are now identified using stable properties (fileName, projectName, testName, describes) that match Playwright’s identification method. This makes test tracking more reliable across code changes.
  • Database improvements: Upgraded to Postgres 18 improved the performance of most of our expensive queries.

CLI version updates

Version 0.50.x

  • Storage state configuration support: Added support for more Playwright config storage state variants.
  • Miscellaneous stability fixes: Better error handling, more retries with backoffs on network requests and more.

This week we redesigned the analytics dashboard.

Analytics dashboard redesign

Major features & improvements

  • Analytics dashboard redesign: A redesign of the analytics dashboard. Chart colors are more predictable and table rows are easier to digest.

CLI version updates

Version 0.49.x

  • Trace retention configuration: New traceRetention option in endform.jsonc allows you to control if Endform will retain traces or not.
  • Custom reporter argument: Added --reporter command-line argument to specify custom Playwright reporters when running tests.
  • Improved binary installation: Enhanced CLI binary installation with musl static linking for better Linux compatibility. Better error handling on binary installation failures.
  • Minimize output mode: New ENDFORM_MINIMIZE_OUTPUT environment variable reduces CLI output to the absolute minimum (except for Playwright reporter output).

It’s a new year! We’re working on some more major fun things in the background, but for now, take some CLI speedups!

CLI version updates

Version 0.47.x

  • Parallel asset downloads: The CLI now downloads completion assets in parallel instead of sequentially, speeding up the finalization/completion time of suite runs.
  • Fail-fast test setup: The CLI can now cancel more ongoing operations and fail faster when test setup steps file (such as in the “no tests found” case).

We’ve released our GitHub App! And a few more last goodies before the holidays.

Major features & improvements

  • GitHub App public release: The GitHub App integration is now publicly available in settings, making it easier to integrate Endform with your GitHub repositories without creating an API key. We’ve also redesigned the onboarding flow to guide you through setting up the GitHub App for your projects.

CLI version updates

Version 0.47.x

  • Remote reporters: New remoteReporters configuration option in endform.jsonc allows you to specify custom Playwright reporters that should run exclusively on remote runners instead of locally. More details in the documentation.
  • Playwright 1.57 support: Added support for Playwright 1.57, including the new wait pattern in webServer configuration.
  • Credentials file migration: CLI credentials are now stored in $HOME/.config/endform instead of the previous location, following standard conventions for CLI tools.

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.