Open source
Gradle dependency insight
Recipe ID
org.openrewrite.gradle.search.DependencyInsightArtifact
org.openrewrite:rewrite-gradleOptions
Examples
groovy
| Parameter | Value |
|---|---|
| groupIdPattern | com.google.guava |
| artifactIdPattern | failureaccess |
| version | null |
| configuration | null |
- groovy
- Diff
Before
plugins {
id 'java-library'
}
repositories {
mavenCentral()
}
dependencies {
implementation 'com.google.guava:guava:31.1-jre'
}
After
plugins {
id 'java-library'
}
repositories {
mavenCentral()
}
dependencies {
/*~~(com.google.guava:failureaccess:1.0.1)~~>*/implementation 'com.google.guava:guava:31.1-jre'
}
--- build.gradle
+++ build.gradle
@@ -8,1 +8,1 @@
}
dependencies {
- implementation 'com.google.guava:guava:31.1-jre'
+ /*~~(com.google.guava:failureaccess:1.0.1)~~>*/implementation 'com.google.guava:guava:31.1-jre'
}
Usage
Run this recipe
You will need to have configured the Moderne CLI on your machine before you can run the following command.
shell
mod run . --recipe DependencyInsight --recipe-option "groupIdPattern=com.fasterxml.jackson.module" --recipe-option "artifactIdPattern=jackson-module-*" --recipe-option "version=1.x" --recipe-option "configuration=compileClasspath"
If the recipe is not available locally, then you can install it using:
mod config recipes jar install org.openrewrite:rewrite-gradle:8.85.6
Data tables
Dependencies in use
org.openrewrite.maven.table.DependenciesInUseDirect and transitive dependencies in use.
| Column | Description |
|---|---|
| Project name | The name of the project that contains the dependency. |
| Source set | The source set that contains the dependency. |
| Group | The first part of a dependency coordinate com.google.guava:guava:VERSION. |
| Artifact | The second part of a dependency coordinate com.google.guava:guava:VERSION. |
| Version | The resolved version. |
| Dated snapshot version | The resolved dated snapshot version or null if this dependency is not a snapshot. |
| Scope | Dependency scope. This will be compile if the dependency is direct and a scope is not explicitly specified in the POM. |
| Count | How many times does this dependency appear. |
Explain dependencies in use
org.openrewrite.maven.table.ExplainDependenciesInUseA dependency graph explainer similar to that shown by gradle dependencyInsight for each matching dependency. This table will contain a row per matching dependency per configuration per (sub)project.
| Column | Description |
|---|---|
| Project name | The name of the project that contains the dependency. |
| Source set | The source set that contains the dependency. |
| Group | The first part of a dependency coordinate com.google.guava:guava:VERSION. |
| Artifact | The second part of a dependency coordinate com.google.guava:guava:VERSION. |
| Version | The resolved version. |
| Dated snapshot version | The resolved dated snapshot version or null if this dependency is not a snapshot. |
| Scope | Dependency scope. This will be compile if the dependency is direct and a scope is not explicitly specified in the POM. |
| Count | How many times does this dependency appear. |
| Dependency graph | The dependency paths that requested the dependency. |
Source files that had results
org.openrewrite.table.SourcesFileResultsSource files that were modified by the recipe run.
| Column | Description |
|---|---|
| Source path before the run | The source path of the file before the run. null when a source file was created during the run. |
| Source path after the run | A recipe may modify the source path. This is the path after the run. null when a source file was deleted during the run. |
| Parent of the recipe that made changes | In a hierarchical recipe, the parent of the recipe that made a change. Empty if this is the root of a hierarchy or if the recipe is not hierarchical at all. |
| Recipe that made changes | The specific recipe that made a change. |
| Estimated time saving | An estimated effort that a developer to fix manually instead of using this recipe, in unit of seconds. |
| Cycle | The recipe cycle in which the change was made. |
Source files that had search results
org.openrewrite.table.SearchResultsSearch results that were found during the recipe run.
| Column | Description |
|---|---|
| Source path of search result before the run | The source path of the file with the search result markers present. |
| Source path of search result after run the run | A recipe may modify the source path. This is the path after the run. null when a source file was deleted during the run. |
| Result | The trimmed printed tree of the LST element that the marker is attached to. |
| Description | The content of the description of the marker. |
| Recipe that added the search marker | The specific recipe that added the Search marker. |
Source files that errored on a recipe
org.openrewrite.table.SourcesFileErrorsThe details of all errors produced by a recipe run.
| Column | Description |
|---|---|
| Source path | The file that failed to parse. |
| Recipe that made changes | The specific recipe that made a change. |
| Stack trace | The stack trace of the failure. |
Recipe performance
org.openrewrite.table.RecipeRunStatsStatistics used in analyzing the performance of recipes.
| Column | Description |
|---|---|
| The recipe | The recipe whose stats are being measured both individually and cumulatively. |
| Source file count | The number of source files the recipe ran over. |
| Source file changed count | The number of source files which were changed in the recipe run. Includes files created, deleted, and edited. |
| Cumulative scanning time (ns) | The total time spent across the scanning phase of this recipe. |
| Max scanning time (ns) | The max time scanning any one source file. |
| Cumulative edit time (ns) | The total time spent across the editing phase of this recipe. |
| Max edit time (ns) | The max time editing any one source file. |