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

1722 Commits

Autor SHA1 Nachricht Datum
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
7c76ae9a27 Make sure to check not only the entire array but also how much was written 2021-05-04 16:32:37 -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
0811ebb312 Gotta add the license header to the test file 2021-05-03 19:18:06 -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
Andrew Steinborn
347853b945 Disable hinting test for now 2021-04-25 10:18:58 -04:00
Andrew Steinborn
81311e7516 Don't attempt to decode empty buffers (fixes #482)
Stuff like this makes me want to drop support for <=1.13 versions of Minecraft.
2021-04-25 10:14:13 -04:00
Andrew Steinborn
f00b9b73ea Make ServerboundHandshakePacket immutable 2021-04-23 19:16:47 -04:00
Andrew Steinborn
3dc3c40c33 Convert some more packets to use PacketReader/PacketWriter 2021-04-23 19:01:40 -04:00
Fabian Mäkilä
48a69c7cc5 Add missing hyphen 2021-04-23 17:20:26 +03:00
FabianAdrian
c729acc829
Change some wording based on suggestions
Co-authored-by: Antti <antti@ellila.fi>
2021-04-23 17:13:33 +03:00
Andrew Steinborn
d7435fcbb6 Velocity 1.1.6-SNAPSHOT 2021-04-22 11:28:49 -04:00
Andrew Steinborn
92865b0307 Velocity 1.1.5 2021-04-22 11:23:57 -04:00
Andrew Steinborn
ce26ae76c2 Fix case-sensitivity for ping passthrough 2021-04-22 11:23:42 -04:00
Andrew Steinborn
e416b9fc45 Reapply f1cb3eb and add the same fix to ping passthrough 2021-04-22 11:22:55 -04:00
Andrew Steinborn
a5565847d1 Merge branch 'dev/1.1.0' into dev/2.0.0
# Conflicts:
#	proxy/src/main/java/com/velocitypowered/proxy/connection/client/ConnectedPlayer.java
2021-04-22 11:21:33 -04:00
Mariell Hoversholm
8b38fba08e
feat: nb_NO and nn_NO localisation (#467) 2021-04-21 16:21:51 -04:00
Andrew Steinborn
688babb4da Actually fix loading locales from paths with spaces in them 2021-04-19 08:48:42 -04:00
Andrew Steinborn
1bd691f91b Checkstyle strikes again! 2021-04-19 08:03:55 -04:00
Andrew Steinborn
7c0b622742 Try #2 at explicit path 2021-04-19 08:01:58 -04:00
Andrew Steinborn
6a349d24ac Specify an explicit path instead of using Paths.get() to construct it 2021-04-19 07:54:48 -04:00
Andrew Steinborn
efa9f6f303 Make sure we fallback to en_US. Fixes #474 2021-04-19 07:42:16 -04:00
Seppe Volkaerts
71db78e172
Fix the automatic registration of main plugin event listeners. (#471) 2021-04-18 19:18:01 -04:00
Fabian Mäkilä
5024e432f8 Add fi_FI translations. 2021-04-19 00:38:48 +03:00
Riley Park
01336ff239
Merge pull request #472 from Cybermaxke/2.x/fix-filesystem-compile-error
Fix ambiguous newFileSystem method when using Java 13.
2021-04-18 14:27:31 -07:00
Seppe Volkaerts
6ac5643212 Fix ambiguous newFileSystem method when using Java 13. 2021-04-18 22:54:18 +02:00
Andrew Steinborn
d26d61f038 Fix pluralization of /glist player summary 2021-04-18 11:16:11 -04:00
EasyClifton
699314d7ae
Create messages_ru.properties
Did the translation to Russian. Tho I still have some concerns about the plural forms because Russian has multiple forms for "players".
2021-04-18 16:58:09 +03:00
Andrew Steinborn
ca52f8989e Load forced hosts as lowercase too, see #464 2021-04-18 08:22:36 -04:00
Andrew Steinborn
ff54622663 Forced hosts should be case-insensitive. Fixes #464 2021-04-18 08:20:04 -04:00
Andrew Steinborn
c069a0730f Fix "too many servers" message 2021-04-17 22:23:04 -04:00
Andrew Steinborn
f2ddd391a5 Fix localization loading from JAR 2021-04-17 09:15:34 -04:00
Andrew Steinborn
6c369c7d09 Fix SpotBugs stuff 2021-04-17 09:05:23 -04:00
Andrew Steinborn
3209103317 Licensing fun 2021-04-17 09:01:21 -04:00
Andrew Steinborn
69cba59630 Load localizations automatically.
Also included a sample "backwards" localization to demonstrate that it does in fact work.
2021-04-17 09:00:48 -04:00
Andrew Steinborn
c0b6f461cb Add localization support. Fixes #230
This is less flexible, but it is an Adventure-native solution and doesn't require an onerous amount of work to maintain.
2021-04-17 08:30:31 -04:00
Andrew Steinborn
5d07c29cf6 Fix SpotBugs issue 2021-04-17 07:08:35 -04:00
Andrew Steinborn
50f4742240 Add some cases where the locale should fallback to the default 2021-04-17 07:06:23 -04:00
Andrew Steinborn
3d0ca2732e Run all components in cases where the locale is known through the translation registry. 2021-04-17 07:02:39 -04:00
Andrew Steinborn
4318c179a4 Fix Javadocs for PairedPluginChannelId and KeyedPluginChannelId 2021-04-17 06:19:29 -04:00
Andrew Steinborn
ec6fb80d6c Fix typo 2021-04-17 06:17:45 -04:00
Andrew Steinborn
9645fb59da Further improvements.
The main component here is the total revamp of the plugin channel identifier system - instead of Legacy/Modern channel IDs, you can have a modern channel or a modern channel paired with a legacy channel, which is much less confusing to work with.
2021-04-17 06:04:12 -04:00