Problem/Motivation
Over in #2228763: Create a comment-type config entity and use that as comment bundles, require selection in field settings form we need a field type to be able to nominate some config-dependencies to any field config instances that use that type.
Proposed resolution
Ideally we would be able to make FieldItemBase implement ConfigurablePluginInterface but because of the whole Typed Data Plugin Manager <-> Field Type Plugin manager interdependency where we can't use the field-type plugin manager to create a field item interface, and we can't boot a field item interface without an entity - we are forced to create a static method on the FieldItemInterface/FieldItemBase - in a similar fashion to what we do for schema etc.
We also need widgets and formatters to be able to do the same for Entity*Display config entities. One interesting thuing is that Views include formatters configurations too, so ultimately the dependencies should bubble up in Views config entities as well. Not sure Views is ready for that atm though.
Remaining tasks
Reviews
User interface changes
None
API changes
Only additions, FieldItemInteface::calculateDependencies added, base implementation in FieldItemBase.