Skip to content

Commit ed1cdcd

Browse files
committed
Leaf 1.21.4
WIP
1 parent e25f393 commit ed1cdcd

File tree

485 files changed

+30114
-30710
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

485 files changed

+30114
-30710
lines changed

.github/workflows/auto-update.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,23 +45,23 @@ jobs:
4545
- name: Grant execute permission for gradlew
4646
run: |
4747
cd Leaf
48-
git config --global user.name "Dreeam"
48+
git config --global user.name "Dreeam-qwq"
4949
git config --global user.email [email protected]
5050
chmod +x gradlew
5151
5252
- uses: actions/setup-java@main
5353
with:
5454
distribution: 'zulu'
55-
java-version: 21
55+
java-version: '21'
5656

5757
- name: Running tests before push
5858
run: |
5959
cd Leaf
6060
if ! git diff --quiet; then
6161
echo "Running tests...."
62-
./gradlew applyPatches
63-
./gradlew createMojmapPaperclipJar
64-
./gradlew rebuildPatches
62+
./gradlew applyAllPatches
63+
./gradlew build
64+
./gradlew rebuildAllServerPatches
6565
fi
6666
6767
- name: Check for changes and write to repository
Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,16 @@
1-
name: Build Leaf 1.21.3
1+
name: Build Leaf 1.21.4
22

33
on:
44
push:
5-
branches: [ "ver/1.21.3" ]
5+
branches: [ "dev/1.21.4" ]
66
pull_request:
7-
branches: [ "ver/1.21.3" ]
7+
branches: [ "ver/1.21.4" ]
88

99
jobs:
1010
build:
1111
runs-on: ubuntu-latest
1212
steps:
1313
- uses: actions/checkout@main
14-
- uses: gradle/actions/wrapper-validation@main
1514
- name: Set up JDK
1615
uses: graalvm/setup-graalvm@main
1716
with:
@@ -33,8 +32,8 @@ jobs:
3332

3433
- name: Rename Paperclip Jar
3534
run: |
36-
mv build/libs/leaf-paperclip-1.21.3-R0.1-SNAPSHOT-mojmap.jar ./leaf-1.21.3-mojmap.jar
37-
mv build/libs/leaf-paperclip-1.21.3-R0.1-SNAPSHOT-reobf.jar ./leaf-1.21.3-reobf.jar
35+
mv leaf-server/build/libs/leaf-paperclip-1.21.4-R0.1-SNAPSHOT-mojmap.jar ./leaf-1.21.4-mojmap.jar
36+
mv leaf-server/build/libs/leaf-paperclip-1.21.4-R0.1-SNAPSHOT-reobf.jar ./leaf-1.21.4-reobf.jar
3837
3938
- name: Publish API
4039
if: github.event_name != 'pull_request'
@@ -44,27 +43,28 @@ jobs:
4443
export REPO_USER=${{ secrets.REPO_USER }}
4544
echo "REPO_PASSWORD=${{ secrets.REPO_PASSWORD }}" >> $GITHUB_ENV
4645
export REPO_PASSWORD=${{ secrets.REPO_PASSWORD }}
47-
./gradlew :leaf-api:publish
48-
./gradlew publishDevBundlePublicationToLeafRepository -PpublishDevBundle=true
46+
./gradlew publish
47+
# TODO
48+
# ./gradlew publishDevBundlePublicationToLeafRepository -PpublishDevBundle=true
4949
5050
- name: Upload Leaf
5151
uses: actions/upload-artifact@main
5252
with:
53-
name: Leaf 1.21.3
54-
path: ./leaf-1.21.3-*.jar
53+
name: Leaf 1.21.4
54+
path: ./leaf-1.21.4-*.jar
5555

56-
- name: Rename Paperclip Jar
56+
- name: Rename Leaf Jar
5757
run: |
58-
mv ./leaf-1.21.3-mojmap.jar ./leaf-1.21.3.jar
58+
mv ./leaf-1.21.4-mojmap.jar ./leaf-1.21.4.jar
5959
6060
# TODO: marvinpinto/action-automatic-releases is archived, need to find new one
6161
# Notes: create releases every time, similar changelogs with this, all commits for changelogs
6262
- name: Release Leaf
6363
if: github.event_name != 'pull_request'
6464
uses: marvinpinto/action-automatic-releases@master
6565
with:
66-
title: "Leaf 1.21.3"
67-
automatic_release_tag: "ver-1.21.3"
66+
title: "Leaf 1.21.4"
67+
automatic_release_tag: "ver-1.21.4"
6868
repo_token: "${{ secrets.GITHUB_TOKEN }}"
69-
files: "./leaf-1.21.3.jar"
70-
prerelease: false
69+
files: "./leaf-1.21.4.jar"
70+
prerelease: true

.gitignore

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,10 @@ build-data
2222
patches/todo
2323
run
2424

25-
Leaf-API
26-
Leaf-MojangAPI
27-
Leaf-Server
28-
paper-api-generator
25+
leaf-api/build.gradle.kts
26+
leaf-server/build.gradle.kts
27+
leaf-server/src/minecraft
28+
gale-api
29+
gale-server
30+
paper-api
31+
paper-server

LICENSE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22

33
Paperweight files are licensed under [MIT](https://opensource.org/licenses/MIT) (included in `license/MIT.txt`).
44
Patches are licensed under MIT, unless indicated differently in their header (some patches are licensed under [GPL-3.0](https://www.gnu.org/licenses/gpl-3.0.html) (included in `license/GPL-3.0.txt`) or [LGPL-3.0](https://www.gnu.org/licenses/lgpl-3.0.html) (included in `license/LGPL-3.0.txt`)).
5-
Binaries are licensed under GPL-3.0.
5+
Binaries are licensed under GPL-3.0.

Leaf-API/build.gradle.kts.patch

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
--- a/gale-api/build.gradle.kts
2+
+++ b/gale-api/build.gradle.kts
3+
@@ -12,8 +_,10 @@
4+
val annotationsVersion = "26.0.1"
5+
val bungeeCordChatVersion = "1.20-R0.2"
6+
val adventureVersion = "4.18.0"
7+
-val slf4jVersion = "2.0.9"
8+
-val log4jVersion = "2.17.1"
9+
+// Leaf start - Bump Dependencies
10+
+val slf4jVersion = "2.0.16"
11+
+val log4jVersion = "2.24.3"
12+
+// Leaf end - Bump Dependencies
13+
14+
val apiAndDocs: Configuration by configurations.creating {
15+
attributes {
16+
@@ -41,9 +_,9 @@
17+
dependencies {
18+
19+
// api dependencies are listed transitively to API consumers
20+
- api("com.google.guava:guava:33.3.1-jre")
21+
+ api("com.google.guava:guava:33.4.0-jre") // Leaf - Bump Dependencies
22+
api("com.google.code.gson:gson:2.11.0")
23+
- api("org.yaml:snakeyaml:2.2")
24+
+ api("org.yaml:snakeyaml:2.3") // Leaf - Bump Dependencies
25+
api("org.joml:joml:1.10.8") {
26+
isTransitive = false // https://github.com/JOML-CI/JOML/issues/352
27+
}
28+
@@ -54,6 +_,7 @@
29+
api("org.apache.logging.log4j:log4j-api:$log4jVersion")
30+
api("org.slf4j:slf4j-api:$slf4jVersion")
31+
api("com.mojang:brigadier:1.3.10")
32+
+ api("io.sentry:sentry:8.0.0-rc.3") // Pufferfish
33+
34+
// Deprecate bungeecord-chat in favor of adventure
35+
api("net.md-5:bungeecord-chat:$bungeeCordChatVersion-deprecated+build.19") {
36+
@@ -68,29 +_,37 @@
37+
apiAndDocs("net.kyori:adventure-text-serializer-plain")
38+
apiAndDocs("net.kyori:adventure-text-logger-slf4j")
39+
40+
- api("org.apache.maven:maven-resolver-provider:3.9.6") // make API dependency for Paper Plugins
41+
- compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.18")
42+
- compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18")
43+
+ // Leaf start - Bump Dependencies
44+
+ api("org.apache.maven:maven-resolver-provider:3.9.9") // make API dependency for Paper Plugins
45+
+ compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.22") // Dreeam TODO - Update to 2.0.1
46+
+ compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.22") // Dreeam TODO - Update to 2.0.1
47+
+ // Leaf start - Bump Dependencies
48+
49+
// Annotations - Slowly migrate to jspecify
50+
val annotations = "org.jetbrains:annotations:$annotationsVersion"
51+
compileOnly(annotations)
52+
testCompileOnly(annotations)
53+
54+
- val checkerQual = "org.checkerframework:checker-qual:3.33.0"
55+
+ val checkerQual = "org.checkerframework:checker-qual:3.48.4" // Leaf - Bump Dependencies
56+
compileOnlyApi(checkerQual)
57+
testCompileOnly(checkerQual)
58+
59+
api("org.jspecify:jspecify:1.0.0")
60+
61+
// Test dependencies
62+
- testImplementation("org.apache.commons:commons-lang3:3.12.0")
63+
- testImplementation("org.junit.jupiter:junit-jupiter:5.10.2")
64+
- testImplementation("org.hamcrest:hamcrest:2.2")
65+
- testImplementation("org.mockito:mockito-core:5.14.1")
66+
+ // Leaf start - Bump Dependencies
67+
+ testImplementation("org.apache.commons:commons-lang3:3.17.0")
68+
+ testImplementation("org.junit.jupiter:junit-jupiter:5.11.4")
69+
+ testImplementation("org.hamcrest:hamcrest:3.0")
70+
+ testImplementation("org.mockito:mockito-core:5.15.2")
71+
testImplementation("org.ow2.asm:asm-tree:9.7.1")
72+
- mockitoAgent("org.mockito:mockito-core:5.14.1") { isTransitive = false } // configure mockito agent that is needed in newer java versions
73+
+ mockitoAgent("org.mockito:mockito-core:5.15.2") { isTransitive = false } // configure mockito agent that is needed in newer java versions
74+
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
75+
+
76+
+ // commons-lang3 is removed in maven-resolver-provider since 3.9.8
77+
+ // Add this because bukkit api still need it.
78+
+ compileOnly("org.apache.commons:commons-lang3:3.17.0")
79+
+ // Leaf end - Bump Dependencies
80+
}
81+
82+
val generatedApiPath: java.nio.file.Path = rootProject.layout.projectDirectory.dir("paper-api/src/generated/java").asFile.toPath() // Gale - project setup
83+
@@ -105,17 +_,21 @@
84+
srcDir(generatedApiPath)
85+
// Gale start - project setup
86+
srcDir(file("../paper-api/src/main/java"))
87+
+ srcDir(file("../gale-api/src/main/java")) // Leaf - project setup
88+
}
89+
resources {
90+
srcDir(file("../paper-api/src/main/resources"))
91+
+ srcDir(file("../gale-api/src/main/resources")) // Leaf - project setup
92+
}
93+
}
94+
test {
95+
java {
96+
srcDir(file("../paper-api/src/test/java"))
97+
+ srcDir(file("../gale-api/src/test/java")) // Leaf - project setup
98+
}
99+
resources {
100+
srcDir(file("../paper-api/src/test/resources"))
101+
+ srcDir(file("../gale-api/src/test/resources")) // Leaf - project setup
102+
// Gale end - project setup
103+
}
104+
}
105+
@@ -203,8 +_,8 @@
106+
options.use()
107+
options.isDocFilesSubDirs = true
108+
options.links(
109+
- "https://guava.dev/releases/33.3.1-jre/api/docs/",
110+
- "https://javadoc.io/doc/org.yaml/snakeyaml/2.2/",
111+
+ "https://guava.dev/releases/33.4.0-jre/api/docs/", // Leaf - Bump Dependencies
112+
+ "https://javadoc.io/doc/org.yaml/snakeyaml/2.3/", // Leaf - Bump Dependencies
113+
"https://javadoc.io/doc/org.jetbrains/annotations/$annotationsVersion/",
114+
"https://javadoc.io/doc/org.joml/joml/1.10.8/",
115+
"https://www.javadoc.io/doc/com.google.code.gson/gson/2.11.0",
116+
@@ -217,8 +_,8 @@
117+
"https://jd.advntr.dev/text-serializer-plain/$adventureVersion/",
118+
"https://jd.advntr.dev/text-logger-slf4j/$adventureVersion/",
119+
"https://javadoc.io/doc/org.slf4j/slf4j-api/$slf4jVersion/",
120+
- "https://javadoc.io/doc/org.apache.logging.log4j/log4j-api/$log4jVersion/",
121+
- "https://javadoc.io/doc/org.apache.maven.resolver/maven-resolver-api/1.7.3",
122+
+ "https://javadoc.io/doc/org.apache.logging.log4j/log4j-api/2.20.0/", // Leaf - Bump Dependencies
123+
+ "https://javadoc.io/doc/org.apache.maven.resolver/maven-resolver-api/1.9.22", // Leaf - Bump Dependencies
124+
)
125+
options.tags("apiNote:a:API Note:")
126+
127+
@@ -276,6 +_,11 @@
128+
jarToScan.set(tasks.jar.flatMap { it.archiveFile })
129+
classpath.from(configurations.compileClasspath)
130+
}
131+
+// Leaf start - Bump Dependencies
132+
+repositories {
133+
+ mavenCentral()
134+
+}
135+
+// Leaf end - Bump Dependencies
136+
tasks.check {
137+
dependsOn(scanJarForOldGeneratedCode)
138+
}

patches/api/0001-Rebrand.patch renamed to Leaf-API/paper-patches/features/0001-Rebrand.patch

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand
55

66

77
diff --git a/src/main/java/io/papermc/paper/ServerBuildInfo.java b/src/main/java/io/papermc/paper/ServerBuildInfo.java
8-
index b68770f6992b044d13e67d9affa6933c90ca8fb8..bef5b7b089f33c8ce1304292804ea56d16e574c9 100644
8+
index b68770f6992b044d13e67d9affa6933c90ca8fb8..184ed5a41a138d14757f12acd4ec3113cb165b72 100644
99
--- a/src/main/java/io/papermc/paper/ServerBuildInfo.java
1010
+++ b/src/main/java/io/papermc/paper/ServerBuildInfo.java
1111
@@ -26,6 +26,17 @@ public interface ServerBuildInfo {
@@ -14,9 +14,9 @@ index b68770f6992b044d13e67d9affa6933c90ca8fb8..bef5b7b089f33c8ce1304292804ea56d
1414

1515
+ // Leaf start
1616
+ /**
17-
+ * The brand id for Purpur.
17+
+ * The brand id for Pufferfish.
1818
+ */
19-
+ Key BRAND_PURPUR_ID = Key.key("purpurmc", "purpur");
19+
+ Key BRAND_PUFFERFISH_ID = Key.key("pufferfish", "pufferfish");
2020
+ /**
2121
+ * The brand id for Leaf.
2222
+ */

patches/api/0002-Leaf-config-files.patch renamed to Leaf-API/paper-patches/features/0002-Leaf-config-files.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ Subject: [PATCH] Leaf config files
55

66

77
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
8-
index a3b84a898210b012d5fbae55f0bb739b5487505c..597b06c2cb289c235ad14009b186aa00f55cefcd 100644
8+
index 2dccd3f72e188a34c9cdf80816aadb0c79351279..331006b854dfe785c567baf8489afaac01a99cd0 100644
99
--- a/src/main/java/org/bukkit/Server.java
1010
+++ b/src/main/java/org/bukkit/Server.java
11-
@@ -2336,6 +2336,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
11+
@@ -2383,6 +2383,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
1212

1313
// Paper end
1414

patches/api/0003-Pufferfish-Sentry.patch renamed to Leaf-API/paper-patches/features/0003-Pufferfish-Sentry.patch

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,6 @@ Subject: [PATCH] Pufferfish: Sentry
66
Original license: GPL v3
77
Original project: https://github.com/pufferfish-gg/Pufferfish
88

9-
diff --git a/build.gradle.kts b/build.gradle.kts
10-
index 3c50294a0a68fd8e9fd4028d41495ad3b9781b1e..5fac022f2373105df7f9cfb292642c4a399c7db4 100644
11-
--- a/build.gradle.kts
12-
+++ b/build.gradle.kts
13-
@@ -64,6 +64,7 @@ dependencies {
14-
apiAndDocs("net.kyori:adventure-text-logger-slf4j")
15-
api("org.apache.logging.log4j:log4j-api:$log4jVersion")
16-
api("org.slf4j:slf4j-api:$slf4jVersion")
17-
+ api("io.sentry:sentry:5.4.0") // Pufferfish
18-
19-
implementation("org.ow2.asm:asm:9.7.1")
20-
implementation("org.ow2.asm:asm-commons:9.7.1")
219
diff --git a/src/main/java/gg/pufferfish/pufferfish/sentry/SentryContext.java b/src/main/java/gg/pufferfish/pufferfish/sentry/SentryContext.java
2210
new file mode 100644
2311
index 0000000000000000000000000000000000000000..c7772aac00f6db664f7a5673bc2585fa025e6aad

0 commit comments

Comments
 (0)