Releases: happo/happo-cypress
v1.11.0
This minor release adds support for scroll positions. When you call happoScreenshot
, we register all scroll positions of elements on the page and then "replay" them on Happo workers. This will make screenshots more correct for pages with scrollable elements.
Right now the "replay scroll" feature is only enabled for Chrome and Firefox workers. In the next few days it will also be available for other targets (IE, Edge, Safari, iOS Safari).
v1.10.1
v1.10.0
This minor release has a bug fix for handling large canvases and a new feature to change the behavior for inlining canvas elements.
Bug fix: canvas
performance
When a test suite has to handle a significant amount of inlined canvas data, we were seeing timeouts from happoRegisterSnapshot
calls. We think this is because the underlying node process runs out of memory. Even though the root cause hasn't been confirmed, we're making some changes to canvas handling to improve performance (mainly memory footprint). Canvases are now written to disk instead of kept in memory.
New feature: responsiveInlinedCanvases
When canvases are inlined as <img>
elements, we copy over as much styling as possible, including the width
and height
of the canvas (which are often fixed numbers). When the registered snapshots are sent to Happo for screenshots, the fixed width and height can become problematic, as the screen size can differ from when the canvas was first created. A new responsiveInlinedCanvases
option allows users to better control what styles are applied to the inlined image element. You can set this option globally or locally. Here's how you do it globally in cypress/support/commands.js
:
import { configure } from 'happo-cypress';
configure({ responsiveInlinedCanvases: true });
Here's how you do it locally in a spec
file:
cy.get('.selector').happoScreenshot({ responsiveInlinedCanvases: false });
When the value is true
, the following css is applied to the inlined <img>
element:
width: 100%;
height: auto;
v1.9.3
v1.9.2
This patch release fixes a bug with how assets in external CSS files were handled. The symptoms of this bug could be that icons, images, fonts etc found in css files referenced by an external URL (e.g. https://some-other-domain.com/styles.css
) showed up as missing or broken.
v1.9.1
v1.9.0
In 1.8.0, a bug fix was introduced:
Additionally, a bug fix for 413 Entity Too Large issues stemming from duplicate css being collected is included in this release. Before, there was a chance that the same css styles would be recorded multiple times for a test run.
After further investigation, a different root cause was found (and handled in this release). As a result of that, 763363d was reverted.
Releasing this as a minor release since the behavior did change a little compared to 1.8.0.
v1.8.0
This minor release adds support for a --allow-failures
flag to be sent to the happo-cypress
command. This is useful if your Cypress test suite isn't always stable and you want to make sure that Happo reports are created no matter what the status of the Cypress run is.
Usage example:
npx happo-cypress --allow-failures -- npx cypress run
Additionally, a bug fix for 413 Entity Too Large
issues stemming from duplicate css being collected is included in this release. Before, there was a chance that the same css styles would be recorded multiple times for a test run.