-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Public API OC6 - introduce lib/private #4988
Conversation
Is there some documentation of the differences between the public and private namespace? Especially documentation of the guarantees of the public namespace? |
The idea is to pump up the PHPDoc on all OCP entities and generate proper api docs on api.owncloud.org The separation of OC and OCP should already be explained in the existing dev docs afaik |
👍 Clicked a bit around and all works as before. |
Conflicts: lib/private/vcategories.php
I am not sure whether this is such a good idea. I remember seing quite a few classes in OCP that are trivial wrappers around equivalent classes in the private namespace. Maintaining these is just unnecessary work. Aren't there alternative approaches? For example, I don't remember Symfony and Doctrine having equivalents of OC and OCP. |
The new public api will be introduced with oc6 - the basic concept is described in #4459 and #4863 New APIs are introduced on an additive approach where we add new interfaces and methods to existing interfaces.
It's additional work - yes - but necessary for sure.
Well this comparison is not valid because you upgrade these components on purpose and you are in the position to adopt the changed API calls. @bantu does that make sense? |
@DeepDiver1975 Yes, that helps. Thanks. |
Thanks for asking these questions - from time to time I'm lost in details and it's good to get dragged out and see the big picture again! ;-) @bantu Keep up asking questions and thanks for all the code reviews - much appreciated! |
Test passed. |
As discussed in #4863 (comment) we clearly separate public namespace from private namespace.
lib/public - OCP
lib/private - OC
@karlitschek @blizzz @bartv2 @bantu @icewind1991 THX