Commit Graph

1476 Commits

Author SHA1 Message Date
b7853d648f Add kqueue support (#996) 2023-10-27 17:32:22 -04:00
660160e858 Support plugin message in configuration stage (#1096) 2023-10-27 17:13:13 -04:00
bbdeb3ec58 Revert "Modify MinecraftCompressorAndLengthEncoder to handle 8MiB outgoing packets like vanilla supports now"
This reverts commit 7e932eaad4.

Yikes, I broke something. Need to rethink this approach.
2023-10-27 16:10:39 -04:00
3d20c3dd2d Migrate buildSrc plugins to build-logic 2023-10-27 16:03:15 -04:00
7e932eaad4 Modify MinecraftCompressorAndLengthEncoder to handle 8MiB outgoing packets like vanilla supports now 2023-10-27 15:35:04 -04:00
0b07456c89 Bump HARD_MAXIMUM_UNCOMPRESSED_SIZE to 128MiB 2023-10-27 15:17:32 -04:00
b33d18af2b Allow closing active proxy listeners (#1109) 2023-10-27 01:39:03 -04:00
f884e049c0 Log the protocol phase in case of trying to obtain a packet id not existing in the phase (#1107) 2023-10-12 21:29:04 +01:00
eb594fc799 Implement ComponentLogger (#1022) 2023-10-12 18:44:10 +01:00
98163cb82c acknowledge seen messages to server when running proxy commands (#1100) 2023-10-12 17:22:42 +01:00
0d9a097a59 Fix unsigned commands detected as signed (#1082)
* fix: commands flagged as signed without signed arguments

* feat: improve error message for illegal protocol state.
2023-10-12 15:51:19 +01:00
1cc3f120ee Several improvements and fixes for 1.20.2 (#1097)
* Send LoginAcknowledged immediately

* Resend player list header/footer after backend server switched to config state

* Fix clearHeaderAndFooter not clearing fields in ConnectedPlayer

* Clear boss bars, header/footer, tab list when switching client to config state

* Send client settings in config state
2023-10-12 11:11:47 +02:00
9be0bca3c4 Catch throwables when loading plugins (#1098) 2023-10-11 16:24:35 +01:00
2bd2c692ea Change packet decode logging prompt 2023-10-10 18:44:03 +01:00
05e5963660 appease checkstyle, move back to older fix placement 2023-10-10 18:21:02 +01:00
550ca58a09 Actually send plugin message registration to backend servers
I don't see where this was ever done, and don't see how plugin messaging
could of ever worked, at least within the confines of CB and co, given
the fact that we never seemed to be sending this to the backend?
2023-10-10 18:05:05 +01:00
768ecdb0c3 1.20.2 Support (#1088)
Co-authored-by: RednedEpic <redned235@gmail.com>
Co-authored-by: Gero <gecam59@gmail.com>
2023-10-10 12:44:16 +00:00
19abb9094e fix #1062 2023-08-20 02:13:55 -04:00
f62d759896 Do not track plugin channels registered per-player on the proxy (#591)
We don't need to track this information since Velocity uses the JoinGame packet, which is about as good of a server rejoin mechanism we're likely to get in vanilla Minecraft.
2023-08-17 23:51:34 -04:00
be9ecf75b2 check if a plugin has a executor service (#1038)
* check if a plugin has an executor service

* checkstyle
2023-08-04 20:48:01 -04:00
5ef90c46e3 1.20 2023-06-06 17:13:48 +02:00
e0cf2e211f Updated Guice to 6.0.0 and manually include updated ASM (#1016) 2023-06-02 22:12:03 -04:00
40b76c6332 Fix flaky obtainTasksFromPlugin() test 2023-05-15 01:21:30 -04:00
92ae25b8ac Also make sure to use the latest ping serializer as well 2023-05-15 01:20:45 -04:00
12a05f6d75 When pinging the server with protocol version -1, return the latest version supported by the proxy
This matches BungeeCord's behavior and is in line with what clients specifying this meta-version would expect.
2023-05-15 01:15:49 -04:00
673af65078 fix 2023-05-14 03:18:20 -04:00
a29c753e39 Give each plugin its own executor service (#1010)
This is part of preparatory work for Velocity 5.0.0's revamped event system, but this change is safe to bring into the 3.x.x series. This affects the scheduler for now, but command execution will also be moved into the per-plugin thread pool, along with invocations of `EventTask.async()`.
2023-05-14 02:51:25 -04:00
1161482fce Upgradle to v8.1 and remove now-redundant warnings (#1001) 2023-04-19 17:43:25 -04:00
e364e2c7d1 feat: Warn if an attempt is made to register a command with multiple interfaces implemented instead of just ignoring it (#1000) 2023-04-09 12:23:39 -04:00
d438422d52 Get a bit more spotless 2023-04-09 12:19:50 -04:00
2fa9f37481 Delete copying temporary version of config.toml into temporary files
Fixes #999
2023-04-09 12:18:02 -04:00
93b6376b38 Remove registry decoding (#979) 2023-03-29 09:21:01 +02:00
7b5f010215 Forgot to migrate adventure bom declaration 2023-03-26 16:18:28 +02:00
e9526e0e23 Move dependencies to gradle version catalog and clean up buildscripts 2023-03-26 14:53:11 +02:00
c7ba5255e3 Add Player#hasSentPlayerSettings (#980) 2023-03-21 09:22:40 +01:00
01f1e1a94e Fix header and footer desync (#928) 2023-03-16 02:32:09 -04:00
15cce53adf Revert "Handle exceptions in ConnectionRequestBuilderImpl#fireAndForget (#875)" (#978)
This reverts commit b4e04204a9.
2023-03-16 02:14:22 -04:00
b4e04204a9 Handle exceptions in ConnectionRequestBuilderImpl#fireAndForget (#875)
See #859
2023-03-15 23:02:02 -04:00
7e9a25209c Update various dependencies 2023-03-15 22:52:12 -04:00
cc74cf855f Added MiniMessage support to built-in motd (#666) 2023-03-15 19:27:20 -04:00
65a84833d7 Expose Caffeine in the API module 2023-03-11 08:36:38 -05:00
43f6dd653b 1.19.4 (rc1) (#967) 2023-03-09 19:25:52 +01:00
5d03023679 Update ServerData reading 2023-03-09 19:25:51 +01:00
31e557c80b Start working on 1.19.4 2023-03-09 19:25:51 +01:00
9122d70ffe Update Gradle wrapper, add wrapper-validation-action to build workflow 2023-03-09 19:10:01 +01:00
cb1f336d14 Fix cancellation of PlayerChatEvent for key revision GENERIC_V1 (#941) 2023-03-09 18:56:09 +01:00
d733e88677 Add getEntry to TabList.java 2023-02-20 10:11:33 -05:00
e0e156a420 Fix task scheduler, reject tasks above cap
The ThreadPoolExecutor API is confusing with *very* common pitfalls, one of them being a setup like the one before completely blocking task execution while core task executors are working, not actually starting new threads.
2023-02-19 14:47:38 +01:00
b0988bc50a Add a hard cap of 200 threads to VelocityScheduler
This is a more realistic (generalized) solution for #943. Fundamentally, a plugin should not be spawning an unbounded number of asynchronous task execution units on demand from the user - an invariant Velocity itself enforces. However, since this practice is so commonplace, it makes sense that we would need to have some upper cap to at least make the practice safer than it currently is.
2023-02-18 16:20:12 -05:00
cd35e8f8a9 Fix for edgecase FML|HS packet desynchronization (#948)
* Fix for edgecase FML|HS packet desynchronization

* Change approach for FML packet desynchronization edge case
2023-02-15 01:00:11 -05:00