Skip to content

Commit 2d902aa

Browse files
committed
use gradle-idea-configuration
1 parent c04c02e commit 2d902aa

5 files changed

Lines changed: 16 additions & 14 deletions

File tree

gradle-palantir-java-format/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ dependencies {
2020
implementation project(':palantir-java-format-spi')
2121
implementation project(':palantir-java-format-jdk-bootstrap')
2222
implementation 'com.palantir.gradle.utils:platform'
23+
implementation 'com.palantir.gradle.idea-configuration:gradle-idea-configuration'
2324

2425
testImplementation project(':palantir-java-format')
2526
testImplementation 'com.netflix.nebula:nebula-test'

gradle-palantir-java-format/src/main/groovy/com/palantir/javaformat/gradle/ConfigureJavaFormatterXml.groovy

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,6 @@ class ConfigureJavaFormatterXml {
3737
})
3838
}
3939

40-
static void configureExternalDependencies(Node rootNode, String minVersion) {
41-
def externalDependencies = matchOrCreateChild(rootNode, 'component', [name: 'ExternalDependencies'])
42-
matchOrCreateChild(externalDependencies, 'plugin', [id: 'palantir-java-format'], [:], ['min-version' : minVersion])
43-
}
44-
4540
static void configureWorkspaceXml(Node rootNode) {
4641
configureFormatOnSave(rootNode)
4742
configureOptimizeOnSave(rootNode)

gradle-palantir-java-format/src/main/groovy/com/palantir/javaformat/gradle/PalantirJavaFormatIdeaPlugin.java

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
import com.google.common.base.Preconditions;
2020
import com.google.common.collect.ImmutableMap;
2121
import com.google.common.io.Files;
22+
import com.palantir.gradle.ideaconfiguration.IdeaConfigurationExtension;
23+
import com.palantir.gradle.ideaconfiguration.IdeaConfigurationPlugin;
2224
import groovy.util.Node;
2325
import groovy.util.XmlNodePrinter;
2426
import groovy.util.XmlParser;
@@ -59,6 +61,12 @@ public void apply(Project rootProject) {
5961
configureLegacyIdea(rootProject, implConfiguration, nativeImplConfiguration);
6062
configureIntelliJImport(rootProject, implConfiguration, nativeImplConfiguration);
6163
});
64+
65+
rootProject.getPlugins().apply(IdeaConfigurationPlugin.class);
66+
67+
IdeaConfigurationExtension extension = rootProject.getExtensions().getByType(IdeaConfigurationExtension.class);
68+
69+
extension.externalDependency("palantir-java-format", MIN_IDEA_PLUGIN_VERSION);
6270
}
6371

6472
private static Optional<Configuration> maybeGetNativeImplConfiguration(Project rootProject) {
@@ -79,7 +87,6 @@ private static void configureLegacyIdea(
7987
Optional<URI> nativeUri =
8088
nativeImplConfiguration.map(conf -> conf.getSingleFile().toURI());
8189
ConfigureJavaFormatterXml.configureJavaFormat(xmlProvider.asNode(), uris, nativeUri);
82-
ConfigureJavaFormatterXml.configureExternalDependencies(xmlProvider.asNode(), MIN_IDEA_PLUGIN_VERSION);
8390
});
8491

8592
ideaModel.getWorkspace().getIws().withXml(xmlProvider -> {
@@ -106,16 +113,12 @@ private static void configureIntelliJImport(
106113
createOrUpdateIdeaXmlFile(
107114
project.file(".idea/palantir-java-format.xml"),
108115
node -> ConfigureJavaFormatterXml.configureJavaFormat(node, uris, nativeImageUri));
109-
createOrUpdateIdeaXmlFile(
110-
project.file(".idea/externalDependencies.xml"),
111-
node -> ConfigureJavaFormatterXml.configureExternalDependencies(node, MIN_IDEA_PLUGIN_VERSION));
112116
createOrUpdateIdeaXmlFile(
113117
project.file(".idea/workspace.xml"), ConfigureJavaFormatterXml::configureWorkspaceXml);
114118

115119
// Still configure legacy idea if using intellij import
116120
updateIdeaXmlFileIfExists(project.file(project.getName() + ".ipr"), node -> {
117121
ConfigureJavaFormatterXml.configureJavaFormat(node, uris, nativeImageUri);
118-
ConfigureJavaFormatterXml.configureExternalDependencies(node, MIN_IDEA_PLUGIN_VERSION);
119122
});
120123
updateIdeaXmlFileIfExists(
121124
project.file(project.getName() + ".iws"), ConfigureJavaFormatterXml::configureWorkspaceXml);

versions.lock

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,14 @@ com.fasterxml.jackson.module:jackson-module-parameter-names:2.18.3 (1 constraint
1515
com.google.auto:auto-common:1.2.1 (2 constraints: b321cc9d)
1616
com.google.auto.service:auto-service:1.1.1 (1 constraints: 0505f435)
1717
com.google.auto.service:auto-service-annotations:1.1.1 (1 constraints: 9c0f6a86)
18-
com.google.code.findbugs:jsr305:3.0.2 (3 constraints: 571ca3f6)
1918
com.google.errorprone:error_prone_annotations:2.36.0 (4 constraints: 4b27bf7b)
20-
com.google.guava:failureaccess:1.0.2 (1 constraints: 150ae2b4)
21-
com.google.guava:guava:33.4.0-jre (8 constraints: 3e85a804)
19+
com.google.guava:failureaccess:1.0.3 (1 constraints: 160ae3b4)
20+
com.google.guava:guava:33.4.8-jre (9 constraints: 5ea13c2f)
2221
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava (1 constraints: bd17c918)
2322
com.google.j2objc:j2objc-annotations:3.0.0 (2 constraints: ee163332)
2423
com.googlecode.concurrent-trees:concurrent-trees:2.6.1 (1 constraints: 761166da)
2524
com.googlecode.javaewah:JavaEWAH:1.2.3 (1 constraints: 460e7e50)
25+
com.palantir.gradle.idea-configuration:gradle-idea-configuration:0.2.0 (1 constraints: 0405f135)
2626
com.palantir.gradle.utils:platform:0.10.0 (1 constraints: 3305233b)
2727
com.squareup.okhttp3:okhttp:4.12.0 (1 constraints: f6093eb3)
2828
com.squareup.okio:okio:3.6.0 (1 constraints: 530c38fd)
@@ -31,7 +31,6 @@ commons-codec:commons-codec:1.16.0 (1 constraints: 780efe5e)
3131
dev.equo.ide:solstice:1.7.5 (1 constraints: 7a1168da)
3232
net.sf.jopt-simple:jopt-simple:5.0.4 (1 constraints: be0ad6cc)
3333
org.apache.commons:commons-math3:3.6.1 (1 constraints: bf0adbcc)
34-
org.checkerframework:checker-qual:3.43.0 (4 constraints: 6734e847)
3534
org.derive4j:derive4j-annotation:1.1.1 (1 constraints: 0505f435)
3635
org.eclipse.jdt:org.eclipse.jdt.core:3.23.0 (1 constraints: 3a05423b)
3736
org.eclipse.jgit:org.eclipse.jgit:6.7.0.202309050840-r (2 constraints: f22a55d9)
@@ -56,6 +55,7 @@ org.jetbrains.kotlin:kotlin-stdlib:1.9.10 (2 constraints: c2210fe1)
5655
org.jetbrains.kotlin:kotlin-stdlib-common:1.9.10 (2 constraints: 3f1b4b83)
5756
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.10 (1 constraints: e210ffd2)
5857
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.10 (2 constraints: 8118c1c5)
58+
org.jspecify:jspecify:1.0.0 (1 constraints: 130ae0b4)
5959
org.openjdk.jmh:jmh-core:1.37 (5 constraints: 52476be6)
6060
org.openjdk.jmh:jmh-generator-annprocess:1.37 (1 constraints: df04fc30)
6161
org.slf4j:slf4j-api:1.7.36 (2 constraints: 801849c0)
@@ -65,6 +65,7 @@ org.tukaani:xz:1.9 (1 constraints: 6b09e995)
6565
cglib:cglib-nodep:3.2.2 (1 constraints: 490ded24)
6666
com.google.auto.value:auto-value:1.10 (1 constraints: e711f8e8)
6767
com.google.auto.value:auto-value-annotations:1.10.4 (1 constraints: 8e0aa3c3)
68+
com.google.code.findbugs:jsr305:3.0.2 (2 constraints: 4112851c)
6869
com.google.guava:guava-testlib:27.0.1-jre (1 constraints: aa067c53)
6970
com.google.testing.compile:compile-testing:0.21.0 (1 constraints: 35052a3b)
7071
com.google.truth:truth:1.4.1 (2 constraints: 1f178e31)
@@ -74,6 +75,7 @@ junit:junit:4.13.2 (7 constraints: da62ac41)
7475
net.bytebuddy:byte-buddy:1.14.11 (1 constraints: 7e0bc5ea)
7576
org.apiguardian:apiguardian-api:1.1.2 (10 constraints: 8fb0f648)
7677
org.assertj:assertj-core:3.25.3 (1 constraints: 3f054b3b)
78+
org.checkerframework:checker-qual:3.42.0 (3 constraints: 1c2a3b96)
7779
org.codehaus.groovy:groovy:3.0.6 (2 constraints: 1e1b476d)
7880
org.graalvm.buildtools:junit-platform-native:0.10.4 (1 constraints: 3705273b)
7981
org.hamcrest:hamcrest:2.2 (1 constraints: d20cdc04)

versions.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,4 @@ com.fasterxml.jackson.*:* = 2.18.3
2222
com.fasterxml.jackson.core:jackson-databind = 2.18.3
2323
org.openjdk.jmh:* = 1.37
2424
com.palantir.gradle.utils:* = 0.10.0
25+
com.palantir.gradle.idea-configuration:gradle-idea-configuration = 0.2.0

0 commit comments

Comments
 (0)