Skip to content
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 support for Folia #131

Closed
Q2297045667 opened this issue May 1, 2023 · 10 comments · Fixed by #280
Closed

Add support for Folia #131

Q2297045667 opened this issue May 1, 2023 · 10 comments · Fixed by #280
Labels
type: feature request This issue is about a new feature or request

Comments

@Q2297045667
Copy link
Contributor

Here is a summary of everything made with ChatGPT to save some time:

For plugin developers, there are a few key takeaways from the given text:

Folia introduces regionised multithreading, which means that plugins will require modification to function properly. Plugin developers should expect compatibility with existing plugins to be at zero.

Folia introduces new API additions, such as the RegionisedScheduler and EntityScheduler, which can help plugins run on the correct thread context.

To ensure compatibility with Folia, plugin developers must mark their plugin as compatible by placing "folia-supported: true" in the plugin.yml file. Additionally, plugins must take advantage of the RegionisedScheduler and EntityScheduler API to ensure correct behavior.

Plugins should not assume that they can access or modify data in other regions, as Folia regions tick in parallel and do not share data. Plugin developers should take advantage of the upcoming thread-check API to ensure correct behavior.

There are currently broken API, including the scoreboard API, and planned API changes, such as super aggressive thread checks, which may impact plugin development.

Overall, plugin developers should be prepared for significant changes in their plugins to ensure compatibility with Folia. They should take advantage of the new API additions and mark their plugin as compatible to ensure correct behavior. Additionally, they should be aware of the limitations and rules of Folia's regionised multithreading to avoid bugs and errors in their plugins.

@WiIIiam278 WiIIiam278 added the type: feature request This issue is about a new feature or request label May 1, 2023
@WiIIiam278
Copy link
Owner

Folia support is planned, yeah. With Sync, there's a bit of refactor work I need to do first, though, to move some of it's logic off the thread pool and into properly managed tasks, among other things.

@Q2297045667
Copy link
Contributor Author

Folia support is planned, yeah. With Sync, there's a bit of refactor work I need to do first, though, to move some of it's logic off the thread pool and into properly managed tasks, among other things.

Thank you very much

@AloneRUS
Copy link

Hello. Have you some updates for Folia? Test builds probably

@WiIIiam278
Copy link
Owner

I don't; Folia support requires some refactor work which I'm doing on the v2.3 branch (https://github.com/WiIIiam278/HuskSync/tree/v3-work). This branch compiles but doesn't function yet. Once I've got that stable, Folia support should be fairly trivial.

That's all~.

@Dreeam-qwq
Copy link

Any update for Folia support?

@Q2297045667
Copy link
Contributor Author

Any update for Folia support?

Perhaps there were quite a few bugs, so there were no subsequent updates

@AloneRUS
Copy link

Hello, some updates for Folia?

@WiIIiam278
Copy link
Owner

Folia support continues to be planned.

There's a few issues and missing features with Folia itself at the moment that makes this nontrivial to test (I don't want to ship something that's full of bugs - especially as stability is of the essence with something like this), and I need to do a bit more refactor work to make task scheduling location-based.

It's probably a few months out still.

@xiaoluofa
Copy link

Folia support continues to be planned.

There's a few issues and missing features with Folia itself at the moment that makes this nontrivial to test (I don't want to ship something that's full of bugs - especially as stability is of the essence with something like this), and I need to do a bit more refactor work to make task scheduling location-based.

It's probably a few months out still.

Maybe you can implement some simple functions first? At present, Folia does not have a good synchronization plug-in.

@Q2297045667
Copy link
Contributor Author

Folia support continues to be planned.
There's a few issues and missing features with Folia itself at the moment that makes this nontrivial to test (I don't want to ship something that's full of bugs - especially as stability is of the essence with something like this), and I need to do a bit more refactor work to make task scheduling location-based.
It's probably a few months out still.

Maybe you can implement some simple functions first? At present, Folia does not have a good synchronization plug-in.

Yes, this can also help developers test some bugs in advance

@WiIIiam278 WiIIiam278 changed the title Request support for Folia Add support for Folia Mar 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: feature request This issue is about a new feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants