Release notes

happo for npm release notes

The happo npm package: the CLI and its Storybook, Cypress, Playwright, and Vitest integrations.

6.19.0

  • Add allowedHostnames target option to specify which hostnames browsers can reach during rendering [by @lencioni in #605]

6.18.0

  • Add AnimateTrace.stageCount and AnimateTrace.stages to track animation stages during capture [by @trotzig in #596]
  • Add AnimationDriverHandle.finish() method for drivers to properly end animation stages [by @trotzig in #596]
  • Support happoAnimate.beforeRender hook to set up motion environment before story renders, covering prefersReducedMotion and capture-friendly reset CSS [by @trotzig in #595]
  • Add AnimateOptions.discovery to detect animations starting after capture begins, with configurable settle time and max frames [by @trotzig in #594]
  • Add AnimateOptions.sampling for motion capture configuration [by @trotzig in #594]
  • Add story-level animate options and root expectations for motion-capture hazard handling [by @trotzig in #594]
  • Add AnimateOptions.stages and AnimateExpectations.minStages to support chained animations where each stage starts after the previous one finishes [by @trotzig in #596]

6.17.0

  • Build Storybook previews without the manager UI by default, reducing bundle size. Add previewOnly: false configuration option to include the Storybook manager UI when needed (#602) [by @lencioni in #602]
  • Warn when a Storybook is built in development mode to catch framework size issues (#601) [by @trotzig in #601]
  • Update React to 19.3.0 and related dependencies
  • Fix CVE-2026-87908 in multiparty dependency

6.16.0

  • Support prefersReducedMotion override on animate options to handle pages that honor prefers-reduced-motion [by @trotzig in #593]
  • Update release-with-ease and typescript-eslint dependencies [by @app/dependabot in #591]

6.15.0

  • Add navigatePerStory option to Storybook integration for per-story page navigation, useful for Storybooks with state leakage between stories [by @trotzig in #589]
  • Add support for animated (APNG) snapshots via animate configuration option (experimental), allowing Happo to step through page animations and encode frames into a single animated PNG [by @trotzig in #590]
  • Migrate Cypress test environment to use Cypress.expose() for compatibility with Cypress 16 [by @lencioni in #585]
  • Update dependencies including Cypress 16.0.0, Playwright 1.63.0, and various other patches and minor updates

6.14.0

  • Package assets as zstd-compressed tar archives instead of zip, reducing package size by 22-46% and improving decompression speed by ~7x. Automatically fall back to zip format when zstd is unavailable, with option to force zip via HAPPO_ARCHIVE_FORMAT=zip environment variable [by @lencioni in #580]
  • Update and dedupe dependencies [by @lencioni in #581]

6.13.3

  • Fix regression where skipped examples in e2e flow were incorrectly reported as deletions [by @trotzig in #574]
  • Make --skip and --skippedExamples true aliases across all commands [by @trotzig]
  • Validate skip list before creating external resources to prevent orphaned servers and jobs [by @trotzig]
  • Improve error messages to report correct flag name in validation failures [by @trotzig]
  • Update dependencies: jose, Storybook, ESLint, Cypress, and react-error-boundary

6.13.2

  • Improve error messages when integration runs fail by showing the failing command, exit code, and CI job logs URL [by @lencioni in #570]
  • Parallelize dynamic imports in handleDefaultCommand for better performance [by @lencioni]
  • Update cypress, typescript-eslint, and other dependencies to latest patch and minor versions

6.13.1

  • Fix API key/secret leak in e2e and finalize CLI commands by gating debug output behind HAPPO_DEBUG environment variable [by @trotzig in #562]
  • Update development dependencies including eslint-plugin-simple-import-sort, jsdom, Playwright, Cypress, and Storybook

6.13.0

  • Support Storybook v8 [by @trotzig in #506]

Need help?