summaryrefslogtreecommitdiff
path: root/src/buildtool/logging
AgeCommit message (Collapse)Author
2025-02-28LogConfig: avoid returning constant valuesMaksim Denisov
...and remove an unused method.
2025-02-06logging: switch time stamps to UTCKlaus Aehlig
Time stamps in local time without explicit time zone are ambigious, definitely at the end of daylight saving time. Moreover, even if explicit time zones were given, it is still unconvenient to correctly sort event expressed in different time zones. However, with increased use of `just serve`, logs originating from different machines become the norm. Therefore, normalize all time stamps to UTC (and explicitly state that this is the time zone used).
2024-11-14logging: Implement IWYU suggestionsPaul Cristian Sarbu
2024-10-08Name type template parameters using CamelCase.Maksim Denisov
2024-10-07Enable cppcoreguidelines-* checks.Maksim Denisov
2024-10-07Enable readability-redundant-member-init check.Maksim Denisov
2024-09-26Fix enum sizes proposed by clang-tidy.Maksim Denisov
Enable performance-enum-size check.
2024-08-27Reformat code to comply with clang-format 18Klaus Aehlig
... while keeping our .clang-format file.
2024-04-10log_sink_cmdline: support restricted log limitKlaus Aehlig
Messages on the command line can be more disturbing than, e.g., in a log file. In particular, for debugging it often is useful to have very verbose logs. In order to have the command-line experience manageable also in this cases, support restricting the command-line logging further. In this way, while interacting with concise command-line messages, verbose logs are still written for later analysis.
2024-04-08Consistently guard all POSIX C includesPaul Cristian Sarbu
2024-03-26Add missing system includesPaul Cristian Sarbu
Main culprits: - std::size_t, std::nullptr_t, and NULL require <cstddef> - std::move and std::forward require <utility> - unordered maps and sets require respective includes - std::for_each and std::all_of require <algorithm>
2024-03-19logger: Add common methods for global and named loggersPaul Cristian Sarbu
This allows to be explicit and thus have better control on where messages get logged.
2024-03-15Clean up more includes and targetsPaul Cristian Sarbu
Some of the more specific issues addressed: - missing log_level target/include - header-only libs wrongly marking deps as private - missing/misplaced gsl includes
2024-02-15Replace glibc sync stubs when linking pthreadsOliver Reiche
... glibc provides synchronization stubs for single-threaded environments as weak symobls. When linking pthreads, these weak symbols must be replaced by the strong symbols provided by the pthread library. For dynamically linking pthreads, this is done automatically. However, to support this for static linking, we must ensure to link the whole archive.
2023-11-30Resolve inconsistencies in third-party headers include formatPaul Cristian Sarbu
2023-04-26imports: Switch to Microsoft GSL implementationOliver Reiche
... with two minor code base changes compared to previous use of gsl-lite: - dag.hpp: ActionNode::Ptr and ArtifactNode::Ptr are not wrapped in gsl::not_null<> anymore, due to lack of support for wrapping std::unique_ptr<>. More specifically, the move constructor is missing, rendering it impossible to use std::vector<>::emplace_back(). - utils/cpp/gsl.hpp: New header file added to implement the macros ExpectsAudit() and EnsureAudit(), asserts running only in debug builds, which were available in gsl-lite but are missing in MS GSL.
2023-04-04command-line logging: change color schemeKlaus Aehlig
... to make it readable also on white background, where yellow is hardly readable.
2023-03-21LogLevel: support conversion from floating-point numbersKlaus Aehlig
... so that, e.g., we can set the logging from an expression value.
2023-03-15add missing ldflags -pthread and use -pthread consistentlyAlberto Sartori
2023-02-01Update fmtlib to version 9.1.0Klaus Aehlig
Co-authored-by: Michael Thies <mail@mhthies.de>
2022-11-07Silence GCC warnings on missing return statementsOliver Reiche
2022-10-12Add copyright and license notice to all source and header filesKlaus Aehlig
Signed-off-by: Goetz Brasche <goetz.brasche@huawei.com>
2022-06-13Logging: Extend logger by level for PerformanceOliver Reiche
2022-06-02Add missing direct dependenciesKlaus Aehlig
2022-04-04Add a new log level for progress updatesKlaus Aehlig
2022-04-04file logging: shorten continuation prefixKlaus Aehlig
While on the console, we want multi-line logs nicely aligned, when logging to a file, unique readability is enough. So we can fix the continuation prefix to a fixed string (with non-overlapping initial segment). This makes log files easier to scan and also avoids very long lines, given that the more complete message prefixes are very long.
2022-03-23Apply changes suggested by clang-tidy 11Oliver Reiche
2022-03-23Apply changes suggested by clang-format 11Oliver Reiche
2022-03-16Format: Apply compact JSON formattingOliver Reiche
2022-03-01flush after logging to stderrKlaus Aehlig
2022-02-22Initial self-hosting commitKlaus Aehlig
This is the initial version of our tool that is able to build itself. In can be bootstrapped by ./bin/bootstrap.py Co-authored-by: Oliver Reiche <oliver.reiche@huawei.com> Co-authored-by: Victor Moreno <victor.moreno1@huawei.com>