From 3202b370203432bcc4651e159db0d9e6f9d1ed42 Mon Sep 17 00:00:00 2001 From: Gregor Jasny Date: Sun, 14 Nov 2021 17:13:01 +0100 Subject: [PATCH] feat(core)!: remove nonstandard append mode --- core/include/prometheus/registry.h | 4 ---- core/src/registry.cc | 14 ++++++-------- core/tests/registry_test.cc | 17 ----------------- 3 files changed, 6 insertions(+), 29 deletions(-) diff --git a/core/include/prometheus/registry.h b/core/include/prometheus/registry.h index 2ca183f2..305eed09 100644 --- a/core/include/prometheus/registry.h +++ b/core/include/prometheus/registry.h @@ -50,10 +50,6 @@ class PROMETHEUS_CPP_CORE_EXPORT Registry : public Collectable { Merge, /// \brief Throws if a family with the same name already exists. Throw, - /// \brief Never merge and always create a new family. This violates the - /// prometheus specification but was the default behavior in earlier - /// versions - NonStandardAppend, }; /// \brief name Create a new registry. diff --git a/core/src/registry.cc b/core/src/registry.cc index ad565d35..7070d928 100644 --- a/core/src/registry.cc +++ b/core/src/registry.cc @@ -120,15 +120,13 @@ Family& Registry::Add(const std::string& name, const std::string& help, } } - if (insert_behavior_ != InsertBehavior::NonStandardAppend) { - auto same_name = [&name](const std::unique_ptr>& family) { - return name == family->GetName(); - }; + auto same_name = [&name](const std::unique_ptr>& family) { + return name == family->GetName(); + }; - auto it = std::find_if(families.begin(), families.end(), same_name); - if (it != families.end()) { - throw std::invalid_argument("Family name already exists"); - } + auto it = std::find_if(families.begin(), families.end(), same_name); + if (it != families.end()) { + throw std::invalid_argument("Family name already exists"); } auto family = detail::make_unique>(name, help, labels); diff --git a/core/tests/registry_test.cc b/core/tests/registry_test.cc index 69937074..a346525f 100644 --- a/core/tests/registry_test.cc +++ b/core/tests/registry_test.cc @@ -81,23 +81,6 @@ TEST(RegistryTest, reject_different_type_than_summary) { EXPECT_ANY_THROW(BuildHistogram().Name(same_name).Register(registry)); } -TEST(RegistryTest, append_same_families) { - Registry registry{Registry::InsertBehavior::NonStandardAppend}; - - std::size_t loops = 4; - - while (loops-- > 0) { - BuildCounter() - .Name("counter") - .Help("Test Counter") - .Register(registry) - .Add({{"name", "test_counter"}}); - } - - auto collected = registry.Collect(); - EXPECT_EQ(4U, collected.size()); -} - TEST(RegistryTest, throw_for_same_family_name) { const auto same_name = std::string{"same_name"}; Registry registry{Registry::InsertBehavior::Throw};