High performance Spigot fork that aims to fix gameplay and mechanics inconsistencies https://papermc.io/
Find a file
Aikar 5228a4f24c
Remove deadlock risk in firing async events
The PluginManager incorrectly used synchronization on firing any event
that was marked as synchronous.

This synchronized did not even protect any concurrency risk as
handlers were already thread safe in terms of mutations during event
dispatch.

The way it was used, has commonly led to deadlocks on the server,
which results in a hard crash.

This change removes the synchronize and adds some protection around enable/disable
2018-09-09 01:04:59 -04:00
.github/ISSUE_TEMPLATE [CI-SKIP] Add newlines in templates for readability 2018-05-22 16:37:23 -05:00
licenses [CI-SKIP] Clarify project licensing 2018-03-06 20:41:03 -05:00
scripts Improve death events (#1362) 2018-09-07 20:14:48 -04:00
Spigot-API-Patches Remove deadlock risk in firing async events 2018-09-09 01:04:59 -04:00
Spigot-Server-Patches Remove deadlock risk in firing async events 2018-09-09 01:04:59 -04:00
work Pull the last upstream updates 2018-08-31 11:51:41 -04:00
.editorconfig [CI-SKIP] add .editorconfig for base code style settings 2018-08-07 01:14:22 -04:00
.gitignore [CI-SKIP] macOS filesystem dust made it past gitignore! 2018-03-13 18:43:13 -04:00
.gitmodules Cleanup and restructure the project 2016-04-01 23:15:41 -05:00
.travis.yml Move mc decompile source to its own folder 2017-08-12 18:56:59 -05:00
CONTRIBUTING.md Add file import and patch notes to CONTRIBUTING.md 2018-01-24 22:47:00 -05:00
LICENSE.md Cached, local-class-supporting task names (#1409) 2018-09-03 10:04:50 -04:00
paper Properly forward exit 1 code from the paper root command 2018-07-30 17:37:24 -04:00
pom.xml Update URLs 2018-05-19 01:29:05 -05:00
README.md Update URLs 2018-05-19 01:29:05 -05:00

Paper Build Status

High performance Spigot fork that aims to fix gameplay and mechanics inconsistencies.

IRC Support and Project Discussion

Discord

Documentation

Access the Paper docs here: paper.readthedocs.io
Access the Paper API javadocs here: destroystokyo.com/javadocs

How To (Server Admins)

Paperclip is a jar file that you can download and run just like a normal jar file.

Download a copy of paperclip.jar from our build server, here.

Run the Paperclip jar directly from your server. Just like old times

Paper requires Java 8 or above.

How To (Compiling Jar From Source)

To compile Paper, you need JDK 8, maven, and an internet connection.

Clone this repo, run ./paper jar from bash, get files.

How To (Pull Request)

See Contributing

Special Thanks To:

YourKit-Logo

YourKit, makers of the outstanding java profiler, support open source projects of all kinds with their full featured Java and .NET application profilers. We thank them for granting Paper an OSS license so that we can make our software the best it can be.