Release notes

happo for npm release notes

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

6.25.1Fix GitLab fallback SHA history fetch depth

Fixed

  • Fix GitLab merge requests fetching too little base history to compute fallback SHAs, and avoid fetching history unnecessarily when --fallbackShas is given [by @lencioni in #639]

6.25.0GitHub Actions OIDC auth, browser sign-in without a terminal, GitLab/Bitbucket link support

This release adds new ways to authenticate and link comparisons on GitLab CI, Bitbucket Pipelines, and GitHub Actions, and fixes screenshots being filed under temporary merge commits.

Added

  • Authenticate GitHub Actions workflows with OIDC tokens instead of storing HAPPO_API_KEY and HAPPO_API_SECRET as repository secrets, when id-token: write permission is granted [by @trotzig in #612]
  • Set HAPPO_BROWSER_AUTH to sign in through the browser from a shell without a terminal, such as a coding agent, printing a sign-in link and waiting up to five minutes for sign-in [by @lencioni in #607]
  • Send a pull or merge request link automatically from GitLab CI and Bitbucket Pipelines, enabling per-diff review scope, chained auto-approve, dashboard labels, and email threading for those providers [by @lencioni in #631]

Fixed

  • File screenshots and commit statuses under the branch head instead of the temporary merge commit that GitLab's merged results and merge train pipelines and Bitbucket's pull request pipelines check out [by @lencioni in #634]

6.24.0New screenshotScale target option for iOS and iPad

Added

  • Add a screenshotScale target option for ios-safari and ipad-safari targets, to take screenshots at 1x instead of the default 2x [by @lencioni in #399, #405]

6.23.0Viewport overflow flags, outline/shadow cropping, scroll-driven animations, and grouped statuses

This release adds several opt-in capabilities for rendering and organizing Happo runs, including new config options and a CLI command.

Added

  • Show each snapshot's viewport and flag horizontal overflow on the new compare page [by @trotzig in #338]
  • Add an includeOutlinesAndShadows target option that grows screenshot crops to include outlines and box shadows at the edge of an example [by @trotzig in #310]
  • Add an animate.scrollTimelines: 'seek' option to render scroll-driven animations instead of leaving them as stills
  • Add an --onlyBaseSha CLI flag so --only runs borrow unrendered stories from the exact commit the list was computed from, instead of the newest available report
  • Add a group config option and a happo skip command to combine several Happo projects into one job and status check, and to post a passing status when a project's run is skipped

6.22.0

  • Fix a race where a report using --only/--skip could be compared against a stale baseline, causing spurious diffs and false deletions [by @trotzig in #176]
  • Add support for the interfaceOrientation target option so devices rotate correctly for ios-safari and ipad-safari targets [by @trotzig in #179]
  • Warn when a pull request's checkout doesn't match its head commit, which can cause spurious diffs from merged base-branch changes [by @trotzig in #159]

6.21.0

  • Add a blockApproval config option to control which conditions (render errors, accessibility violations) block approval of a comparison [by @trotzig in #636]

6.20.1

  • Fix a bug where long-running requests could fail with a 401 error due to an expired API token not being refreshed on retry [by @lencioni in #634]

6.20.0

  • Add animation start time tracking with AnimationDriverHandle.startMs and AnimateTrace.animations[].measured properties [by @trotzig in #625]
  • Validate entire Happo config with valibot schema covering all options including targets, integrations, and deepCompare [by @lencioni in #627]
  • Fix telemetry reporting in test environments by respecting HAPPO_DISABLE_TELEMETRY environment variable [by @trotzig in #620]

6.19.2

  • Improve Storybook build failure messages to include actual error details instead of generic messages [by @lencioni in #612]
  • Use installed Storybook version instead of declared version range for more reliable version detection [by @lencioni in #614]

6.19.1

  • Fix Storybook integration to work without requiring import 'happo/storybook/register' in preview.js, preventing timeout failures [by @lencioni in #610]
  • Improve error handling and validation for missing Storybook configuration to catch issues earlier in the job lifecycle
  • Update development dependencies including Cypress, Prettier, and release-with-ease

Need help?