Plex-FAWE/worldedit-core/build.gradle.kts
dordsor21 aa3ae63682
Feature/1.17 (#1120)
* start v6

* Update classes to v6 method signatures

* change rootVersion to signify p2v6 compat

* Use 16 as toolchain version but target 11 for build output

* add minimessage as api

* Require v6 and don't attempt to "setup" hook from FAWE

* Address comments

* *address /all/ comments

* FAWE classes should only act as a delegate

* Uppercase logger

* Settings for v6-hook have moved to P2-v6, remove unneeded if statements

* Rename classes to Delegate

* add whenDone task to setCuboids

* Remove bad spaces

* Fix plot swap

* Initial work on 1.17 support

* Remove data versions from the Bukkit adapters (#1507)

* Remove data versions from the Bukkit adapters

* Don't allow saving schematics without an adapter in place on Bukkit.

* Removed confusing line

(cherry picked from commit 2056218b4a8644836b1d127105dfa289e9cdbc1c)

* More progress

* Fix chunk sending

* Repackage from com.boydti to com.fastasyncworldedit.<module> (#1119)

* Preliminary work on repackaging

* Rename build artifacts matching our pattern

* Finish up repackaging

* Fix a few field accesses and old imports

* Dirty fix for chunks container ChunkSections outside of 0-15

* Correctly read from NibbleArrays for lighting

* Fix getSections and BlockMaterial for 1.17

* Fix writing blocks to the world.
 - The issue isn't the presence of a "-1" chunk, it's the constructor for ChunkSection requiring the layer (0 to 15) rather than the y chord

* Fix more field accesses

* More work towards 1.17

* Update Upstream

a57f66f Fix watchdog, add negative y support. (1782)

* Add azalea tree to `/tool tree`

* Don't define toolchain twice

* Repackage GriefDefender

* Relocate under new namespace

* Bye bye ecma left overs

* Add 1.17 to issue templates and instructions

* Move to adventure-nbt (#918)

* Initial work for adventure-nbt

* Some more FAWE specific stuff

* Fix erroneous deprecation check

* Workflow change

* Continued merging all adventure NBT related changes

* Continued merging all adventure NBT related changes

* Made a constructor public again

This needs to be public for BlockTransformExtent.java

* Finished converting all NBT data to adventure.

* Make this compile

* Fix conflicts

Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>

* Update adapters to 1.17

* Change build prefix to 1.17

* Move more nms classes to adapters

* Move left over nms classes

* Move Spigot 1.17 class

* Remove unneeded adapter loader code
The loader will find the appropriate class now itself

* Update adapters

* Update adapters

* Lazy fix tests

* Update adapters

* Update Upstream

43da91a Remove method reflection for getMinHeight in BukkitWorld. (1796)

* Relocate adventure-nbt under proper namespace

* Add LazyCompoundTag as a non-version-specific class to be used by adapters

* Better integration between old NBT and Adventure NBT - begin fixing the issues seen recently

* Correctly NBT conversion method

* LazyCompoundTags should actually be overriding and correctly returning a CompoundBinaryTag.

* Update worldedit-adapters
Fixes #1141

* Remove unnecessary massive lag machine

* Refactor apply to applyBlock in subclasses

* applyBlock should be overriden by all subclasses.
Default apply to applyBlock

* Closes #1130 Closes #1132

* Squashed commit of the following:

commit a9bfa1a07c77083c844a0c3ba62f4bd94bed107c
Author: NotMyFault <mc.cache@web.de>
Date:   Sun Jun 27 21:53:21 2021 +0200

    [ci skip] Update gradle wrapper validation

commit aa7471f95317d28a16f62e4b200de8d0fea2fa95
Author: Matthew Miller <mnmiller1@me.com>
Date:   Sat Oct 10 15:49:13 2020 +1000

    Add ^x,y,z relative offset support to the offset parser (#1545)

    * Add ^x,y,z relative offset support to the offset parser

    * Wrap in a try-catch

    (cherry picked from commit 28bdf7ff9254bbc85bb4f5f792b303943a3930a8)

* Add `fawe.error.schematic.not.found` translation key

* Update Upstream

728a152 Skip notify if chunk section doesn't exist (1794)

* Fixed #1157

* Add a null check to prevent NPE in nbt code

* Update adapters

* Update Upstream

fbb047a Optimize legacy schematic loading (1808)

* Hurr durr I don't want to update Java

* Update Upstream

0790e6e Fix CLI Mess (1811)

* Fixes #1160

* Expose minimessage transitively thru PlotSquared

Touches #32

* [ci skip] Remove unneeded maven repository

* Steal tab completion from PlotSquared for P2 related commands

* Don't error on startup when building locally

Co-Authored-By: goldfishapp <8278196+goldfishapp@users.noreply.github.com>

* [ci skip] Update gh actions to Java 16

* Update textures to grab 1.17 jar

Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: SirYwell <hannesgreule@outlook.de>
Co-authored-by: Matthew Miller <mnmiller1@me.com>
Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
Co-authored-by: goldfishapp <8278196+goldfishapp@users.noreply.github.com>
2021-07-01 22:16:25 +02:00

113 lines
3.7 KiB
Plaintext

import org.gradle.plugins.ide.idea.model.IdeaModel
plugins {
`java-library`
antlr
}
project.description = "Core"
repositories {
maven {
name = "IntellectualSites"
url = uri("https://mvn.intellectualsites.com/content/groups/public/")
}
maven {
name = "IntellectualSites-Snapshots"
url = uri("https://mvn.intellectualsites.com/content/groups/snapshots/")
}
}
applyPlatformAndCoreConfiguration()
dependencies {
constraints {
implementation( "org.yaml:snakeyaml") {
version { strictly("1.27") }
because("Bukkit provides SnakeYaml")
}
}
api(project(":worldedit-libs:core"))
implementation("de.schlichtherle:truezip:6.8.4")
implementation("org.mozilla:rhino-runtime:1.7.13")
implementation("org.yaml:snakeyaml")
implementation("com.google.guava:guava")
implementation("com.google.code.findbugs:jsr305:3.0.2")
implementation("com.google.code.gson:gson")
implementation("org.apache.logging.log4j:log4j-api:2.8.1") {
because("Mojang provides Log4J 2.8.1")
}
implementation("it.unimi.dsi:fastutil")
compileOnly("net.kyori:adventure-nbt:4.7.0")
testImplementation("net.kyori:adventure-nbt:4.7.0")
val antlrVersion = "4.9.1"
antlr("org.antlr:antlr4:$antlrVersion")
implementation("org.antlr:antlr4-runtime:$antlrVersion")
implementation("com.googlecode.json-simple:json-simple:1.1.1") { isTransitive = false }
compileOnly(project(":worldedit-libs:core:ap"))
annotationProcessor(project(":worldedit-libs:core:ap"))
// ensure this is on the classpath for the AP
annotationProcessor("com.google.guava:guava:21.0")
compileOnly("com.google.auto.value:auto-value-annotations:${Versions.AUTO_VALUE}")
annotationProcessor("com.google.auto.value:auto-value:${Versions.AUTO_VALUE}")
testRuntimeOnly("org.apache.logging.log4j:log4j-core:2.8.1")
implementation("com.github.luben:zstd-jni:1.5.0-2")
compileOnly("net.fabiozumbi12:redprotect:1.9.6")
api("com.github.intellectualsites.plotsquared:PlotSquared-API:4.514") { isTransitive = false }
api("com.plotsquared:PlotSquared-Core:6.0.6-SNAPSHOT")
compileOnlyApi("net.kyori:adventure-api:4.8.0")
compileOnlyApi("net.kyori:adventure-text-minimessage:4.1.0-SNAPSHOT")
api("com.intellectualsites.paster:Paster:1.0.1-SNAPSHOT")
compileOnly("net.jpountz:lz4-java-stream:1.0.0") { isTransitive = false }
compileOnly("org.lz4:lz4-java:1.8.0")
}
tasks.named<Test>("test") {
maxHeapSize = "1G"
}
tasks.withType<JavaCompile>().configureEach {
dependsOn(":worldedit-libs:build")
options.compilerArgs.add("-Aarg.name.key.prefix=")
}
tasks.named<AntlrTask>("generateGrammarSource").configure {
val pkg = "com.sk89q.worldedit.antlr"
outputDirectory = file("build/generated-src/antlr/main/${pkg.replace('.', '/')}")
arguments = listOf(
"-visitor", "-package", pkg,
"-Xexact-output-dir"
)
}
tasks.named("sourcesJar") {
mustRunAfter("generateGrammarSource")
}
// Give intellij info about where ANTLR code comes from
plugins.withId("idea") {
configure<IdeaModel> {
afterEvaluate {
module.sourceDirs.add(file("src/main/antlr"))
module.sourceDirs.add(file("build/generated-src/antlr/main"))
module.generatedSourceDirs.add(file("build/generated-src/antlr/main"))
}
}
}
sourceSets.named("main") {
java {
srcDir("src/legacy/java")
}
}
tasks.named<Copy>("processResources") {
filesMatching("fawe.properties") {
expand("version" to "$version",
"commit" to "${rootProject.ext["revision"]}",
"date" to "${rootProject.ext["date"]}")
}
}