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
Andrew Steinborn
0ed8352012
Do it to the message event too
2021-04-17 05:00:16 -04:00
Andrew Steinborn
47c354e6ee
[Breaking] Many renamings in the API
...
The get prefix has been dropped from getters where it is unambiguous what is being referred to. Other getters have also received renames to clarify their purpose.
The main exception is the ProxyConfig API, but it's one of my personal sore spots in the API, so it'll be replaced instead.
2021-04-17 04:58:16 -04:00
Andrew Steinborn
2254e3b617
Rename CommandManager#metaBuilder -> CommandManager#createMetaBuilder
2021-04-17 04:23:58 -04:00
Andrew Steinborn
cf7c2b004a
Better documentation for EventHandler
2021-04-17 04:10:27 -04:00
Andrew Steinborn
a6728476db
I missed a spot
2021-04-17 03:52:01 -04:00
Andrew Steinborn
730d385f02
Extract interfaces for all events.
...
This is in preparation for moving to event-impl-gen.
2021-04-17 03:50:10 -04:00
Andrew Steinborn
c8519949bc
Configuate 4.0.0 is stable
2021-04-16 04:12:45 -04:00
Andrew Steinborn
f879858e7d
Bring 2.0.0 fully up to date on GPLv3 relicense
2021-04-16 04:11:55 -04:00
Andrew Steinborn
e49603ec0c
Merge branch 'dev/1.1.0' into dev/2.0.0
...
# Conflicts:
# api/src/main/java/com/velocitypowered/api/command/ConsoleCommandSource.java
# api/src/main/java/com/velocitypowered/api/event/connection/ProxyPingEvent.java
# api/src/main/java/com/velocitypowered/api/event/connection/ProxyQueryEvent.java
# api/src/main/java/com/velocitypowered/api/event/lifecycle/ListenerBoundEvent.java
# api/src/main/java/com/velocitypowered/api/event/lifecycle/ListenerCloseEvent.java
# api/src/main/java/com/velocitypowered/api/event/lifecycle/ProxyInitializeEvent.java
# api/src/main/java/com/velocitypowered/api/event/lifecycle/ProxyReloadEvent.java
# api/src/main/java/com/velocitypowered/api/event/lifecycle/ProxyShutdownEvent.java
# api/src/main/java/com/velocitypowered/api/event/player/DisconnectEvent.java
# api/src/main/java/com/velocitypowered/api/event/player/LoginEvent.java
# api/src/main/java/com/velocitypowered/api/event/player/PostLoginEvent.java
# api/src/main/java/com/velocitypowered/api/event/player/PreLoginEvent.java
# api/src/main/java/com/velocitypowered/api/event/query/package-info.java
# api/src/main/java/com/velocitypowered/api/proxy/connection/InboundConnection.java
# api/src/main/java/com/velocitypowered/api/proxy/connection/Player.java
# api/src/main/java/com/velocitypowered/api/proxy/connection/ServerConnection.java
# api/src/main/java/com/velocitypowered/api/proxy/player/ConnectionRequestBuilder.java
# api/src/main/java/com/velocitypowered/api/util/MessagePosition.java
# api/src/main/java/com/velocitypowered/api/util/bossbar/BossBar.java
# api/src/main/java/com/velocitypowered/api/util/bossbar/BossBarColor.java
# api/src/main/java/com/velocitypowered/api/util/bossbar/BossBarFlag.java
# api/src/main/java/com/velocitypowered/api/util/bossbar/BossBarOverlay.java
# api/src/main/java/com/velocitypowered/api/util/title/TextTitle.java
# api/src/main/java/com/velocitypowered/api/util/title/Title.java
# api/src/main/java/com/velocitypowered/api/util/title/Titles.java
# api/src/main/java/com/velocitypowered/api/util/title/package-info.java
# build.gradle
# native/src/main/java/com/velocitypowered/natives/compression/Java11VelocityCompressor.java
# proxy/src/main/java/com/velocitypowered/proxy/connection/client/LoginSessionHandler.java
# proxy/src/main/java/com/velocitypowered/proxy/network/ConnectionManager.java
# proxy/src/main/java/com/velocitypowered/proxy/network/NettyPreconditions.java
# proxy/src/main/java/com/velocitypowered/proxy/network/PluginMessageUtil.java
# proxy/src/main/java/com/velocitypowered/proxy/network/ProtocolUtils.java
# proxy/src/main/java/com/velocitypowered/proxy/network/ServerChannelInitializerHolder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/buffer/ByteBufDataInput.java
# proxy/src/main/java/com/velocitypowered/proxy/network/buffer/ByteBufDataOutput.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundAvailableCommandsPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundBossBarPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundEncryptionRequestPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundJoinGamePacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundPlayerListItemPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundRespawnPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundTabCompleteResponsePacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/legacy/LegacyDisconnectPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/legacy/LegacyMinecraftPingVersion.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/serverbound/ServerboundClientSettingsPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/serverbound/ServerboundTabCompleteRequestPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/AutoReadHolderHandler.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/GS4QueryHandler.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/LegacyPingDecoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/LegacyPingEncoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftCipherDecoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftCipherEncoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftCompressDecoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftCompressEncoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftDecoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftEncoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftVarintFrameDecoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftVarintLengthEncoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/VarintByteDecoder.java
# proxy/src/main/java/com/velocitypowered/proxy/network/resolver/SeparatePoolInetNameResolver.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/FaviconSerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/GameProfileSerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/VelocityLegacyHoverEventSerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/ArgumentPropertyRegistry.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/ArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/ByteArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/DoubleArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/EmptyArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/FloatArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/GenericArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/IntegerArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/LongArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/ModArgumentProperty.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/ModArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/PassthroughProperty.java
# proxy/src/main/java/com/velocitypowered/proxy/network/serialization/brigadier/StringArgumentPropertySerializer.java
# proxy/src/main/java/com/velocitypowered/proxy/plugin/VelocityEventManager.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/MinecraftPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/StateRegistry.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/Chat.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/Disconnect.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/EncryptionResponse.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/Handshake.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/HeaderAndFooter.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/KeepAlive.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/LegacyHandshake.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/LegacyPing.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/LoginPluginMessage.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/LoginPluginResponse.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/PluginMessage.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ResourcePackRequest.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ResourcePackResponse.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ServerLogin.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ServerLoginSuccess.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/SetCompression.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/StatusPing.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/StatusRequest.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/StatusResponse.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/TitlePacket.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/util/DeferredByteBufHolder.java
# proxy/src/main/java/com/velocitypowered/proxy/util/bossbar/AdventureBossBarManager.java
# proxy/src/main/java/com/velocitypowered/proxy/util/bossbar/VelocityBossBar.java
# proxy/src/test/java/com/velocitypowered/proxy/event/MockEventManager.java
# proxy/src/test/java/com/velocitypowered/proxy/network/PluginMessageUtilTest.java
# proxy/src/test/java/com/velocitypowered/proxy/protocol/PacketRegistryTest.java
2021-04-16 04:02:01 -04:00
Andrew Steinborn
f1cb3eb1a2
Move timeout handler to after frame decoder
...
Mitigates attacks like the one described in SpigotMC/BungeeCord#3066 . This cannot be considered a full protection, only a mitigation that expects full packets. The attack described is essentially the infamous Slowloris attack.
2021-04-15 22:56:37 -04:00
Andrew Steinborn
c51359e893
Move away from deprecated percent() method.
...
Also fixed another small nit.
2021-04-15 04:23:59 -04:00
Andrew Steinborn
4de71fe942
Fix color and overlay packets for Adventure boss bar
...
Someone discovered this bug but decided not to tell anyone. For the record, I'm the one who was brain-damaged... well, I made that particular copy-paste error.
2021-04-15 04:22:44 -04:00
Cubxity
5ea6728d1a
Added ListenerBoundEvent and ListenerCloseEvent. ( #454 )
2021-04-02 13:24:45 -04:00
Rocco
c34aee76ae
Fix Forge/Client Proxy Connections mismatch in config ( #456 )
2021-04-02 12:36:32 -04:00
A248
54474d7100
Add Duration methods to TaskBuilder ( #445 )
2021-04-02 01:51:54 -04:00
A248
7ba2318506
Fix one more case of a possibly swallowed exception ( #455 )
...
Maybe spotbugs will add a rule for this in the future
2021-04-02 01:45:58 -04:00
Andrew Steinborn
be21ac5a30
[ci-skip] Update license in README
2021-03-31 20:36:08 -04:00
Andrew Steinborn
c747120b20
Relicense the Velocity proxy under the terms of GPLv3 ( #448 )
2021-03-31 16:04:06 -04:00
Andrew Steinborn
514115a85c
Do not use an ASCII string for handshake
2021-03-30 12:10:55 -04:00
Andrew Steinborn
f88283f127
Revert "Revert strict handshake hostname checks"
...
This reverts commit 4f80d2b261
.
Experience elsewhere (Waterfall PR) and confirmation from TCPShield means
this ought to work. Let's hope.
2021-03-30 12:08:08 -04:00
Andrew Steinborn
8aad6e2ece
clear input buffer in case of bad varints
2021-03-30 12:05:43 -04:00
Andrew Steinborn
0cc300b621
don't swap these two around
2021-03-23 07:38:07 -04:00
Andrew Steinborn
3111816545
Warn about null permission functions.
2021-03-23 07:32:01 -04:00
A248
0016f4ce19
Relay more exceptions ( #446 )
2021-03-22 08:11:25 -04:00
Andrew Steinborn
015693090f
Fix typo (thanks zml)
2021-03-21 16:17:41 -04:00
Andrew Steinborn
da54a091fb
Allow the java.lang module to be opened, as a temporary Java 15+ workaround
2021-03-21 16:16:19 -04:00
FivePB (Xer)
690bcfcaa5
Change version-name logic ( #441 )
2021-03-11 04:24:04 -05:00
Riley Park
d2c2b78ab9
Adventure 4.7.0
2021-03-08 16:47:04 -08:00
Andrew Steinborn
c11c5d2d48
Bump Guice to 5.0.1
2021-03-04 10:29:35 -05:00
Andrew Steinborn
5eb6dfe936
Bump Adventure to 4.6.0
2021-03-02 12:34:19 -05:00
Andrew Steinborn
4206457fbc
Bump Adventure to 4.6.0
2021-03-02 12:33:47 -05:00
Andrew Steinborn
3a51bee052
Fix Checkstyle errors and update geriatric Checkstyle version
2021-03-01 19:41:35 -05:00
Andrew Steinborn
ba7ba70f4b
Connections -> HandlerNames
2021-02-21 21:03:06 -05:00
Andrew Steinborn
0294cfda56
Add PacketWriter interface.
2021-02-21 20:45:59 -05:00
Andrew Steinborn
f167414ae8
Don't build with Java 8, it will fail.
2021-02-21 18:10:59 -05:00
Andrew Steinborn
28f12e2d7f
Merge remote-tracking branch 'origin/dev/2.0.0' into dev/2.0.0
2021-02-21 18:10:10 -05:00
Andrew Steinborn
0e05f5f308
Mostly brought 2.0.0 up to update with Velocity 1.1.5-SNAPSHOT changes.
...
I have not verified that this actually works.
2021-02-21 18:09:56 -05:00
Andrew Steinborn
699147c916
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
# api/src/main/java/com/velocitypowered/api/proxy/player/TabList.java
# build.gradle
# proxy/build.gradle
# proxy/src/main/java/com/velocitypowered/proxy/Velocity.java
# proxy/src/main/java/com/velocitypowered/proxy/command/CommandNodeFactory.java
# proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BackendPlaySessionHandler.java
# proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BungeeCordMessageResponder.java
# proxy/src/main/java/com/velocitypowered/proxy/connection/backend/VelocityServerConnection.java
# proxy/src/main/java/com/velocitypowered/proxy/connection/client/ConnectedPlayer.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundAvailableCommandsPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundJoinGamePacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundRespawnPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftDecoder.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/MinecraftPacket.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/EncryptionResponse.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/HeaderAndFooter.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/LoginPluginMessage.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/PluginMessage.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ServerLogin.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/StatusPing.java
# proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/StatusRequest.java
# proxy/src/main/java/com/velocitypowered/proxy/tablist/VelocityTabList.java
# proxy/src/main/java/com/velocitypowered/proxy/tablist/VelocityTabListLegacy.java
# proxy/src/test/java/com/velocitypowered/proxy/command/CommandManagerTests.java
2021-02-21 17:56:40 -05:00