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

jcandan created an issue. See original summary.

jcandan’s picture

Status: Active » Closed (works as designed)
Related issues: +#3180322: Fix UnmetDependenciesException

Marked 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/.