[1.19.2] Fixed submitted chat event incompatible with jarInJar #9691
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I have identified an error when using the ServerChatEvent.Submitted event with JarInJar dependencies. The essence of the error is that if we cancel this event and add code from the JarInJar dependency, we will get a ClassNotFoundException error. This error was detected when using Kotlin as a JarInJar dependency. Perhaps in the current PR it is worth replacing Util#ioPool from Minecraft with your own ExecutorService.
In addition, I would like to say that using CompletableFuture without your own ExecutorService is a bad practice.
Testing version: 1.19.2
Using ForkJoinPool
Configuration gradle:
Mod code:
Build mod, run outside the IDE and join to world. Look at logs and check stacktrace with ClassNotFoundException: kotlin.blablabla.Lambda
Using normal ExecutorService
Configuration gradle: look at message above
Mod code: