mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2025-04-25 12:13:18 +00:00

Now, hear me out, what if instead of having three @Nullable annotations, we had *four*? I've been wanting to switch away from javax.annoations for a while. The library has been deprecated for ever and, unlike other @Nullable annotations, the annotation is attached to the parameter/function itself, rather than the type. We use JSpecify rather than one of the alternatives (JetBrains, CheckerFramework) mostly because it's what NullAway recommends. We keep CheckerFramework around for @DefaultQualifier, and JB's for @Contract. There are some ugly changes here — for instance, `@Nullable byte[]` is replace by `byte @Nullable`, and `@Nullable ILuaMachine.Factory` is `ILuaMachine.@Nullable Factory`. Ughr, I understand why, but it does not spark joy :).
28 lines
624 B
Plaintext
28 lines
624 B
Plaintext
// SPDX-FileCopyrightText: 2022 The CC: Tweaked Developers
|
|
//
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
plugins {
|
|
id("cc-tweaked.java-convention")
|
|
id("cc-tweaked.publishing")
|
|
id("cc-tweaked")
|
|
}
|
|
|
|
// Due to the slightly circular nature of our API, add the main API jars to the javadoc classpath.
|
|
val docApi by configurations.registering {
|
|
isTransitive = false
|
|
}
|
|
|
|
dependencies {
|
|
compileOnlyApi(libs.bundles.annotations)
|
|
|
|
"docApi"(project(":common-api"))
|
|
}
|
|
|
|
tasks.javadoc {
|
|
// Depend on the common API when publishing javadoc
|
|
classpath += docApi.get()
|
|
}
|
|
|
|
cct.linters(minecraft = false, loader = null)
|