config: Do not fail on unknown config keys - hugo - [fork] hugo port for 9front
(HTM) git clone git@git.drkhsh.at/hugo.git
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Submodules
(DIR) README
(DIR) LICENSE
---
(DIR) commit c1df5b1b0b032b4ee926369c2325aca0de93c67c
(DIR) parent be8e2de59786327a83a1b41bb9f9608a49b5f7a0
(HTM) Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date: Mon, 31 Jul 2023 11:20:37 +0200
config: Do not fail on unknown config keys
Make it a warning.
One such example I found in an old site is `blackfriday`. These should be fixed/removed, but it's not important enough
to fail the build.
Diffstat:
M config/allconfig/allconfig.go | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
---
(DIR) diff --git a/config/allconfig/allconfig.go b/config/allconfig/allconfig.go
@@ -744,7 +744,7 @@ func fromLoadConfigResult(fs afero.Fs, logger loggers.Logger, res config.LoadCon
all := &Config{}
- err := decodeConfigFromParams(fs, bcfg, cfg, all, nil)
+ err := decodeConfigFromParams(fs, logger, bcfg, cfg, all, nil)
if err != nil {
return nil, err
}
@@ -832,7 +832,7 @@ func fromLoadConfigResult(fs afero.Fs, logger loggers.Logger, res config.LoadCon
// Create a copy of the complete config and replace the root keys with the language specific ones.
clone := all.cloneForLang()
- if err := decodeConfigFromParams(fs, bcfg, mergedConfig, clone, differentRootKeys); err != nil {
+ if err := decodeConfigFromParams(fs, logger, bcfg, mergedConfig, clone, differentRootKeys); err != nil {
return nil, fmt.Errorf("failed to decode config for language %q: %w", k, err)
}
if err := clone.CompileConfig(logger); err != nil {
@@ -904,7 +904,7 @@ func fromLoadConfigResult(fs afero.Fs, logger loggers.Logger, res config.LoadCon
return cm, nil
}
-func decodeConfigFromParams(fs afero.Fs, bcfg config.BaseConfig, p config.Provider, target *Config, keys []string) error {
+func decodeConfigFromParams(fs afero.Fs, logger loggers.Logger, bcfg config.BaseConfig, p config.Provider, target *Config, keys []string) error {
var decoderSetups []decodeWeight
@@ -917,7 +917,7 @@ func decodeConfigFromParams(fs afero.Fs, bcfg config.BaseConfig, p config.Provid
if v, found := allDecoderSetups[key]; found {
decoderSetups = append(decoderSetups, v)
} else {
- return fmt.Errorf("unknown config key %q", key)
+ logger.Warnf("Skip unknown config key %q", key)
}
}
}