Skip to content
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

Update all dependencies #987

Merged
merged 2 commits into from
Oct 25, 2023
Merged

Update all dependencies #987

merged 2 commits into from
Oct 25, 2023

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 13, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
androidx.room:room-runtime (source) 2.5.2 -> 2.6.0 age adoption passing confidence
androidx.room:room-ktx (source) 2.5.2 -> 2.6.0 age adoption passing confidence
androidx.room:room-compiler (source) 2.5.2 -> 2.6.0 age adoption passing confidence
io.github.takahirom.roborazzi 1.5.0 -> 1.6.0 age adoption passing confidence
io.github.takahirom.roborazzi:roborazzi 1.5.0 -> 1.6.0 age adoption passing confidence
com.squareup.okhttp3:logging-interceptor (source) 4.11.0 -> 4.12.0 age adoption passing confidence
com.google.firebase:firebase-bom 32.3.1 -> 32.4.0 age adoption passing confidence
androidx.work:work-testing (source) 2.9.0-beta01 -> 2.9.0-rc01 age adoption passing confidence
androidx.work:work-runtime-ktx (source) 2.9.0-beta01 -> 2.9.0-rc01 age adoption passing confidence
androidx.benchmark:benchmark-macro-junit4 (source) 1.2.0-rc02 -> 1.2.0 age adoption passing confidence
androidx.compose.runtime:runtime-tracing (source) 1.0.0-alpha03 -> 1.0.0-alpha04 age adoption passing confidence
androidx.compose:compose-bom 2023.10.00 -> 2023.10.01 age adoption passing confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

takahirom/roborazzi (io.github.takahirom.roborazzi)

v1.6.0

Compare Source

Experimental feature: Compose Desktop support

Roborazzi supports Compose Desktop. You can use Roborazzi with Compose Desktop as follows:

Gradle settings

plugins {
  kotlin("multiplatform")
  id("org.jetbrains.compose")
  id("io.github.takahirom.roborazzi")
}

kotlin {
  // You can use your source set name
  jvm("desktop")
  sourceSets {
    ...
    val desktopTest by getting {
      dependencies {
        implementation(project("io.github.takahirom.roborazzi:roborazzi-compose-desktop:[1.6.0-alpha-2 or higher]"))
        implementation(kotlin("test"))
      }
    }
  ...

// Roborazzi Desktop support uses Context Receivers
tasks.withType<KotlinCompile>().configureEach {
  kotlinOptions {
    freeCompilerArgs += "-Xcontext-receivers"
  }
}

Test target Composable function

@&#8203;Composable
fun App() {
  var text by remember { mutableStateOf("Hello, World!") }

  MaterialTheme {
    Button(
      modifier = Modifier.testTag("button"),
      onClick = {
        text = "Hello, Desktop!"
      }) {
      Text(
        style = MaterialTheme.typography.h2,
        text = text
      )
    }
  }
}

Test with Roborazzi

class MainKmpTest {
  @&#8203;OptIn(ExperimentalTestApi::class)
  @&#8203;Test
  fun test() = runDesktopComposeUiTest {
    setContent {
      App()
    }
    val roborazziOptions = RoborazziOptions(
      recordOptions = RoborazziOptions.RecordOptions(
        resizeScale = 0.5
      ),
      compareOptions = RoborazziOptions.CompareOptions(
        changeThreshold = 0F
      )
    )
    onRoot().captureRoboImage(roborazziOptions = roborazziOptions)

    onNodeWithTag("button").performClick()

    onRoot().captureRoboImage(roborazziOptions = roborazziOptions)
  }
}

Then, you can run the Gradle tasks for Desktop Support, just like you do for Android Support.

./gradlew recordRoborazzi[SourceSet]
./gradlew recordRoborazziDesktop
./gradlew compareRoborazziDesktop
./gradlew verifyRoborazziDesktop
...

If you use the Kotlin JVM plugin, the task will be recordRoborazzi**Jvm**.

The sample image

module/build/outputs/roborazzi/com.[package].MainKmpTest.test.png
MainJvmTest test

module/build/outputs/roborazzi/com.[package].MainKmpTest.test_2.png
MainJvmTest test_2

Update Library Versions

We had to use targetHierarchy.custom to create common JVM source sets between Android and JVM. Therefore, Roborazzi has updated Kotlin from version 1.7.20 to 1.8.22.

What's Changed

Full Changelog: takahirom/roborazzi@1.5.0...1.6.0


Configuration

📅 Schedule: Branch creation - "before 4am" (UTC), 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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@jdkoren
Copy link
Contributor

jdkoren commented Oct 13, 2023

Compose BOM 2023.10.00 uses Compose 1.5.x, but alpha04 of the UI tracing dependency pulls Compose up to 1.6.x, causing a mismatch. We have an internal bug tracking this.

@renovate renovate bot force-pushed the renovate/all branch 3 times, most recently from cb1390b to b11c48d Compare October 18, 2023 22:15
Change-Id: Ie194b90d6bff6b738cabac6c9708f037eb18ea08
@renovate
Copy link
Contributor Author

renovate bot commented Oct 24, 2023

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

Warning: custom changes will be lost.

@dturner
Copy link
Collaborator

dturner commented Oct 24, 2023

Relevant bug: https://issuetracker.google.com/298810665

@dturner dturner self-requested a review October 25, 2023 16:30
@dturner dturner merged commit 74ed483 into main Oct 25, 2023
5 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.

None yet

2 participants