So according to the official documentation of hook_entity_bundle_info() there are only three keys that each bundle can hold: label, uri_callback(will be dropped) and translatable.
You can clearly see that this is completely useless if we cannot change more thant those few things per bundle.
I have multiple cases where I need to set bundle-specific settings that are not just a "label". For example I have multiple vocabularies that live on a special paths and I need to provide the Field UI(local tasks) for them but I cannot because I am not able to change the field_ui_base_route value.
Or I want to have a different paths for different entities of certain bundle. The uri_callback will be dropped but even now this is not possible due to the order that Drupal determines the link templates(the uri_callback is basically never called).
And so on. So as a developer I would expect to be able to change bundle-specific classes and settings that are provided by the entity annotation.
---
Ideally the entity bundles would hold the same data that the entity annotation holds, but it would be alterabe per-bundle, so each bundle could have a different storage handler, access handler, link templates and so on. As of now, this is not very flexible when all bundles do have the same configuration. Everything(entity/bundle info) is cached so it has no performance impact but the gain in flexibility is immense.
Comments
Comment #1
Anonymous (not verified) CreditAttribution: Anonymous commented