Commit Graph

909 Commits

Author SHA1 Message Date
Andrew Steinborn 8d5f5e48f2 Fix Travis build matrix 2019-07-26 01:36:28 -04:00
Andrew Steinborn 454b3c9bee Add flag to disable native transports 2019-07-26 01:34:21 -04:00
Jamie Campbell 5d37a7f96e 1.14.4 support 2019-07-26 01:34:02 -04:00
Andrew Steinborn d1736bf94c Move from custom HTTP client to Async HTTP Client
The most significant advantage is that Velocity gets a well-tested
HTTP client implementation which also includes a connection pool,
allowing us to avoid the overhead of TCP and TLS handshakes upon each
login.

Unfortunately, Async HTTP Client does not work with the kqueue transport.
Since almost nobody runs a production Velocity server on macOS, we have
decided to remove kqueue support. The benefits that Async HTTP Client
provides outweigh the disadvantages of not having a macOS native transport.
macOS is adequately supported by the normal NIO transport.
2019-07-26 01:29:51 -04:00
Andrew Steinborn 7fde18c9f8 Merge pull request #237 from Minecrell/tca-1.2.0
Update TerminalConsoleAppender to 1.2.0
2019-07-21 12:59:43 -04:00
Minecrell fde5ec36e7 Update TerminalConsoleAppender to 1.2.0
Add log4j.skipJansi to prevent Log4j from initializing a Jansi
terminal. It is redundant because this is handled by TCA and it
will be only active for a few seconds until TCA is loaded.
2019-07-21 16:51:08 +02:00
Andrew Steinborn 2b5b14e4ec Switch to new TCA version and jansi 2019-07-20 14:25:47 -04:00
Andrew Steinborn 6d5bacb262 Minor Netty cleanup 2019-07-20 00:30:44 -04:00
Andrew Steinborn 85e5fb4827 Allow existing players to be kicked from server if in online-mode
Fixes #226
2019-07-19 13:25:04 -04:00
Andrew Steinborn 40c8343494 Help smoke out some internal concurrency issues 2019-07-08 21:28:18 -04:00
Gabik21 3a1b5099c9 Merge branch 'dev/1.1.0' of github.com:VelocityPowered/Velocity 2019-07-06 01:08:21 +02:00
Andrew Steinborn 2671590ad2 Clean up LoginPluginResponse and use DeferredByteBufHolder too 2019-07-05 12:53:17 -04:00
Gabik21 d0ad0fac36 Merge branch 'dev/1.1.0' of github.com:VelocityPowered/Velocity 2019-07-05 10:59:29 +02:00
Andrew Steinborn 8bf9e0e829 Improve backwards-compatibility with 1.0.x due to RawCommand changes 2019-07-04 23:53:04 -04:00
Seppe Volkaerts 6d2e1bf379 Wait for player disconnect events on shutdown. (#229) 2019-07-04 23:49:40 -04:00
Andrew Steinborn a053ab6c34 Remove resource leak detection level setting 2019-07-03 22:46:47 -04:00
Andrew Steinborn fba3bfb0be Forge is confirmed working 2019-07-03 22:45:25 -04:00
Andrew Steinborn 11a86e9bb9 Convert Velocity to use ByteBuf-derived plugin message packets
Only tested with 1.12.2, not 1.13 or Forge
2019-07-03 09:20:32 -04:00
Andrew Steinborn 39c505f6fd Readd missing null check. Fixes #228 2019-07-02 13:25:17 -04:00
Andrew Steinborn a63e905edf Use custom ThreadFactory that does FastThreadLocal wrapping for us
This primarily has the benefit of not giving threads strange names
2019-07-02 09:10:00 -04:00
Andrew Steinborn 190f2fee75 Remove kqueue bug workaround since the issue is now fixed upstream
See https://github.com/netty/netty/pull/9149
2019-07-02 02:36:46 -04:00
Andrew Steinborn 6784df91c7 Update Netty to 4.1.37.Final 2019-07-02 02:32:25 -04:00
Andrew Steinborn dab9c9a382 Use Netty thread factory to take advantage of FastThreadLocal
This should reduce CPU usage slightly.
2019-07-02 02:19:52 -04:00
Andrew Steinborn c0becce276 Remove debug code 2019-07-02 00:33:25 -04:00
Andrew Steinborn 7834acd67f Reduce duplicated code used to support RawCommand. Fixes #227 2019-07-02 00:25:43 -04:00
Gabik21 5c314c9068 Add 1.7 Protocol Support 2019-07-01 08:56:22 +02:00
Andrew Steinborn f0ba7e1eea Add method to check if an entry already exists in the tab list. 2019-07-01 00:07:20 -04:00
Andrew Steinborn 275685f45f Merge branch 'master' into dev/1.1.0
# Conflicts:
#	build.gradle
2019-06-30 23:52:22 -04:00
Andrew Steinborn 226074a0df Add suggestion for reconnecting for "not online-mode" message 2019-06-29 14:35:28 -04:00
Andrew Steinborn a8684ddec5 Bump to 1.0.2-SNAPSHOT for continued development 2019-06-24 21:38:06 -04:00
Andrew Steinborn 904e39b73a Velocity 1.0.1 2019-06-24 21:37:45 -04:00
Andrew Steinborn ed4a431297 Merge pull request #222 from Leymooo/1.14.3
1.14.3
2019-06-24 13:32:26 -04:00
Leymooo de4f5e32dd 1.14.3 2019-06-24 19:37:17 +03:00
Andrew Steinborn 81840abc86 Enforce at least one parameter in CommandManager#register()
The old register method has been deprecated.
2019-06-22 21:13:20 -04:00
Andrew Steinborn ed8209cfd1 Merge branch 'master' into dev/1.1.0 2019-06-22 21:01:46 -04:00
Andrew Steinborn 5a209a098c Fix memory leak in NativeVelocityCipher 2019-06-22 16:03:55 -04:00
Andrew Steinborn a3ce20914f Merge pull request #221 from Leymooo/1.14.3
1.14.3-pre4
2019-06-22 13:00:53 -04:00
Leymooo d0745acde1 1.14.3-pre4 2019-06-22 14:11:47 +03:00
Andrew Steinborn c55ab2c908 Make sure to include the right repo 2019-06-18 07:48:03 -04:00
Andrew Steinborn 8a45074eb2 Include Configurate 2019-06-18 07:45:45 -04:00
Andrew Steinborn 04a23e3622 Introduce raw String-based command API 2019-06-18 00:13:49 -04:00
Andrew Steinborn 42df0fd2ad Mark 1.1.0 as in development 2019-06-17 23:51:17 -04:00
Andrew Steinborn 1fd2bd9ee4 Avoid sending duplicate set latency/gamemode/display name packets 2019-06-15 17:08:05 -04:00
kashike 335c34a679 Explicity bind the main plugin class in the singleton scope 2019-06-14 01:06:08 -07:00
Andrew Steinborn 57c8c07c9d Bump to 1.0.1-SNAPSHOT for continued development 2019-06-12 18:14:44 -04:00
Andrew Steinborn d7e4e20c76 This is Velocity 1.0.0 2019-06-12 18:10:33 -04:00
Andrew Steinborn cc6d060fc5 Clarify error message 2019-06-12 00:43:30 -04:00
Andrew Steinborn 5fa5d9567d Remove unused NativeConstants 2019-06-11 02:05:54 -04:00
Andrew Steinborn ec32def592 Take advantage of pooled ByteBufs in Java cipher
ByteBufs are pooled in Velocity, so we can achieve lower memory usage
by using what Netty is going to provide to us for free.
2019-06-11 02:04:38 -04:00
Andrew Steinborn b0736548a9 Strengthen check in JavaVelocityCompressor 2019-06-09 04:43:24 -04:00