mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-02 17:32:03 +01:00
238ab72fce
Minecraft's Netty version was severely out of date. There has been numerous security fixes, bug fixes, and likely performance fixes since the version Minecraft uses (4.1.25). This fixes some known issues with "Closed Channel" spam. Fixes #3388
216 lines
11 KiB
Diff
216 lines
11 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Zach Brown <1254957+zachbr@users.noreply.github.com>
|
|
Date: Mon, 29 Feb 2016 20:40:33 -0600
|
|
Subject: [PATCH] POM Changes
|
|
|
|
|
|
diff --git a/pom.xml b/pom.xml
|
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
|
--- a/pom.xml
|
|
+++ b/pom.xml
|
|
@@ -0,0 +0,0 @@
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
- <groupId>org.spigotmc</groupId>
|
|
- <artifactId>spigot</artifactId>
|
|
+ <artifactId>paper</artifactId>
|
|
<packaging>jar</packaging>
|
|
<version>1.15.2-R0.1-SNAPSHOT</version>
|
|
- <name>Spigot</name>
|
|
- <url>https://www.spigotmc.org/</url>
|
|
+ <name>Paper</name>
|
|
+ <url>https://papermc.io</url>
|
|
|
|
<properties>
|
|
- <skipTests>true</skipTests>
|
|
+ <!-- <skipTests>true</skipTests> Paper - This [was] not going to end well -->
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<api.version>unknown</api.version>
|
|
<minecraft.version>1.15.2</minecraft.version>
|
|
@@ -0,0 +0,0 @@
|
|
</properties>
|
|
|
|
<parent>
|
|
- <groupId>org.spigotmc</groupId>
|
|
- <artifactId>spigot-parent</artifactId>
|
|
+ <groupId>com.destroystokyo.paper</groupId>
|
|
+ <artifactId>paper-parent</artifactId>
|
|
<version>dev-SNAPSHOT</version>
|
|
<relativePath>../pom.xml</relativePath>
|
|
</parent>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
- <groupId>org.spigotmc</groupId>
|
|
- <artifactId>spigot-api</artifactId>
|
|
+ <groupId>com.destroystokyo.paper</groupId>
|
|
+ <artifactId>paper-api</artifactId>
|
|
+ <version>${project.version}</version>
|
|
+ <scope>compile</scope>
|
|
+ </dependency>
|
|
+ <dependency>
|
|
+ <groupId>com.destroystokyo.paper</groupId>
|
|
+ <artifactId>paper-mojangapi</artifactId>
|
|
<version>${project.version}</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
@@ -0,0 +0,0 @@
|
|
<version>7.3.1</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
+ <dependency>
|
|
+ <!-- wrapper to use either java 8 sun cleaner or java9+ official cleaner -->
|
|
+ <groupId>co.aikar</groupId>
|
|
+ <artifactId>cleaner</artifactId>
|
|
+ <version>1.0-SNAPSHOT</version>
|
|
+ </dependency>
|
|
+ <dependency>
|
|
+ <groupId>io.netty</groupId>
|
|
+ <artifactId>netty-all</artifactId>
|
|
+ <version>4.1.51.Final-SNAPSHOT</version>
|
|
+ </dependency>
|
|
<!-- deprecated API depend -->
|
|
<dependency>
|
|
<groupId>com.googlecode.json-simple</groupId>
|
|
@@ -0,0 +0,0 @@
|
|
|
|
<!-- This builds a completely 'ready to start' jar with all dependencies inside -->
|
|
<build>
|
|
+ <finalName>paper-${minecraft.version}</finalName>
|
|
+ <defaultGoal>clean install</defaultGoal> <!-- Paper -->
|
|
<plugins>
|
|
<plugin>
|
|
- <groupId>net.md-5</groupId>
|
|
- <artifactId>scriptus</artifactId>
|
|
- <version>0.4.1</version>
|
|
+ <groupId>com.lukegb.mojo</groupId>
|
|
+ <artifactId>gitdescribe-maven-plugin</artifactId>
|
|
+ <version>1.3</version>
|
|
+ <configuration>
|
|
+ <outputPrefix>git-Paper-</outputPrefix>
|
|
+ <scmDirectory>..</scmDirectory>
|
|
+ </configuration>
|
|
<executions>
|
|
<execution>
|
|
- <id>ex-spigot</id>
|
|
- <configuration>
|
|
- <format>git-Spigot-%s</format>
|
|
- <scmDirectory>../</scmDirectory>
|
|
- <descriptionProperty>spigot.desc</descriptionProperty>
|
|
- </configuration>
|
|
- <phase>initialize</phase>
|
|
+ <phase>compile</phase>
|
|
<goals>
|
|
- <goal>describe</goal>
|
|
- </goals>
|
|
- </execution>
|
|
- <execution>
|
|
- <id>ex-craftbukkit</id>
|
|
- <configuration>
|
|
- <format>-%s</format>
|
|
- <scmDirectory>../../CraftBukkit</scmDirectory>
|
|
- <descriptionProperty>craftbukkit.desc</descriptionProperty>
|
|
- </configuration>
|
|
- <phase>initialize</phase>
|
|
- <goals>
|
|
- <goal>describe</goal>
|
|
+ <goal>gitdescribe</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
@@ -0,0 +0,0 @@
|
|
<artifactId>maven-jar-plugin</artifactId>
|
|
<version>3.2.0</version>
|
|
<configuration>
|
|
+ <forceCreation>true</forceCreation> <!-- Required to prevent shading the jar multiple times -->
|
|
<archive>
|
|
<manifest>
|
|
<addDefaultEntries>false</addDefaultEntries>
|
|
@@ -0,0 +0,0 @@
|
|
<manifestEntries>
|
|
<Main-Class>org.bukkit.craftbukkit.Main</Main-Class>
|
|
<Implementation-Title>CraftBukkit</Implementation-Title>
|
|
- <Implementation-Version>${spigot.desc}${craftbukkit.desc}</Implementation-Version>
|
|
- <Implementation-Vendor>${project.build.outputTimestamp}</Implementation-Vendor>
|
|
+ <!--suppress MavenModelInspection -->
|
|
+ <Implementation-Version>${describe}</Implementation-Version>
|
|
+ <Implementation-Vendor>${maven.build.timestamp}</Implementation-Vendor>
|
|
<Specification-Title>Bukkit</Specification-Title>
|
|
<Specification-Version>${api.version}</Specification-Version>
|
|
<Specification-Vendor>Bukkit Team</Specification-Vendor>
|
|
@@ -0,0 +0,0 @@
|
|
<goal>shade</goal>
|
|
</goals>
|
|
<configuration>
|
|
+ <dependencyReducedPomLocation>${project.build.directory}/dependency-reduced-pom.xml</dependencyReducedPomLocation> <!-- Paper -->
|
|
<createSourcesJar>${shadeSourcesJar}</createSourcesJar>
|
|
<filters>
|
|
<filter>
|
|
@@ -0,0 +0,0 @@
|
|
<exclude>com/google/common/**</exclude>
|
|
<exclude>com/google/gson/**</exclude>
|
|
<exclude>com/google/thirdparty/**</exclude>
|
|
+ <!-- paper -->
|
|
+ <exclude>io/netty/**</exclude>
|
|
+ <exclude>com/brigadier/**</exclude>
|
|
+ <exclude>META-INF/MANIFEST.MF</exclude>
|
|
+ <exclude>com.mojang.authlib.yggdrasil.YggdrasilGameProfileRepository</exclude>
|
|
+ <exclude>com.mojang.datafixers.util.Either</exclude>
|
|
+ <exclude>org.apache.logging.log4j/**</exclude>
|
|
</excludes>
|
|
</filter>
|
|
</filters>
|
|
@@ -0,0 +0,0 @@
|
|
<pattern>jline</pattern>
|
|
<shadedPattern>org.bukkit.craftbukkit.libs.jline</shadedPattern>
|
|
</relocation>
|
|
- <relocation>
|
|
- <pattern>it.unimi</pattern>
|
|
- <shadedPattern>org.bukkit.craftbukkit.libs.it.unimi</shadedPattern>
|
|
- </relocation>
|
|
+ <!-- Paper - Don't relocate fastutil in order to prevent api breakage -->
|
|
+ <!--<relocation>-->
|
|
+ <!--<pattern>it.unimi</pattern>-->
|
|
+ <!--<shadedPattern>org.bukkit.craftbukkit.libs.it.unimi</shadedPattern>-->
|
|
+ <!--</relocation>-->
|
|
<relocation>
|
|
<pattern>org.apache.commons.codec</pattern>
|
|
<shadedPattern>org.bukkit.craftbukkit.libs.org.apache.commons.codec</shadedPattern>
|
|
@@ -0,0 +0,0 @@
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.8.1</version>
|
|
- <configuration>
|
|
- <!-- we use the Eclipse compiler as it doesn't need a JDK -->
|
|
- <compilerId>eclipse</compilerId>
|
|
- </configuration>
|
|
<dependencies>
|
|
<!-- we need our custom version as it fixes some bugs on case sensitive file systems -->
|
|
<dependency>
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
|
@@ -0,0 +0,0 @@ public class Main {
|
|
}
|
|
|
|
if (Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) {
|
|
- Date buildDate = new Date(Integer.parseInt(Main.class.getPackage().getImplementationVendor()) * 1000L);
|
|
+ Date buildDate = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").parse(Main.class.getPackage().getImplementationVendor()); // Paper
|
|
|
|
Calendar deadline = Calendar.getInstance();
|
|
deadline.add(Calendar.DAY_OF_YEAR, -21);
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
|
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
|
|
@@ -0,0 +0,0 @@ public final class Versioning {
|
|
public static String getBukkitVersion() {
|
|
String result = "Unknown-Version";
|
|
|
|
- InputStream stream = Bukkit.class.getClassLoader().getResourceAsStream("META-INF/maven/org.spigotmc/spigot-api/pom.properties");
|
|
+ InputStream stream = Bukkit.class.getClassLoader().getResourceAsStream("META-INF/maven/com.destroystokyo.paper/paper-api/pom.properties");
|
|
Properties properties = new Properties();
|
|
|
|
if (stream != null) {
|