From fd1db5e9446c9f4cb6f9bd2e7162b6a3cffae24d Mon Sep 17 00:00:00 2001 From: Klaus Aehlig Date: Tue, 14 May 2024 12:08:57 +0200 Subject: configured_target: limit size of short representation ... to 320 chars for the configuration to keep error messages managable in case of heavy configurations (e.g., generated internally by a complex configure target). --- src/buildtool/build_engine/target_map/configured_target.hpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/buildtool/build_engine/target_map/configured_target.hpp b/src/buildtool/build_engine/target_map/configured_target.hpp index e5713460..962508ec 100644 --- a/src/buildtool/build_engine/target_map/configured_target.hpp +++ b/src/buildtool/build_engine/target_map/configured_target.hpp @@ -30,6 +30,8 @@ struct ConfiguredTarget { BuildMaps::Base::EntityName target; Configuration config; + static constexpr std::size_t kConfigLength = 320; + [[nodiscard]] auto operator==( BuildMaps::Target::ConfiguredTarget const& other) const noexcept -> bool { @@ -42,7 +44,9 @@ struct ConfiguredTarget { [[nodiscard]] auto ToShortString() const noexcept -> std::string { return fmt::format( - "[{},{}]", target.ToString(), PruneJson(config.ToJson()).dump()); + "[{},{}]", + target.ToString(), + AbbreviateJson(PruneJson(config.ToJson()), kConfigLength)); } }; -- cgit v1.2.3