michaelbel / movies

Discover movies app illustrating Kotlin Multiplatform development best practices
https://play.google.com/store/apps/details?id=org.michaelbel.moviemade
Apache License 2.0
242 stars 34 forks source link

Bump com.squareup.leakcanary:leakcanary-android from 3.0-alpha-6 to 3.0-alpha-7 #338

Closed dependabot[bot] closed 1 month ago

dependabot[bot] commented 1 month ago

Bumps com.squareup.leakcanary:leakcanary-android from 3.0-alpha-6 to 3.0-alpha-7.

Release notes

Sourced from com.squareup.leakcanary:leakcanary-android's releases.

v3.0-alpha-7

See Change Log

Changelog

Sourced from com.squareup.leakcanary:leakcanary-android's changelog.

Change Log

Please thank our contributors 🙏 🙏 🙏.

Version 3.0 Alpha 7 (2024-05-30)

Revisited a number of API choices for heap growth, to simplify but also support more advanced behavior such as keep heap dumps on test failure, or zipping heap dumps for CI upload.

  • HeapGrowthTraversal is now HeapDiff
  • ObjectGrowthDetector.forAndroidHeap().repeatingAndroidInProcessScenario() is now HeapDiff.repeatingAndroidInProcessScenario() which is now really just a wrapper for HeapDiff.repeatingDumpingTestScenario() with Android UI test specific configuration.
  • maxHeapDumps and scenarioLoopsPerDump have moved from being factory parameters to being per scenario parameters.
  • 💥 #2683 Fix crash when java.lang.Object has multiple class load records in JVM heap dumps
  • 🔨 #2682 Add support for unload class tags and records

Heap Growth: Espresso test example

dependencies {
  androidTestImplementation 'com.squareup.leakcanary:leakcanary-android-test:3.0-alpha-7'
}
<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android">

<!-- Performing the heap growth analysis in process requires more heap. --> <application android:largeHeap="true"/> </manifest>

class MyEspressoTest {
  val detector = HeapDiff.repeatingAndroidInProcessScenario()

  @Test
  fun greeter_says_hello_does_not_grow_heap() {
    // Runs repeatedly until the heap stops growing or we reach max heap dumps.
    val heapDiff = detector.findRepeatedlyGrowingObjects {
      onView(withId(R.id.name_field)).perform(typeText("Steve"))
      onView(withId(R.id.greet_button)).perform(click())
      onView(withText("Hello Steve!")).check(matches(isDisplayed()))
    }

    assertThat(heapDiff.growingObjects).isEmpty()
  }
</tr></table> 

... (truncated)

Commits


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
dependabot[bot] commented 1 month ago

Superseded by #341.