Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions developer_manual/release_notes/deprecations.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@ New deprecations

.. todo:: This page needs a section for every new deprecation.

Application management
^^^^^^^^^^^^^^^^^^^^^^

- ``\OCP\AppFramework\App::buildAppNamespace`` is deprecated in favor of non-static method ``\OCP\App\IAppManager::getAppNamespace``


Older deprecations
------------------

Expand Down
9 changes: 9 additions & 0 deletions developer_manual/release_notes/new.rst
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,12 @@ but they might be required to have a fully working instance later on.
Expensive repair steps are only executed when explicitly requested by the administrator.

See :ref:`migration-repair-steps` for details.

Application namespace management
--------------------------------

``\OCP\App\IAppManager`` was extended with two new methods related to application namespaces:
- ``getAppNamespace(string $appId): string`` returns the namespace for an application from its appid
- ``getAppFromNamespace(string $className): ?string`` does the opposite. Less common but it is used in guests application.

This replaces a static method in ``\OCP\AppFramework\App`` which is now deprecated.
Comment on lines +41 to +45
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This code needs a dedicated section, not just the announcement. We will clear the New in this release page after branch-off. See the other items on this page.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no existing IAppManager documentation, so one has to be started. I suggest to put it under https://docs.nextcloud.com/server/latest/developer_manual/app_development/index.html.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do not understand what this means.
The existing IAppManager documentation is at https://nextcloud-server.netlify.app/classes/ocp-app-iappmanager
Linked in https://docs.nextcloud.com/server/latest/developer_manual/digging_deeper/api.html#php-public-api

Why would we duplicate this in this repository?

I thought that after branch-off this would be moved to release-notes/upgrade_to_34.rst, what is the actual process?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The class reference is great for diving into details, but it doesn't tell you how and why a class should be used.
Not every app developer is a senior with years of experience with Nextcloud. They don't know how things work just by looking at documentation of classes.

This section was recently reorganized because we only had the diff and not the current state. New will not be moved into a page. We want to get away from this heap of diffs to a comprehensive manual for developers.

I'll try to document this goal better.

Loading