Misleading message on "admin/config/development/configuration" about configurations handled via config_overlay

Created on 12 February 2024, 8 months ago
Updated 13 March 2024, 7 months ago

Problem/Motivation

After enabling the module and exporting configuration, if you visit "/admin/config/development/configuration", you see the following misleading message,

The following configuration entities are ignored due to the Config Ignore Settings and therefore not displayed in the list above

and a big list of configurations...

Thereafter if you visit "Config Ignore Settings", it leads to even more confusion as the settings won't match the expectation from the message.

Steps to reproduce

See above.

Proposed resolution

TODO

Remaining tasks

TODO

User interface changes

TODO

API changes

N/A

Data model changes

N/A

Feature request
Status

Fixed

Version

2.1

Component

Code

Created by

🇩🇪Germany D34dMan Hamburg

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @D34dMan
  • 🇩🇪Germany tstoeckler Essen, Germany

    Interesting, thanks for raising this. I rarely use the configuration UI, so I had never seen this.

    The message only shows up when using version 8.x-2.x of Config Ignore. It was removed in 8.x-3.x without much explanation (see #3099674: Create 3.x version using the new Drupal 8.8 API ), presumably because it did not work when porting to the core API.

    So basically the easiest way to solve this, I suppose, is to upgrade Config Ignore.

    Also related is #3182999-9: Automated tests failing due to config_filter dependency (in particular comment #9, which the link links to), where the code that generates that message was updated to use the core transformer API. I don't understand all of the context, but reverting that relevant part of the code, i.e:

    diff --git a/config_ignore.module b/config_ignore.module
    index 96e1efd..c12713c 100644
    --- a/config_ignore.module
    +++ b/config_ignore.module
    @@ -16,7 +16,7 @@ function config_ignore_form_config_admin_import_form_alter(&$form, FormStateInte
     
       // Load Services that we need.
       $stock_storage_sync = \Drupal::service('config_filter.storage_factory')->getSyncWithoutExcluded(['config_ignore']);
    -  $active_storage_sync = \Drupal::service('config.import_transformer')->transform(\Drupal::service('config.storage.sync'));
    +  $active_storage_sync = \Drupal::service('config.storage.sync');
       $storage = \Drupal::service('config.storage');
     
       // Create two StorageComparer objects, one with the filter enabled and one
    

    actually makes the message disappear for me. That's where I stopped my investigation, though.

    So not really sure how to proceed here.

    I don't think there's anything Config Overlay can do to influence the result of this message, as far as I can tell that code in Config Ignore to generate that message is just broken as soon as there is any storage transformer that removes configuration. But it seems that @bircher did that change intentionally, so I don't know how realistic it would be to get that code changed. In particular as that's for an old version of Config Ignore that's not even shown on the project page anymore.

    So I guess we could just add a note to Config Overlay's project page about this issue and tell people to upgrade Config Ignore to get rid of this warning. Maybe we could also add an explicit Composer conflict for this version, so people are forced to be running with the new Config Ignore version. On the one hand that seems a little heavy-handed just to avoid an incorrect warning, on the other hand the integration test coverage is already only running with the newer version, so we are at least not testing with the older one.

    Not sure, do you have thoughts about this?

  • 🇩🇪Germany tstoeckler Essen, Germany

    Added 📌 Test with Config Split 1.x and Config Ignore 2.x Active for the test coverage issue.

  • 🇩🇪Germany D34dMan Hamburg

    Thanks for diving into the this.

    So I guess we could just add a note to Config Overlay's project page about this issue and tell people to upgrade Config Ignore to get rid of this warning.

    +1. This should be enough and the issue can be closed. I am satisfied with the explanation and gives me peace of mind that we can ignore the message.

    Maybe we could also add an explicit Composer conflict for this version, so people are forced to be running with the new Config Ignore version. On the one hand that seems a little heavy-handed just to avoid an incorrect warning, on the other hand the integration test coverage is already only running with the newer version, so we are at least not testing with the older one.

    Adding to composer can lead to un-explicable misery for those who are already using config_ignore 2x. As far as the message goes, its just mis-leading. It doesn't break anything.

  • Status changed to Fixed 7 months ago
  • 🇩🇪Germany tstoeckler Essen, Germany

    Yeah, that sounds fair enough. Added a note to the project page now, so closing this. Feel free to re-open if you think something else should be done or if you have suggestions on better wording for the note on the project page.

    Just for the record, I also tested that the message only shows up with Config Overlay 2.x (and Config Ignore 2.x). If you downgrade to Config Overlay 1.x it also disappears (although, of course, it would be better to upgrade Config Ignore instead).

    Thanks again!

  • 🇩🇪Germany tstoeckler Essen, Germany
  • Automatically closed - issue fixed for 2 weeks with no activity.

Production build 0.71.5 2024