Skip to content

Commit cbe62f5

Browse files
committed
build: Use JetBrains annotations for nullability
While these are less featured than checker-qual, the annotations are a smaller download and release less frequently, so users are more likely to have the correct version cached locally through use in Sponge.
1 parent 8374bfa commit cbe62f5

File tree

8 files changed

+25
-21
lines changed

8 files changed

+25
-21
lines changed

build.gradle.kts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -58,14 +58,9 @@ subprojects {
5858
}
5959
}
6060

61-
repositories {
62-
maven("https://repo.spongepowered.org/repository/maven-public/") {
63-
name = "sponge"
64-
}
65-
}
6661

6762
dependencies {
68-
"compileOnlyApi"("org.checkerframework:checker-qual:3.24.0")
63+
"compileOnlyApi"("org.jetbrains:annotations:23.0.0")
6964
}
7065

7166
val indraGit = extensions.getByType(net.kyori.indra.git.IndraGitExtension::class)

convention/src/main/groovy/org/spongepowered/gradle/convention/SpongeConventionPlugin.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,6 @@
3131
import net.kyori.indra.git.IndraGitExtension;
3232
import net.kyori.indra.licenser.spotless.IndraSpotlessLicenserExtension;
3333
import net.kyori.indra.licenser.spotless.IndraSpotlessLicenserPlugin;
34-
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
35-
import org.checkerframework.checker.nullness.qual.Nullable;
3634
import org.gradle.api.GradleException;
3735
import org.gradle.api.Plugin;
3836
import org.gradle.api.Project;
@@ -55,6 +53,8 @@
5553
import org.gradle.plugins.signing.SigningExtension;
5654
import org.gradle.plugins.signing.SigningPlugin;
5755
import org.gradle.plugins.signing.signatory.pgp.PgpSignatoryProvider;
56+
import org.jetbrains.annotations.Nullable;
57+
import org.jetbrains.annotations.UnknownNullability;
5858
import org.spongepowered.gradle.convention.task.SignJarTask;
5959

6060
import java.io.BufferedReader;
@@ -78,7 +78,7 @@ public abstract class SpongeConventionPlugin implements Plugin<Project> {
7878

7979
private static final String DISABLE_CADIX_LICENSER = "sponge.disableLicenser";
8080

81-
private @MonotonicNonNull Project project;
81+
private @UnknownNullability Project project;
8282

8383
@Override
8484
public void apply(final Project target) {

plugin-development/build.gradle.kts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
dependencies {
2-
implementation("org.spongepowered:plugin-meta:0.8.0")
2+
implementation("org.spongepowered:plugin-meta:0.8.0") {
3+
exclude(group = "org.checkerframework", module = "checker-qual")
4+
}
35
// implementation("org.spongepowered:vanillagradle:0.2-SNAPSHOT")
46
// implementation("gradle.plugin.org.jetbrains.gradle.plugin.idea-ext:gradle-idea-ext:0.10")
57
}

plugin-development/src/main/java/org/spongepowered/gradle/plugin/SpongePluginGradle.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,6 @@
2424
*/
2525
package org.spongepowered.gradle.plugin;
2626

27-
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
28-
import org.checkerframework.checker.nullness.qual.NonNull;
2927
import org.gradle.api.Action;
3028
import org.gradle.api.GradleException;
3129
import org.gradle.api.NamedDomainObjectProvider;
@@ -52,6 +50,8 @@
5250
import org.gradle.api.tasks.TaskProvider;
5351
import org.gradle.api.tasks.bundling.AbstractArchiveTask;
5452
import org.gradle.process.CommandLineArgumentProvider;
53+
import org.jetbrains.annotations.NotNull;
54+
import org.jetbrains.annotations.UnknownNullability;
5555
import org.spongepowered.gradle.common.Constants;
5656
import org.spongepowered.gradle.common.SpongePlatform;
5757
import org.spongepowered.gradle.plugin.config.PluginConfiguration;
@@ -64,10 +64,10 @@
6464

6565
public final class SpongePluginGradle implements Plugin<Object> {
6666

67-
private @MonotonicNonNull Project project;
67+
private @UnknownNullability Project project;
6868

6969
@Override
70-
public void apply(final @NonNull Object target) {
70+
public void apply(final @NotNull Object target) {
7171
if (target instanceof Project) {
7272
this.applyToProject((Project) target);
7373
} else if (target instanceof Settings) {

plugin-development/src/main/java/org/spongepowered/gradle/plugin/SpongeVersioningMetadataRule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@
2424
*/
2525
package org.spongepowered.gradle.plugin;
2626

27-
import org.checkerframework.checker.nullness.qual.Nullable;
2827
import org.gradle.api.artifacts.CacheableRule;
2928
import org.gradle.api.artifacts.ComponentMetadataContext;
3029
import org.gradle.api.artifacts.ComponentMetadataDetails;
3130
import org.gradle.api.artifacts.ComponentMetadataRule;
3231
import org.gradle.api.attributes.Attribute;
3332
import org.gradle.api.attributes.AttributeContainer;
33+
import org.jetbrains.annotations.Nullable;
3434

3535
import java.util.Arrays;
3636
import java.util.Collections;

repository/src/main/java/org/spongepowered/gradle/repository/RepositoryPlugin.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,19 +24,19 @@
2424
*/
2525
package org.spongepowered.gradle.repository;
2626

27-
import org.checkerframework.checker.nullness.qual.NonNull;
2827
import org.gradle.api.GradleException;
2928
import org.gradle.api.Plugin;
3029
import org.gradle.api.Project;
3130
import org.gradle.api.artifacts.dsl.RepositoryHandler;
3231
import org.gradle.api.initialization.Settings;
3332
import org.gradle.api.invocation.Gradle;
3433
import org.gradle.api.plugins.ExtensionAware;
34+
import org.jetbrains.annotations.NotNull;
3535

3636
public class RepositoryPlugin implements Plugin<Object> {
3737

3838
@Override
39-
public void apply(final @NonNull Object target) {
39+
public void apply(final @NotNull Object target) {
4040
if (target instanceof Project) {
4141
this.applyToProject((Project) target);
4242
} else if (target instanceof Settings) {

repository/src/main/java/org/spongepowered/gradle/repository/SpongeRepositoryExtension.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@
2626

2727
import static java.util.Objects.requireNonNull;
2828

29-
import org.checkerframework.checker.nullness.qual.NonNull;
3029
import org.gradle.api.Action;
3130
import org.gradle.api.artifacts.repositories.MavenArtifactRepository;
31+
import org.jetbrains.annotations.NotNull;
3232

3333
/**
3434
* Extension for configuring Sponge's repositories.
@@ -50,7 +50,7 @@ public interface SpongeRepositoryExtension {
5050
* @return the created repository
5151
* @since 2.1.0
5252
*/
53-
default MavenArtifactRepository all(final @NonNull Action<MavenArtifactRepository> extraConfig) {
53+
default MavenArtifactRepository all(final @NotNull Action<MavenArtifactRepository> extraConfig) {
5454
final MavenArtifactRepository ret = all();
5555
requireNonNull(extraConfig, "extraConfig").execute(ret);
5656
return ret;
@@ -71,7 +71,7 @@ default MavenArtifactRepository all(final @NonNull Action<MavenArtifactRepositor
7171
* @return the created repository
7272
* @since 2.1.0
7373
*/
74-
default MavenArtifactRepository releases(final @NonNull Action<MavenArtifactRepository> extraConfig) {
74+
default MavenArtifactRepository releases(final @NotNull Action<MavenArtifactRepository> extraConfig) {
7575
final MavenArtifactRepository ret = releases();
7676
requireNonNull(extraConfig, "extraConfig").execute(ret);
7777
return ret;
@@ -92,7 +92,7 @@ default MavenArtifactRepository releases(final @NonNull Action<MavenArtifactRepo
9292
* @return the created repository
9393
* @since 2.1.0
9494
*/
95-
default MavenArtifactRepository snapshots(final @NonNull Action<MavenArtifactRepository> extraConfig) {
95+
default MavenArtifactRepository snapshots(final @NotNull Action<MavenArtifactRepository> extraConfig) {
9696
final MavenArtifactRepository ret = snapshots();
9797
requireNonNull(extraConfig, "extraConfig").execute(ret);
9898
return ret;

settings.gradle.kts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,13 @@ pluginManagement {
1616
}
1717
}
1818

19+
dependencyResolutionManagement {
20+
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
21+
repositories {
22+
pluginManagement.repositories.forEach { add(it) }
23+
}
24+
}
25+
1926
rootProject.name = "SpongeGradle"
2027

2128
sequenceOf("convention", "plugin-development", "repository", "testlib").forEach {

0 commit comments

Comments
 (0)