Например, в конфиге пакета 0.1.0:
MyInterface::class => MyImplementation::class
В приложении используется MyInterface
и всё работает.
В конфиге пакета 0.2.0 конфигурация этого интерфейса убирается. Пакет работает отлично.
Но после обновления, моё приложение уже не будет работать, так как не сможет получить реализацию интерфейса.
Поздравляю, ты сломал обратную совместимость, так как интерфейс это контракт, а ты его удалил. ССЗБ