Switch from Roborazzi to Paparazzi for snapshot testing#767
Switch from Roborazzi to Paparazzi for snapshot testing#767runningcode wants to merge 18 commits intomainfrom
Conversation
5305a6a to
18adf8b
Compare
🛰️ Build DistributionBuild available for installation
🛸 Powered by Emerge Tools |
Sentry Build Distribution
|
📸 Snapshot TestBase build not foundNo build was found for the base commit a79c91d. This is required to generate a snapshot diff for your pull request. It's possible that you created a branch off the base commit before all of the CI steps have finished processing, e.g. the one that uploads a build to our system. If that's the case, no problem! Just wait and this will eventually resolve. 🛸 Powered by Emerge Tools |
| uses: actions/setup-java@v5 | ||
| with: | ||
| java-version: "17" | ||
| java-version: "21" |
There was a problem hiding this comment.
paparazzi 2.0.0-alpha4 requires jdk 21.
| distributionBase=GRADLE_USER_HOME | ||
| distributionPath=wrapper/dists | ||
| distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.4-bin.zip | ||
| distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-bin.zip |
There was a problem hiding this comment.
paparazzi requires Gradle 9.1+
7057c21 to
57e8120
Compare
02772aa to
ef8328a
Compare
| getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" | ||
| ) | ||
| signingConfig = signingConfigs.getByName("debug") | ||
| enableUnitTestCoverage = false |
There was a problem hiding this comment.
This is just here in order to test a bug where users could disable unit tests for specific variants and the auto-wiring would fail trying to find a non-existent task.
| snapshotsPath.set( | ||
| project.extensions.getByType<RoborazziExtension>().outputDir | ||
| ) | ||
| snapshots { |
There was a problem hiding this comment.
Here's our API! Everything else is wired up automatically when the paparazzi plugin is detected.
Replace Roborazzi with Paparazzi for snapshot generation and wire the sentryUploadSnapshotsRelease task to consume Paparazzi's output directory. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Instead of hardcoding the snapshot directory path, use the output directory registered by Paparazzi on testDebugUnitTest. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Instead of fragile name matching on "snapshots", use the registered property name "paparazzi.snapshots.output.dir" to find the output dir. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The Gradle public API doesn't expose task output properties by name. The withPropertyName API is only for up-to-date checking, not lookup. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Upgrade SAGP from 6.3.0-alpha.01 to 6.4.0-alpha.1 - Switch Paparazzi plugin to use version catalog alias - Remove Roborazzi dependencies and plugin references - Add SENTRY_DONT_IGNORE_DEBUG env var to CI snapshot job - Conditionally include debug in ignoredVariants based on env var - Remove manual afterEvaluate snapshot path wiring - Add mavenLocal() to plugin repositories Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ebug Remove manual snapshotsPath wiring and let SAGP resolve it automatically. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Configure the sentryUploadSnapshotsDebug task to resolve the snapshots path from the testDebugUnitTest task outputs, and upgrade SAGP to 6.4.0-alpha.3. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace the manual afterEvaluate task wiring with the new SAGP snapshots DSL block. Also remove the SENTRY_DONT_IGNORE_DEBUG workaround and disable unit test coverage for release builds. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
c516a51 to
e016669
Compare
Replace Roborazzi plugin with Paparazzi for snapshot generation.
This PR also updates to Gradle 9.1 because paparazzi requires it.
🤖 Generated with Claude Code