Problem/Motivation
#2934995: Add a "Manage permissions" tab for each bundle that has associated permissions applied to all entity types that have bundles and set field_ui_base_route
in the entity annotation. That issue was originally fixed in 9.3.x, then reverted because it conflicted with existing admin paths for at least one contrib module.
#2934995 was not reverted in the 9.4.x branch. One option is to leave it as is and warn contrib module maintainers to update their modules to be compatible. This issue is to implement another option: only add the new Permissions form if a module adds certain annotations to its entity classes.
Proposed resolution
- Replace the route subscriber with a route provider.
- Register a new link type.
- Add annotations to core classes to use the new link type and route provider.
Remaining tasks
- Update the change record Add "Manage permissions" tab after "Manage display"
User interface changes
To be determined.
If we enable the Permissions form for all the core entity types affected by #2934995: Add a "Manage permissions" tab for each bundle that has associated permissions, then there will be no changes. We might decide not to enable it for some entity types.
API changes
Replace Drupal\user\Routing\RouteSubscriber
, which was added in #2934995: Add a "Manage permissions" tab for each bundle that has associated permissions, with Drupal\user\Entity\UserPermissionsRouteProvider
.
Data model changes
None
Release notes snippet
todo