summaryrefslogtreecommitdiff
path: root/src/buildtool/main/describe.cpp
AgeCommit message (Collapse)Author
6 daysjust describe: Fix typo in output messagePaul Cristian Sarbu
2025-05-06Extend just exit codes to distinguish different kinds of failuresKlaus Aehlig
2024-11-14main: Implement IWYU suggestionsPaul Cristian Sarbu
2024-08-07Replace classic C boolean operators with keywordsMaksim Denisov
! => not; && => and, || => or
2024-06-25describe: also describe "configure" targets in more detailKlaus Aehlig
Most built-in rules are just described by their name, assuming they are known to the user anyway. One exception, however, are "export" targets, as those serve as interfaces to (logical) repositories and hence is supposed to have a documentation of the target itself. Over time, however, "configure" targets have evolved to become internal interfaces (maybe even for an external target), e.g., to provide default values and hence make better use of the actual export target. Therefore it is desirable to provide a bit more information when asked to describe a "configure" target. - As "configure" targets have a fixed set of keys, adding a "doc" field is a conservative extension; this can be useful to give an overview what the target is about. - An important information of a "configure" target is the target that is configured. While this, in general, is an expression, in the typical cases, the description is very short (a literal target name, or a variable). So we can afford to show the definition.
2024-06-25Pass IExecutionApi to IExecutionApi by referenceMaksim Denisov
...instead of not_null const ptr.
2024-06-25Pass ApiBundle to describeMaksim Denisov
2024-06-25Instantiate LocalApi and BazelApi at onceMaksim Denisov
...to properly fallback to local api if needed.
2024-06-18Make ServeApi a general class, not a singletonMaksim Denisov
...and adjust interfaces.
2024-06-18Pass ServeApi by reference to the describe functionMaksim Denisov
...instead of using singleton calls.
2024-06-18Use RemoteServeConfig functionality via Instance()Maksim Denisov
...to track changes during refactoring easier.
2024-06-18Use ServeApi functionality via Instance()Maksim Denisov
...to track changes during refactoring easier.
2024-05-17RepositoryConfig: Instance should not be changed once populatedPaul Cristian Sarbu
Once a RepositoryConfig instance gets populated, it must never be changed again. Therefore, all functions accepting these instances should only take them as pointers to const.
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-01-31just serve: Cleanup logging to remove tool namePaul Cristian Sarbu
Also cleans up the logging when parsing the serve service configuration file.
2023-12-14just describe: Query serve endpoint for export targets with absent rootsPaul Cristian Sarbu
2023-12-14just describe: Improve cli description and code documentation of --json optionPaul Cristian Sarbu
2023-11-30Resolve inconsistencies in third-party headers include formatPaul Cristian Sarbu
2023-11-27Refactoring RepositoryConfigPaul Cristian Sarbu
With the introduction of 'just serve', export targets can now be built also independently from one another based on their corresponding minimal repository configuration, as stored in the target cache key. In this context, this commit changes the RepositoryConfig usage from one global (static) instance to pointers passed as necessary throughout the code.
2023-08-25just describe: also show the implict dependenciesKlaus Aehlig
... in the human-readable description. More precisely, for any implicit target field, show - the field documentation given (if any), and - the resolved targets this field contains. However, do not show the actual name of the field, as this name is internal to the rule and not part of the interface.
2023-03-10Update nlohmann::json to 3.11.2Klaus Aehlig
2022-11-28describe: Print rule as ordered JSONOliver Reiche
... with the order for "field_doc" being taken from "string_fields", "target_fields", and "config_fields" (in that order). For "config_doc", the order is taken from the "config_vars" list. Thus, being consistent with the (non-JSON) pretty printing of rules.
2022-10-12Add copyright and license notice to all source and header filesKlaus Aehlig
Signed-off-by: Goetz Brasche <goetz.brasche@huawei.com>
2022-08-05Describe: Move describe code to separate libraryOliver Reiche