Commit Graph

911 Commits

Author SHA1 Message Date
Minecrell c4553b3936 Disable logger prefix for various plugins bypassing the plugin logger
Some plugins bypass the plugin logger and add the plugin prefix
manually to the log message. Since they use other logger names
(e.g. qualified class names) these would now also appear in the
log. Disable the logger prefix for these plugins so the messages
show up correctly.
2017-09-22 09:47:01 +02:00
Minecrell a64c8c70da Allow plugins to use SLF4J for logging
SLF4J is a commonly used abstraction for various logging frameworks
such as java.util.logging (JUL) or Log4j. Currently, plugins are
required to do all their logging using the provided JUL logger.
This is annoying for plugins that target multiple platforms or when
using libraries that log messages using SLF4J.

Expose SLF4J as optional logging API for plugins, so they can use
it without having to shade it in the plugin and going through
several layers of logging abstraction.
2017-09-21 16:34:36 +02:00
Minecrell 57d987e936 Handle plugin prefixes in Log4j configuration 2017-09-21 16:18:30 +02:00
Minecrell 8556beee8c Use Log4j IOStreams to redirect System.out/err to logger
Log4j2 provides an optimized implementation of PrintStream that
redirects its output to a logger. Use it instead of a custom
implementation for minor performance improvements and some fixes.

With the old implementation, each call to System.print()
results in a separate line, even though it should not result in
a line break. Log4j's implementation handles it correctly.
2017-09-18 12:07:47 +02:00
Minecrell 03891a7fe5 Update TerminalConsoleAppender to 1.0.0 (updates JLine)
Fixes #879
2017-09-23 19:57:16 +02:00
Riley Park 041250dfb9 Avoid NPE in AdvancementDataWorld thanks to Spigot being dumb 2017-09-21 07:01:40 -07:00
Zach Brown 7be477c2cc Update upstream CB
Fixes GH-887
2017-09-18 22:01:43 -04:00
Aikar 68b6b07086 World can be null for sign conversion, fixes #886 2017-09-18 21:03:45 -04:00
Riley Park d5dcfbc32d Avoid NPE during CraftBlockEntityState load 2017-09-18 13:39:40 -07:00
Shane Freeder 5ce5ef1c9f Update to 1.12.2, May the Tacos be with you 2017-09-18 12:04:01 +01:00
Shane Freeder 9f7b45a945 Update CB, refactor 0229-Fix-this-stupid-bullshit
Refactored 0229-Fix-this-stupid-bullshit in order to prevent merge conflicts
when spigot decides to update the timer and to provide some form of hint in the
console/log on startup.
2017-09-15 15:37:05 +01:00
Zach Brown fe190b78a1 Fix race condition with chunks, dead tile entities
Fixes PaperMC/Paper#883 same issue as MinecraftForge/MinecraftForge#4386

A more detailed anaylsis of what is probably going on, courtesy of
@bs2609 and the MCForge Issue Tracker is:

When a chunk is unloaded, the entities and tile entities it contains are
marked for removal. The actual removal (from the world) occurs later,
when the world ticks its entities.
Conversely, when a chunk is loaded, it generally adds its entities to
the world promptly, without queuing.

Here's the normal sequence of events:

Chunk unloaded
Old entities removed
Chunk loaded
New entities added

However, what can happen:

Chunk unloaded
Chunk loaded
New entities added
Old entities removed

This occurs when an unloaded chunk is reloaded before its corresponding
entities have been removed.
2017-09-11 22:21:57 -04:00
Zach Brown 4424c3dec9 Rebuild patches 2017-09-06 22:59:08 -04:00
Shane Freeder ada06c9e99 Rebuild patches 2017-09-03 01:09:35 +01:00
BillyGalbreath 8fc7933953 LivingEntity#setKiller 2017-08-24 15:18:41 -04:00
Riley Park cc7b5ac739 Allow specifying a custom "authentication servers down" kick message
Thanks to @phenomax in #855
2017-08-17 16:13:22 -07:00
Shane Freeder 7fc4d26c3f Update CB 2017-08-16 16:47:06 +01:00
Shane Freeder a6eb798352 Update S 2017-08-12 22:32:01 +01:00
Zach Brown 7a01df109a Merge pull request #853 from Brokkonaut/dragon-egg-falling
I forgot the // Paper comment
2017-08-11 21:39:54 -05:00
Brokkonaut db39b99f26 I forgot the // Paper comment 2017-08-12 02:23:35 +02:00
Zach Brown 73f04c4828 Don't let Player#getLocale return null
Thanks for reporting @MatrixTunnel
2017-08-11 18:16:00 -05:00
Zach Brown e70452db81 Remove null values in TileEntity tick list
Because who wouldn't want to tick a null tile entity right?
Fixes GH-851
2017-08-11 17:59:44 -05:00
Shane Freeder 4bf6691021 Update CB 2017-08-11 12:02:53 +01:00
Brokkonaut 3c154072d3 MC-94186 Fix dragon egg falling in lazy chunks
Fixes falling dragon eggs in lazy chunks fall to the block below the last empty block and replacing that block with them.

See also https://bugs.mojang.com/browse/MC-94186
2017-08-11 03:32:07 +02:00
Zach Brown b8cda19a77 Fix MC-117075: TE Unload Lag Spike
PaperMC port of https://github.com/MinecraftForge/MinecraftForge/pull/4281
2017-08-09 18:11:57 -05:00
Shane Freeder fbeadaefff Update CB (#846) 2017-08-09 19:44:28 +01:00
BillyGalbreath 19afa58c90 Ocelot despawns should honor nametags and leash (#821) 2017-08-07 22:26:44 -05:00
BillyGalbreath 568f82f3f8 Reset spawner timer when spawner event is cancelled (#819) 2017-08-07 22:25:59 -05:00
chickeneer 0e9f94b07a Fix Nether Portal Creation on cancelled event
Spigot is manipulating the Travel Agents canCreatePortal, but forgot to reset it on cancel

This causes nether portals to not be generated if the event is ever cancelled
2017-08-07 23:08:50 -04:00
Aikar 64b2b87256 Upstream update 2017-08-07 23:05:16 -04:00
DemonWav 2b47debe1e Fix this stupid bullshit 2017-08-06 17:18:20 -05:00
Shane Freeder 23d7d25afe fix construction order in CraftBanner 2017-08-06 16:36:48 +01:00
Shane Freeder 2c4293b0f6 Update B/CB/S 2017-08-05 23:36:47 +01:00
Zach Brown 04e2290f72 Update upstream CB 2017-08-04 22:10:30 -05:00
Minecrell b0f800f0e2 Update JLine to 3.4.0. Fixes #736 2017-08-04 09:15:09 +02:00
BlackHole 01d1cc351b Update to 1.12.1 2017-08-03 16:36:06 +02:00
Aikar 489fda430a Update Upstream 2017-07-30 18:41:08 -04:00
Shane Freeder fe649493e3 Update B/CB 2017-07-28 14:45:16 +01:00
Aikar b4131ee68f Further refine logic 2017-07-28 00:04:01 -04:00
Aikar 8ff15ca2af ProfileWhitelistVerifyEvent
Fires when the server is validating if a player is whitelisted.

Allows you to do dynamic whitelisting and change of kick message
2017-07-27 23:39:31 -04:00
Zach Brown 60d5c10c1c There is no reason to continue if we DC a player during shutdown
Thanks Ice
2017-07-27 21:38:25 -05:00
Aikar 8d26bacb73 Fix a bug in recipe books that prevented them from working as they should 2017-07-27 03:13:13 -04:00
Aikar 89ff242bd4 Remove use of FastUtil for unload queue, very bad performance 2017-07-27 00:25:13 -04:00
Aikar 337e7791a6 Resolves GH-806: Respect saving disabled before unloading all chunks in a world
This behavior causes a save to occur even though saving was supposed to be turned off.

It's triggered when Hell/End worlds are empty of players.
2017-07-27 00:09:24 -04:00
Aikar 5495450456 Add getI18NDisplayName API
Gets the Display name as seen in the Client.
Currently the server only supports the English language. To override this,
You must replace the language file embedded in the server jar.
2017-07-26 23:44:09 -04:00
Aikar 5617a28291 Implement ensureServerConversions API
This will take a Bukkit ItemStack and run it through any conversions a server process would perform on it,
to ensure it meets latest minecraft expectations.
2017-07-26 23:40:49 -04:00
Aikar cab448bd32 Improve the Saddle API for Horses
Not all horses with Saddles have armor. This lets us break up the horses with saddles
and access their saddle state separately from an interface shared with Armor.
2017-07-26 23:31:58 -04:00
Shane Freeder cdcfbbe285 Add missing coverages for getTileEntity in order to attempt to avoid exeptions when calling getTileEntity (#797) 2017-07-27 04:11:09 +01:00
willies952002 e021202107 Allow Changing of Player Sample in ServerListPingEvent 2017-07-20 18:59:51 -04:00
Zach Brown 160d1ee3f1 JDK-8176055: Fix heap dumps on Java 8u141+
In Java 8u141 (1.8.0_141-b15) and newer, the
com.sun.management.HotSpotDiagnostic::dumpHeap API has changed and now
requires all heap dumps to end with the .hprof file extension.

Before this change, servers running 8u141 would be unable to perform a
heap dump.

For more information, please see the official release notes of Java 8
Update 141, linked below.
http://www.oracle.com/technetwork/java/javase/8u141-relnotes-3720385.html
2017-07-26 20:28:56 -05:00