Problem/Motivation
When an install profile lists a module to be installed, the following Exception occurs:
Drupal\Core\Config\UnmetDependenciesException: Configuration objects provided by <em class="placeholder">broken_link</em> have unmet dependencies: <em class="placeholder">views.view.broken_link (views)</em> in /app/web/core/lib/Drupal/Core/Config/UnmetDependenciesException.php:98
The issue is replicable when the module contains a views configuration that lists itself as a dependency:
# views.view.broken_link.yml
dependencies:
module:
- broken_link
Steps to reproduce
For convenience, I have reproduced the issue here.
1. Create a basic install profile *.info.yml, listing the following:
dependencies:
- node
- block
- views
- user
- broken_link
2. Install the profile.
These steps should produce the error noted above. Additional trials of other modules self-listing configuration dependency should be tested (e.g. views_json_source).
The module may be listed in either dependencies or install, this error occurs in both cases.
Proposed resolution
Allow install profiles to proceed when a dependency's configuration depends on itself, as would be the case when the module provides Views configurations.
Remaining tasks
TBD
User interface changes
TBD
API changes
TBD
Data model changes
TBD
Release notes snippet
TBD
Comments
Comment #2
jcandan commentedMarked Closed (works as designed).
Having looked more closely at Optional configuration provided by modules and themes is now stored in config/optional, it is a bug with Broken Link itself. Either they need to list Views as a dependency or move the views configuration file to
config/optional/.