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 plugin dependency-analysis to v2 #185

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 5, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
com.autonomousapps.dependency-analysis 1.33.0 -> 2.8.0 age adoption passing confidence

Warning

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


Release Notes

autonomousapps/dependency-analysis-android-gradle-plugin (com.autonomousapps.dependency-analysis)

v2.8.0

  • [Feat]: support reasoning about multiple pieces of advice.
  • [Fix]: compute/printDuplicateDependencies works even when not all projects apply this plugin.
  • [Fix]: do not filter out advice to add to testImplementation if there is conflicting advice to downgrade from implementation.
  • [Fix]: compileOnly dependencies are not visible to the test compile classpath.
  • [Build]: use Gradle 8.12.1
  • [Chore]: update to AGP 8.8.0
  • [Refactor]: use DependencyHandler.project() instead of Project.project().
  • [Test]: only run functionalTest against latest combination of AGP and Gradle.
  • [Test]: don't forward stdout on CI.

v2.7.0

  • [Feat]: can set severity and filter duplicate class warnings.
  • [Feat]: don't recommend removing implementation dependency on necessary superclass.
  • [Chore]: use non-deprecated method when available.
  • [Chore]: update various dependencies, including antlr.

New DSL option for configuring duplicate class warnings:

// root build.gradle[.kts]
dependencyAnalysis {
  issues {
    all {
      onDuplicateClassWarnings {
        severity(<"fail"|"warn"|"ignore">)
        // Fully-qualified class reference to exclude, slash- or dot-delimited
        exclude("org/jetbrains/annotations/NotNull", "org.jetbrains.annotations.Nullable")
      }
    }
  }
}

v2.6.1

  • [Fix]: superClassName can be null (Object has no superclass).

v2.6.0

  • [Feat]: improvements relating to generating project graphs.
  • [Fix]: use stable kotlin-metadata 2.0.21.
  • [Fix]: error message code example
  • [Chore]: use graph-support v0.4.
  • [Chore]: build with Gradle 8.11.1.
  • [Chore]: use com.gradle.develocity plugin exclusively.
  • [Chore]: replace deprecated kotlinOptions with compilerOptions.

v2.5.0

  • [Feat]: use KotlinEditor to rewrite Gradle Kotlin DSL scripts.
  • [Fix]: ProjectAdvice is totally Comparable.
  • [Refactor]: make a lot of data models internal that don't need to be public.

v2.4.2

  • [Fix]: reason can explain usage of invisible annotations.

v2.4.1

  • [Fix]: differentiate visible from invisible annotations.
  • [Fix]: enable easier runtime debugging of bytecode analysis.
    Use -Ddependency.analysis.bytecode.logging=true to get extremely verbose logging during bytecode analysis.

v2.4.0

  • [Feat]: detect duplicate class files on compile and runtime classpaths, and warn.
  • [Fix]: use asm-relocated 9.7.1.0. Support Java 23.

v2.3.0

  • [Feat]: enable reason task to get reason for specific gradle capabilities (e.g., test-fixtures).
  • [Fix]: don't suggest removing runtime-required annotation libraries.
  • [Fix]: only print issue postscript if there's an issue to report.

Example usage of reason:

./gradlew app:reason --id foo --capability test-fixtures

Which will print the "reason" for any advice relating to the test-fixtures variant of the foo library.

v2.2.0

  • [Feat]: new ReportingHandler with ability to specify postscript.
  • [Feat]: DSL option that opts-in source sets to requiring explicit dependencies.
  • [Chore]: build and test against Gradle 8.10.2.
  • [Chore]: bump to latest Kotlin 1.9.x patch.
  • [Chore]: update to AGP 8.7 stable and 8.8 alpha04

Summary of new DSL options below:

// root build.gradle[.kts] or settings.gradle[.kts]
dependencyAnalysis {
  structure {
    explicitSourceSets(/* vararg of source sets to be treated "explicitly" */)
  }
  reporting {
    postscript(/* Some text to help out end users who may not be build engineers. */)
  }
}

v2.1.4

  • [Fix]: @Metadata's d2 array should typically be compileOnly.

v2.1.3

  • [Fix]: kotlin modules can have java code.
  • [Fix]: classes referenced in runtime-retained annotations are required at runtime.
  • [Fix]: reason for dependencies used in annotations is still confusing but less misleading.

v2.1.2

  • [Fix]: include project description json at both external and internal coordinates.

v2.1.1

  • [Fix]: improve separation of "annotation" vs "not-annotation" in bytecode analysis.

v2.1.0

  • [Feat]: start to add information about how a class is referenced in bytecode.
  • [Fix]: when rewriting dependencies, don't require a version string.

v2.0.2

  • [Fix]: include version catalog entries even when plugin not applied to root.
  • [Fix]: when setting bundle primary, also 'include' dependency.
  • [Fix]: consistently replace '.' with '_' in Android res.
  • [Fix]: typo in AGP missing message
  • [Docs]: add kdoc to AbiHandler.ExclusionsHandler.

v2.0.1

  • [Fix] consider dependency unused candidate if only capability is InferredCapability.

v2.0.0

  • [Feat] add 'com.autonomousapps.build-health' settings plugin.
  • [Feat] dependencyAnalysis configurable from settings script.
  • [Feat] remove support for auto-apply flag.
  • [Feat] remove restriction that DAGP must be applied to root project.
  • [Feat] helpful error message when KGP or AGP are missing from build classpath.
  • [Feat] check that buildHealth did something.
  • [Feat] remove deprecated ignoreKtx property.
  • [Feat] move PluginAdvice to the model package.
  • [Feat] rename FindInlineMembersTask to FindKotlinMagicTask.
  • [Feat] don't warn when AGP is using a newer patch version
  • [Fix] gracefully handle 'empty' Android res file.
  • [Chore] update to Gradle 8.9
  • [Chore] update to AGP 8.5.2

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 this update again.


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

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/com.autonomousapps.dependency-analysis-2.x branch 2 times, most recently from d6ee3ac to aacefae Compare October 24, 2024 18:42
@renovate renovate bot force-pushed the renovate/com.autonomousapps.dependency-analysis-2.x branch 3 times, most recently from f0d0ad3 to 17715c7 Compare November 4, 2024 03:42
@renovate renovate bot force-pushed the renovate/com.autonomousapps.dependency-analysis-2.x branch from 17715c7 to ef01210 Compare November 21, 2024 07:12
@renovate renovate bot force-pushed the renovate/com.autonomousapps.dependency-analysis-2.x branch from ef01210 to 21bf07c Compare December 4, 2024 23:11
@renovate renovate bot force-pushed the renovate/com.autonomousapps.dependency-analysis-2.x branch from 21bf07c to 5e96817 Compare December 14, 2024 18:39
@renovate renovate bot force-pushed the renovate/com.autonomousapps.dependency-analysis-2.x branch 2 times, most recently from 60e20f9 to d3513eb Compare January 11, 2025 06:23
@renovate renovate bot force-pushed the renovate/com.autonomousapps.dependency-analysis-2.x branch from d3513eb to 542e039 Compare January 29, 2025 20:32
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.

0 participants