-
-
Notifications
You must be signed in to change notification settings - Fork 545
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Folia Support; #2012
base: master
Are you sure you want to change the base?
Add Folia Support; #2012
Conversation
Does this retain Spigot support, as well as actually work given WorldEdit isn't marked as supporting Folia? |
At the moment it should retains, but if Folia removes
In my case, the FastAsyncWorldEdit test build is used. For the short test was used:
|
How does this handle accessing region data structures in parallel?? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess we can add Folia support at some point however there are some missing things:
- WorldEdit should support Folia first. We don't support WorldEdit forks. Without Folia support for WorldEdit, WorldGuard runs in unsupported environment.
- I'm not happy with the removed paper-api dependency. Our suggested platform is Paper, we should use paper as dependency. Folia adds some more methods and the bukkit module should never call them directly. This requires a new folia module.
How does this handle accessing region data structures in parallel??
This should be fine, WorldGuard already supports multithreaded access. However we should double check that.
worldguard-bukkit/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardPlugin.java
Outdated
Show resolved
Hide resolved
...uard-bukkit/src/main/java/com/sk89q/worldguard/bukkit/listener/EventAbstractionListener.java
Show resolved
Hide resolved
worldguard-bukkit/src/main/java/com/sk89q/worldguard/bukkit/scheduler/SchedulerAdapter.java
Show resolved
Hide resolved
Creating the same code in every plugin is not reasonable. Maybe adopting this in PaperLib would not be a bad thing. |
"Exit" and "Entry" flags do not work on Folia without throwing an exception. Perhaps this is caused by the use of Player#teleport, as Folia requires you to use teleportAsync |
@Anon8281, it's kind of based on events/ |
This comment was marked as spam.
This comment was marked as spam.
This comment was marked as spam.
This comment was marked as spam.
This comment was marked as spam.
This comment was marked as spam.
@Yomamaeatstoes and @Loving11ish, fixed buggy rebase/ |
It works completely fine |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The MR contains some improvements for Folia however without a WorldEdit version which supports Folia I wouldn't merge this.
worldguard-bukkit/src/main/java/com/sk89q/worldguard/bukkit/BukkitRegionContainer.java
Show resolved
Hide resolved
worldguard-bukkit/src/main/java/com/sk89q/worldguard/bukkit/session/BukkitSessionManager.java
Show resolved
Hide resolved
I have since edited this message. This works completely fine. |
(cherry picked from commit 7dd04cc)
(cherry picked from commit a9d6cf0)
(cherry picked from commit a6f8599)
(cherry picked from commit f91082d)
Add javadoc for SchedulerAdapter interface; (cherry picked from commit 919a249)
Remove over-parallelism; (cherry picked from commit e1861e6)
(cherry picked from commit 6435dbe)
Add synchronized uninitialize handlers and mark a session uninitialized;
@Anon8281, probably fixed, but there may be other problems. |
Adds basic support for Folia with the new scheduler system.
Requirements Checklist
SchedulerReport
, but currently disable it for Folia;