-
-
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
PF4J 4 roadmap #372
Comments
Hi @decebals , MS Office plugin:
Open Office plugin:
Generic plugin:
This dame could provide a plugin manager web based with the following actions:
|
Hi @rmrodrigues |
@decebals the idea is not to integrate with Excel and Word. It's just a more complex use case using the framework. |
Looking forward to an example |
@fendo8888 What is wrong with demo (https://pf4j.org/doc/demo.html)? |
@decebals I have seen that demo, I mean an example of the integrity of a replication point |
When will version 4.0 come out, big brother |
@fendo8888 Nothing concrete until now, I cannot give you an estimation. It's a community driven project so the roadmap is entirely dictated my community. As I have not seen a high demand for the points proposed in this issue, so it is not a top priority :). |
@decebals I would like to have more fine-grained controll on PluginClassLoader. In my project sbp, I have to do some hack to achieve my purpose. For example, I need to control some resouces get loaded from application or plugin only. That's kind of painful everytime when I upgrade pf4j versions. Another thought, for extension, could we have kind of exclusive extension, could only be extent by only one plugin, and application throw error when more than one plugin trying to extend this exclusive extension? |
I see some requests for plugin encapsulation (from security point of view). A plugin to be run in a kind of sandbox, to be able to access only specific resources (file system, ,,,). We need here a clear definition of the problem to be able to sketch a solution (API).
I think here that this feature is a (very) particular use case. pf4j is very extensible (my opinion) and it's a chance to be able to implement this feature with some custom code. If you find that is not possible, we cand improve de API to allow this thing. |
@decebals I would prefer to keep the Java 8 compatibility. A lot of users are still on the openJDK 8 which is still supported for a while (e.g. Azul supports their openJDK 8 until 2030). Migrating to Java 11 would prevent those users from benefitting from new features in pf4j. |
@wolframhaussig What you said makes sense. Thanks for your feedback and implications (I see some activity on your part on this project and I'm happy about that). |
Avoid passing entirely |
maybe switch the DefaultVersionManager from jsemver to semver4j (see PR for semver4j #454)? |
The main problem here is related to backward compatibility (they are many applications that uses pf4j for modularity and I don't want to force a modifications off all these plugins because the API was modified). |
More than 5 years has passed since the initial request for this, and the demand for async APIs in pf4j seems to be quite low overall. I recognize that there are and will be a lot of applications out there using async/reactive idioms for a long time to come, but given that the Java ecosystem is moving towards Virtual Threads (officially supported since JDK 21 and JEP 444) and doubling down on synchronous APIs, maybe it isn't worth the extra maintenance effort? |
Are there many pf4j users still in need of Java 8-compatibility? The overall feeling is that OSS libraries have quite actively started dropping support for Java 8 lately. As for example Spring 6 / Spring Boot 3 bumped the minimum required version to Java 17, I would almost vote for going straight to 17 for pf4j as well, if there's consensus for bumping the minimum requirement. |
It's an interesting question. I'm curious to hear some opinions. |
Although I would not be affected as I am already using Java 21, I would hesitate to require Java 17+: |
The Spring 5 OSS EOL date is not that far away (~5 months): https://spring.io/projects/spring-framework#support But yeah, it's true that Java 8 will still be freely available and supported for quite a few years. Unless it requires/starts requiring a big burden to maintain Java 8 support going forward, maybe it's fine to keep the support. |
I think that is time to talk about PF4J 4.x roadmap.
PF4J is maintained under the Semantic Versioning guidelines, so in a new major version (4.0 in our case) we can make incompatible changes in our API.
Now is time to improve PF4J without to care about backward compatible.
I will try to add some proposes:
The list with proposes will grow in time.
If you think that something is bad designed or you want to change something in the current API, please add a comment.
The text was updated successfully, but these errors were encountered: