Skip to content

Commit

Permalink
Replace OpenRewrite AST handling with SourceSolver
Browse files Browse the repository at this point in the history
  • Loading branch information
Col-E committed Jan 3, 2025
1 parent 565c440 commit 5a93431
Show file tree
Hide file tree
Showing 22 changed files with 1,300 additions and 1,929 deletions.
10 changes: 7 additions & 3 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ cdi-api = "4.1.0"
cdi-impl = "6.0.0.Beta4"
cfr = "0.152"
dex-translator = "1.1.1"
diffutils = "4.15"
directories = "26"
docking = "1.2.3"
downgrader = "1.1.2"
Expand All @@ -29,7 +30,6 @@ logback-classic = { strictly = "1.4.11" } # newer releases break in jar releases
mapping-io = "0.6.1"
mockito = "5.14.2"
natural-order = "1.1"
openrewrite = "8.40.3"
picocli = "4.7.6"
procyon = "0.6.0"
reactfx = { strictly = "2.0-M5" } # won't get updates, dead
Expand All @@ -38,6 +38,8 @@ richtextfx = "0.11.3"
treemapfx = "1.1.0"
vineflower = "1.10.1"
wordwrap = "0.1.12"
sourcesolver = "1.0.0"
# Plugins
benmanes-versions = "0.42.0"
gradle-coverage-report-aggregator = "1.3.2"
gradle-checker-processor = "2.0.2"
Expand Down Expand Up @@ -66,6 +68,8 @@ cfr = { module = "org.benf:cfr", version.ref = "cfr" }

dex-translator = { module = "software.coley:dex-translator", version.ref = "dex-translator" }

diffutils = { module = "io.github.java-diff-utils:java-diff-utils", version.ref = "diffutils" }

directories = { module = "dev.dirs:directories", version.ref = "directories" }

docking = { module = "com.github.Col-E:tiwulfx-dock", version.ref = "docking" }
Expand Down Expand Up @@ -112,8 +116,6 @@ mockito = { module = "org.mockito:mockito-core", version.ref = "mockito" }

natural-order = { module = "net.grey-panther:natural-comparator", version.ref = "natural-order" }

openrewrite = { module = "org.openrewrite:rewrite-java-21", version.ref = "openrewrite" }

picocli = { module = "info.picocli:picocli", version.ref = "picocli" }

procyon = { module = "org.bitbucket.mstrobel:procyon-compilertools", version.ref = "procyon" }
Expand All @@ -130,6 +132,8 @@ vineflower = { module = "org.vineflower:vineflower", version.ref = "vineflower"

wordwrap = { module = "com.github.davidmoten:word-wrap", version.ref = "wordwrap" }

sourcesolver = { module = "software.coley:source-solver", version.ref = "sourcesolver" }

[bundles]
asm = [
"asm-core",
Expand Down
10 changes: 2 additions & 8 deletions recaf-core/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ dependencies {
api(libs.dex.translator) {
exclude group: 'com.android.tools'
}
api(libs.diffutils)
api(libs.directories)
api(libs.downgrader) {
exclude group: 'org.ow2.asm'
Expand All @@ -35,18 +36,11 @@ dependencies {
api(libs.procyon)
api(libs.jackson)
api(libs.jlinker)
api(libs.openrewrite) {
exclude group: 'net.java.dev.jna'
exclude group: 'org.latencyutils'
exclude group: 'org.openrewrite', module: 'rewrite-yaml'
exclude group: 'org.openrewrite', module: 'rewrite-xml'
exclude group: 'org.xerial.snappy'
exclude group: 'org.yaml'
}
api(libs.regex)
api(libs.bundles.jasm)
api(libs.vineflower)
api(libs.wordwrap)
api(libs.sourcesolver)
}

// Force generation of gversion data class when the version information is not up-to-date
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ private void appendPackage(@Nonnull Printer out) {
*/
private void appendImports(@Nonnull Printer out) {
String lastRootPackage = null;
NavigableSet<String> referencedClasses = classInfo.getReferencedClasses();
NavigableSet<String> referencedClasses = new TreeSet<>(classInfo.getReferencedClasses());
boolean hasImports = false;
for (String referencedClass : referencedClasses) {
// Skip classes in the default package.
Expand Down
Loading

0 comments on commit 5a93431

Please sign in to comment.