-
-
Notifications
You must be signed in to change notification settings - Fork 552
-
-
Notifications
You must be signed in to change notification settings - Fork 552
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 3 roadmap #282
Comments
Hi @decebals , thanks for putting together and leading this project! Some possible issues to consider from a new user perspective:
|
I started to work on PF4J 3. The modifications are available on pf4j_3 branch. |
Maybe you can create a milestone for PF4J 3 and assign all related issues to it? - Maybe this would make it more transparent, which issues need to be resolved (or are already resolved) for the next major release. |
The idea is good but I don't have a fixed list with all features. From this reason I cannot supply a real evolution of this work. For example, I will include #269 only if I receive a PR for this. I don't want to add more and more features only to increase the features list. If more users vote for a feature, then this feature is a serious candidate to be included in the next versions. |
I don't expect a final / fixed list of features on the milestone. Just assign all issues to the milestone, that you think are plausible / doable for the PF4J 3 release. Currently it's not very transparent,
Issues like #269, that you can't (or don't want) implement by yourself, can have an additional "help wanted" label. Everybody is invited to tackle those issues. Otherwise if the planned features are implemented, all unresolved "help wanted" issues are removed from the milestone and PF4J 3 is ready for release. If I find the time, I would like to do some more testing and maybe try to implement one of these issues. But currently I'm quite confused and don't have a complete overview about the state of development. |
I created PF4J 3 milestone and added some issues (maybe not all). |
PF4J 3 is ready to be released (zero open issues for this milestone). |
Hi @decebals , Thanks for the updates! I've successfully upgraded our code and tests to the current snapshot. The patch with the effects on the client code can be seen here. A couple of questions/consideration on the API, mostly from the user perspective:
|
@dmitry-timofeev
These modifications was made in the context of #292. try {
// do something
} catch (PluginException e) {
log.error(e.getMessage(). e);
} The error in a method is signaled by the return value ( Related to this subject, in one of our discussion about this subject I wrote:
The dilemma remains in my mind: checked vs unchecked exceptions (both types of exceptions solve our goal). Take a look at JDBC API as an example. It is full with
I think that you understood correctly.
I think here that you want to display a nice error dialog in the application's UI when something goes wrong on a plugin unload action
Again, let's take a look in the code for
The
In this situation, I explained to you how things work now (PF4J3), and I admit that something can be wrong and things can be improved. |
So, it's time to take a decision about releasing or not PF4J 3 in this format. |
Hi, @decebals, Thanks for the explanations! Would it make sense to make We have a rather limited use-case: explicitly load/unload 3rd-party plugins with some extensions, no plugin dependencies, and a default Also, would it make sense if the |
@dmitry-timofeev |
With e81d905 I converted |
Thanks for the updates! I've upgraded the patch to the latest snapshot, our tests pass (they, however, cover only a small subset of the PF4J functionality). |
PF4J 3 released. |
I think that is time to talk about PF4J 3.x roadmap.
PF4J is maintained under the Semantic Versioning guidelines, so in a new major version (3.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: