diff --git a/fmt/src/config/mod.rs b/fmt/src/config/mod.rs index 6333124..46a5a4f 100644 --- a/fmt/src/config/mod.rs +++ b/fmt/src/config/mod.rs @@ -21,12 +21,11 @@ use std::path::PathBuf; use serde::de::Error; use serde::Deserialize; use serde::Deserializer; -use serde::Serialize; use toml::Value; use crate::default_true; -#[derive(Debug, Clone, Default, Serialize, Deserialize)] +#[derive(Debug, Clone, Default, Deserialize)] #[serde(default, rename_all = "camelCase")] pub struct Config { #[serde(default = "default_cwd")] @@ -57,7 +56,7 @@ pub struct Config { pub additional_headers: Vec, } -#[derive(Debug, Clone, Copy, Serialize, Deserialize)] +#[derive(Debug, Clone, Copy, Deserialize)] pub struct Git { pub attrs: FeatureGate, pub ignore: FeatureGate, @@ -72,7 +71,7 @@ impl Default for Git { } } -#[derive(Debug, Clone, Copy, Ord, PartialOrd, Eq, PartialEq, Serialize, Deserialize)] +#[derive(Debug, Clone, Copy, Ord, PartialOrd, Eq, PartialEq, Deserialize)] #[serde(rename_all = "snake_case")] pub enum FeatureGate { /// Determinate whether turn on the feature. @@ -109,7 +108,7 @@ impl FeatureGate { } } -#[derive(Debug, Clone, Eq, PartialEq, Serialize, Deserialize)] +#[derive(Debug, Clone, Eq, PartialEq)] pub enum Mapping { Filename { pattern: String, diff --git a/fmt/src/processor.rs b/fmt/src/processor.rs index 99ee01c..673734c 100644 --- a/fmt/src/processor.rs +++ b/fmt/src/processor.rs @@ -82,7 +82,11 @@ pub fn check_license_header( let mut mapping = config.mapping.clone(); if config.use_default_mapping { let default_mapping = default_mapping(); - mapping.extend(default_mapping); + for m in default_mapping { + if !mapping.contains(&m) { + mapping.insert(m); + } + } } mapping }; diff --git a/tests/bom_issue/licenserc.toml b/tests/bom_issue/licenserc.toml index 767fc59..3eeab3c 100644 --- a/tests/bom_issue/licenserc.toml +++ b/tests/bom_issue/licenserc.toml @@ -7,5 +7,5 @@ additionalHeaders = [ "style.toml" ] -[mapping.HASH_SOURCE_STYLE] +[mapping.CS_TEST_STYLE] extensions = ["cs"] diff --git a/tests/bom_issue/style.toml b/tests/bom_issue/style.toml index 72d8013..f759213 100644 --- a/tests/bom_issue/style.toml +++ b/tests/bom_issue/style.toml @@ -1,4 +1,4 @@ -[HASH_SOURCE_STYLE] +[CS_TEST_STYLE] firstLine = "// -------------------------------------------------------" endLine = "// -------------------------------------------------------\n" skipLinePattern = "^#!.*$"