diff --git a/src/ConfigRewriter.php b/src/ConfigRewriter.php index d34caee..ba5e54d 100644 --- a/src/ConfigRewriter.php +++ b/src/ConfigRewriter.php @@ -103,6 +103,7 @@ class ConfigRewriter implements ConfigRewriterInterface { foreach ($files as $file) { // Parse the rewrites and retrieve the original config. $rewrite = Yaml::parse(file_get_contents($rewrite_dir . DIRECTORY_SEPARATOR . $file->name . '.yml')); + $original_rewrite = $rewrite; if ($langcode) { /** @var \Drupal\language\Config\LanguageConfigOverride $original_config */ $config = $this->languageConfigFactoryOverride->getOverride($langcode, $file->name); @@ -118,6 +119,9 @@ class ConfigRewriter implements ConfigRewriterInterface { // Unset 'config_rewrite' key before saving rewritten values. if (isset($rewrite['config_rewrite'])) { unset($rewrite['config_rewrite']); + } elseif ($rewrite == $original_rewrite) { + $this->logger->notice('@config does not exist in current configuration or there are no changes to write', ['@config' => $file->name]); + continue; } // Retain the original 'uuid' and '_core' keys if it's not explicitly