-
-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ws/canvas 2 jimp #362
Ws/canvas 2 jimp #362
Conversation
- added a local module
- add resemble fork with Jimp implementation - remove canvas and resemble - revert vitest-fix - update build
🦋 Changeset detectedLatest commit: f78704c The changes in this PR will be included in the next version bump. This PR includes changesets to release 2 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Docs changes for WebdriverIO can be found here and depend on releasing this version. Once both are released I'll port it to main |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Amazing work once again 🎉
Legend, great work! |
Tnx guys I’m in Athens now with my company, will merge it beginning of next week |
💥 Breaking
This PR replaces Canvas as a dependency with Jimp. This removes the need to use system dependencies and will reduce the number of system dependency errors/issues (node-gyp/canvas and so on). This will, in the end, make the life of our end users way easier due to:
Note
Extensive research has been done and we have chosen to "fork" ResembleJS, adjust it by making use of Jimp instead of Canvas and break the browser API because the fork will only be used in a nodejs environment
Investigation showed that creating a wrapper would even make it slower, so we went for the breaking change in the API by just replacing Canvas with Jimp
Important
There is a performance impact where Canvas is around 70% faster than Jimp. This has been measured without using WebdriverIO and only comparing images. When the "old" implementation with WebdriverIO combined with Canvas or Jimp is compared, we hardly see a performance impact.
🚀 New Features
Update the baseline images through the command line by adding the argument
--update-visual-baseline
. This willUsage:
When running logs info/debug mode you will see the following logs added
💅 Polish