Skip to content

Changed hash algorithm in screenshot-compare to sha256#6258

Merged
christian-bromann merged 2 commits intostenciljs:mainfrom
ujas-sidapara:change-md5-to-sha256
May 27, 2025
Merged

Changed hash algorithm in screenshot-compare to sha256#6258
christian-bromann merged 2 commits intostenciljs:mainfrom
ujas-sidapara:change-md5-to-sha256

Conversation

@ujas-sidapara
Copy link
Copy Markdown
Contributor

@ujas-sidapara ujas-sidapara commented May 20, 2025

What is the current behavior?

Screenshot compare function uses md5 hash algorithm

GitHub Issue Number: 6241
https://csrc.nist.rip/library/NIST%20SP%20800-107%20Recommendation%20for%20Applications%20Using%20Approved%20Hash%20Algorithms,%202009-02%20(2).pdf#:~:text=hash%20algorithm%20is%20used%20to%20map%20a%20message,hash%20algorithms%3A%20SHA-1%2C%20SHA-224%2C%20SHA-256%2C%20SHA-384%2C%20and%20SHA-512.

What is the new behavior?

Changes from md5 to sha256 as md5 is not available in environments that need FIPS compliance (or have restrictions against older hash functions with collision risks ... such as within chainguard builder images etc)

Documentation

#6241

Does this introduce a breaking change?

  • Yes
  • No

Testing

Other information

@ujas-sidapara ujas-sidapara requested a review from a team as a code owner May 20, 2025 10:02
Copy link
Copy Markdown
Member

@christian-bromann christian-bromann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change make sense, however it will be breaking change for users since the hash will be different for all images them after the update. I will put this into a minor release as screenshot testing is still marked "experimental".

Note: we are likely gonna deprecate this feature within the next major release as alternative testing tools like WebdriverIO or Playwright provide a better feature set for visual tests.

@christian-bromann christian-bromann merged commit bbbfb45 into stenciljs:main May 27, 2025
143 of 144 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants