Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [io.github.takahirom.roborazzi](https://redirect.github.com/takahirom/roborazzi) | `1.31.0` -> `1.32.0` | [![age](https://developer.mend.io/api/mc/badges/age/maven/io.github.takahirom.roborazzi:io.github.takahirom.roborazzi.gradle.plugin/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/io.github.takahirom.roborazzi:io.github.takahirom.roborazzi.gradle.plugin/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/io.github.takahirom.roborazzi:io.github.takahirom.roborazzi.gradle.plugin/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/io.github.takahirom.roborazzi:io.github.takahirom.roborazzi.gradle.plugin/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [io.github.takahirom.roborazzi:roborazzi-junit-rule](https://redirect.github.com/takahirom/roborazzi) | `1.31.0` -> `1.32.0` | [![age](https://developer.mend.io/api/mc/badges/age/maven/io.github.takahirom.roborazzi:roborazzi-junit-rule/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/io.github.takahirom.roborazzi:roborazzi-junit-rule/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/io.github.takahirom.roborazzi:roborazzi-junit-rule/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/io.github.takahirom.roborazzi:roborazzi-junit-rule/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [io.github.takahirom.roborazzi:roborazzi-compose-desktop](https://redirect.github.com/takahirom/roborazzi) | `1.31.0` -> `1.32.0` | [![age](https://developer.mend.io/api/mc/badges/age/maven/io.github.takahirom.roborazzi:roborazzi-compose-desktop/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/io.github.takahirom.roborazzi:roborazzi-compose-desktop/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/io.github.takahirom.roborazzi:roborazzi-compose-desktop/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/io.github.takahirom.roborazzi:roborazzi-compose-desktop/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [io.github.takahirom.roborazzi:roborazzi-compose](https://redirect.github.com/takahirom/roborazzi) | `1.31.0` -> `1.32.0` | [![age](https://developer.mend.io/api/mc/badges/age/maven/io.github.takahirom.roborazzi:roborazzi-compose/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/io.github.takahirom.roborazzi:roborazzi-compose/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/io.github.takahirom.roborazzi:roborazzi-compose/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/io.github.takahirom.roborazzi:roborazzi-compose/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [io.github.takahirom.roborazzi:roborazzi](https://redirect.github.com/takahirom/roborazzi) | `1.31.0` -> `1.32.0` | [![age](https://developer.mend.io/api/mc/badges/age/maven/io.github.takahirom.roborazzi:roborazzi/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/io.github.takahirom.roborazzi:roborazzi/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/io.github.takahirom.roborazzi:roborazzi/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/io.github.takahirom.roborazzi:roborazzi/1.31.0/1.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>takahirom/roborazzi (io.github.takahirom.roborazzi)</summary> ### [`v1.32.0`](https://redirect.github.com/takahirom/roborazzi/releases/tag/1.32.0) [Compare Source](https://redirect.github.com/takahirom/roborazzi/compare/1.31.0...1.32.0) ##### Experimental WebP support and other image formats Now, you can set `roborazzi.record.image.extension` to `webp` in your `gradle.properties` file to generate WebP images. To enable WebP support, add `testImplementation("io.github.darkxanter:webp-imageio:0.3.3")` to your `build.gradle.kts` file. ```kotlin roborazzi.record.image.extension=webp ``` WebP is a lossy image format by default, which can make managing image differences challenging. To address this, we provide a lossless WebP image feature. ```kotlin onView(ViewMatchers.withId(R.id.textview_first)) .captureRoboImage( roborazziOptions = RoborazziOptions( recordOptions = RoborazziOptions.RecordOptions( imageIoFormat = LosslessWebPImageIoFormat(), ), ) ) ``` You can also use other image formats by implementing your own `AwtImageWriter` and `AwtImageLoader`. ```kotlin data class JvmImageIoFormat( val awtImageWriter: AwtImageWriter, val awtImageLoader: AwtImageLoader ) : ImageIoFormat ``` Thank you, [@​ArcaNO93](https://redirect.github.com/ArcaNO93), for providing this suggestion and the code review! ##### Adjustments to AI-Powered Image Assertion In version 1.30.0, we introduced [Roborazzi AI-Powered Image Assertion](https://takahirom.github.io/roborazzi/ai-powered-image-assertion.html). We made some adjustments to the AI-Powered Image Assertion - The OpenAiAiAssertionModel, which utilizes OpenAI APIs, previously lacked a timeout specification, leading to frequent timeout issues. We have now implemented a customizable timeout setting. - The provideRoborazziContext().option was marked as `InternalRoborazziApi` despite being documented in the README. We have now changed it to ExperimentalRoborazzi API. ##### What's Changed - Make OpenAiAiAssertionModel httpClient customizable and add timeout setting by [@​takahirom](https://redirect.github.com/takahirom) in [https://github.com/takahirom/roborazzi/pull/541](https://redirect.github.com/takahirom/roborazzi/pull/541) - Add settings panel for configuring Roborazzi tasks explanation by [@​sanao1006](https://redirect.github.com/sanao1006) in [https://github.com/takahirom/roborazzi/pull/537](https://redirect.github.com/takahirom/roborazzi/pull/537) - Add the ability to change File writers and readers and add support for lossless WebP by [@​takahirom](https://redirect.github.com/takahirom) in [https://github.com/takahirom/roborazzi/pull/529](https://redirect.github.com/takahirom/roborazzi/pull/529) - Make image extension changeable by [@​takahirom](https://redirect.github.com/takahirom) in [https://github.com/takahirom/roborazzi/pull/527](https://redirect.github.com/takahirom/roborazzi/pull/527) - fix(deps): update dependency androidx.compose.ui:ui-test-junit4 to v1.7.5 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/takahirom/roborazzi/pull/526](https://redirect.github.com/takahirom/roborazzi/pull/526) - Make RoborazziContextImpl.options ExperimentalRoborazziApi by [@​takahirom](https://redirect.github.com/takahirom) in [https://github.com/takahirom/roborazzi/pull/544](https://redirect.github.com/takahirom/roborazzi/pull/544) **Full Changelog**: takahirom/roborazzi@1.31.0...1.32.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/chrisbanes/haze). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xNDIuNyIsInVwZGF0ZWRJblZlciI6IjM4LjE0Mi43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
- Loading branch information