3
0
Mirror von https://github.com/PaperMC/Velocity.git synchronisiert 2024-11-17 13:30:17 +01:00
Commit graph

1139 Commits

Autor SHA1 Nachricht Datum
Andrew Steinborn
063a208f5f Convert ClientboundLoginPluginMessagePacket encoding to PacketWriter 2021-05-27 16:26:09 -04:00
Seppe Volkaerts
c30575ec44 Simplify EventTask. Add custom handler support.
Additionally support for continuation adapters (will be used by the kotlin language plugin).
2021-05-19 19:16:46 +02:00
Andrew Steinborn
0ddadc90e2 Demonize legacy formatting completely.
Velocity has always supported components from day 1. It's time to officially frown upon legacy formatting for good.
2021-05-18 12:09:35 -04:00
Seppe Volkaerts
404936a53f Fix bStats error when starting in dev. 2021-05-17 23:29:40 +02:00
Andrew Steinborn
9efda3d42d Merge branch 'l10n_dev/2.0.0' into dev/2.0.0
# Conflicts:
#	proxy/src/main/resources/com/velocitypowered/proxy/l10n/messages_fi_FI.properties
#	proxy/src/main/resources/com/velocitypowered/proxy/l10n/messages_nl_NL.properties
#	proxy/src/main/resources/com/velocitypowered/proxy/l10n/messages_ru_RU.properties
2021-05-16 03:14:03 -04:00
Andrew Steinborn
90ecb7182a Resync and merge all translation commits into one 2021-05-16 03:13:13 -04:00
Andrew Steinborn
a6d4ad6950 Some classloader/dependency versioning fix ups 2021-05-16 00:33:03 -04:00
Andrew Steinborn
a155f91dfd Support multiple plugins loaded from the same JAR 2021-05-15 23:42:54 -04:00
Andrew Steinborn
3579fa644b Fix typo 2021-05-15 08:59:13 -04:00
Andrew Steinborn
2a39ddb03e Add support for resolving dependencies that require a version range 2021-05-15 08:16:17 -04:00
Andrew Steinborn
e6e35d3754 Add a base interface for events 2021-05-14 12:24:43 -04:00
Andrew Steinborn
e65c4102a6 Add missing nullability annotation 2021-05-14 09:28:57 -04:00
Andrew Steinborn
0af9d9d77b Reimplement packet length checks 2021-05-14 09:24:39 -04:00
Andrew Steinborn
14be98c88c Banish all use of Optionals from Velocity entirely 2021-05-13 04:35:50 -04:00
Andrew Steinborn
6cd3b00428 Fix suppress warnings on the packets 2021-05-13 04:25:06 -04:00
Andrew Steinborn
3c41211163 Switch over to Error Prone (now with NullAway!)
There is one major change: we now have a separate artifact for the annotation processor.

As for NullAway, we are currently exempting the clientbound join game/respawn packets. They are ugly and need to be refactored.
2021-05-13 04:13:15 -04:00
Andrew Steinborn
00cc636d6a Remove essentially all use of Java Optionals from the API
Also fix extended handshake event handling
2021-05-12 12:33:55 -04:00
Andrew Steinborn
6fcef41146 Reimplement #434 but aligned to the Velocity 2.0.0 API 2021-05-12 10:03:48 -04:00
Andrew Steinborn
11928f3737 Fix warning when using a Unix domain socket to connect to a server 2021-05-12 09:15:37 -04:00
Andrew Steinborn
47a1332514 Add equals/hashCode to all results and remove another result I don't like
Fixes #483
2021-05-11 06:52:46 -04:00
Andrew Steinborn
f4fc07768b Simplify event result structure and add some convenience methods 2021-05-11 06:40:22 -04:00
Andrew Steinborn
b239a91388 Finish overhaul of packet state/registry system 2021-05-11 03:21:08 -04:00
Andrew Steinborn
af38e19a26 Merge branch 'dev/2.0.0' into 2/new-registry 2021-05-11 01:53:22 -04:00
Andrew Steinborn
591463532e Rename Dutch and Russian localization files so Crowdin can pick them up 2021-05-10 00:51:52 -04:00
Andrew Steinborn
e52d2d7570
Merge pull request #468 from EasyClifton/patch-1
Russian translations
2021-05-10 00:47:16 -04:00
Andrew Steinborn
79be5acd39
Merge pull request #473 from FaberoM/dev/2.0.0
Add fi_FI translations.
2021-05-10 00:46:49 -04:00
Fabian Mäkilä
f506bd3ee2 Add translations for the dump command 2021-05-10 01:14:46 +03:00
EasyClifton
76f2e724bb
Fix lines 2021-05-09 23:49:05 +03:00
EasyClifton
c4cd574a61
Update messages_ru.properties
Here, it hurt my brain a little, but it's done. Slapped (a, ов) to the end of the plural glist form, although I'm still not sure it's correct.
2021-05-09 23:46:32 +03:00
tjalp
da433ac74b
Restore messages_nl.properties & add new translations 2021-05-09 12:31:28 +02:00
Andrew Steinborn
1e8454c76a Localize the dump command 2021-05-09 04:22:42 -04:00
Andrew Steinborn
cdc9ebf72d Fix merge issues 2021-05-09 03:56:26 -04:00
Andrew Steinborn
a4e91793ca Merge branch 'dev/1.1.0' into dev/2.0.0
# Conflicts:
#	api/build.gradle
#	api/src/main/java/com/velocitypowered/api/proxy/connection/Player.java
#	build.gradle
#	proxy/src/main/java/com/velocitypowered/proxy/command/builtin/VelocityCommand.java
#	proxy/src/main/java/com/velocitypowered/proxy/connection/MinecraftConnection.java
#	proxy/src/main/java/com/velocitypowered/proxy/connection/client/StatusSessionHandler.java
#	proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftCompressEncoder.java
#	proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftCompressorAndLengthEncoder.java
#	proxy/src/test/java/com/velocitypowered/proxy/command/CommandManagerTests.java
2021-05-09 03:51:54 -04:00
Andrew Steinborn
11ed4b46e4 whoops 2021-05-09 02:57:52 -04:00
Andrew Steinborn
5170da8fd7 Improve writeVarInt inlining by peeling the two most common cases 2021-05-09 02:57:01 -04:00
Andrew Steinborn
150fd9a9cf Add highly-optimized VarInt writing method 2021-05-08 23:26:43 -04:00
Andrew Steinborn
6369a95ec9 Readd safe and slow compression handling and hide it behind a system property 2021-05-08 18:40:23 -04:00
Leymooo
a8e0516d18 Also do not copy memory in case when packet needs to compress 2021-05-07 19:36:30 +03:00
Andrew Steinborn
37a4199d43 Combine VarInt prefix encoding with compression
This saves us a memory copy in the common "there is no need to compress this packet" case.
2021-05-06 19:56:45 -04:00
Andrew Steinborn
fb3f21abc6 More bitshifting magic 2021-05-06 00:48:19 -04:00
Andrew Steinborn
1cef82d54d Unroll the VarInt writing loop
This is about as optimized as it can get. Thanks to @Leymooo for the idea, I simply expanded on it. We optimize for the common 1-3 byte cases, and punt more "complicated" cases to the original VarInt writing function we had before.
2021-05-05 22:13:54 -04:00
Andrew Steinborn
d42cc4f984 Force a flush after a certain threshold of packets have been queued for sending
Fixes #486.
2021-05-04 18:51:01 -04:00
Nicolas RAYNAUD
e0153267db
Fixed copyright year (#490) 2021-05-04 18:22:50 -04:00
Andrew Steinborn
3dc8e25ec7 Fix varint writing (for real!)
Thanks to @Leymooo for reporting and providing test cases. (I also added one of my own tests which proved the most useful to debugging the issue.)
2021-05-04 16:30:32 -04:00
Riley Park
2713831f77 Revert "Avoid calling writeVarInt in the (very) common uncompressed packet case"
This reverts commit c041bea1b6.
2021-05-03 19:38:39 -07:00
Andrew Steinborn
c041bea1b6 Avoid calling writeVarInt in the (very) common uncompressed packet case 2021-05-03 20:17:51 -04:00
Andrew Steinborn
0debb81392 I was nagged to make it more consistent 2021-05-03 20:08:16 -04:00
Andrew Steinborn
4ca97a6df9 Reapply "Optimize varint writing"
Inspired by the approach described at the bottom of https://richardstartin.github.io/posts/dont-use-protobuf-for-telemetry

Given that we do a lot of varint writing as well, this should provide a small performance boost for larger/complex packets whilst not regressing hard on smaller packets.

This includes a test to ensure that the behavior is as expected and fixes the initialization loop so that the correct results will be given. Much thanks to @octylFractal for acting as my duck while trying to figure this out.
2021-05-03 19:14:48 -04:00
Andrew Steinborn
e531cdb373 Revert "Optimize varint writing"
This reverts commit 3db2fe8d63.
2021-05-03 18:07:25 -04:00
Andrew Steinborn
3db2fe8d63 Optimize varint writing
Inspired by the approach described at the bottom of https://richardstartin.github.io/posts/dont-use-protobuf-for-telemetry

Given that we do a lot of varint writing as well, this should provide a small performance boost for larger/complex packets whilst not regressing hard on smaller packets.
2021-05-03 17:31:32 -04:00