summaryrefslogtreecommitdiff
path: root/src/buildtool/main
AgeCommit message (Collapse)Author
2024-12-09analysis: Support artifact build argumentsPaul Cristian Sarbu
As analysis now can compute roots, i.e., can build artifacts, it needs to support setting the local launcher, action timeout, and the build jobs. The stage and rebuild arguments, which are also needed by the graph traversal, as well as other build-related arguments, remain not supported for the analysis subcomamnd, however they remain honored if set by subcommands that trigger an implicit analysis (e.g., build or install).
2024-12-05Also for installation to stdout prefer local CASKlaus Aehlig
... to avoid unnecessary network fetches.
2024-12-04Rehash root lookup, if building in compatible modeKlaus Aehlig
To avoid unnecessary staging and git imports of computed roots for build in compatible mode, use the rehashing functionality to allow us to compute the git tree of that root in memory.
2024-11-22build_utils: fix doc stringKlaus Aehlig
When the signature changed in df4ac66b272d1e26df42855143dda79fc268b558, the doc string should have been adapted as well. Do this now.
2024-11-21Materialize computed roots before top-level analysisKlaus Aehlig
Add a basic implementation of computed roots. So far we neither enforce nor make good use of the fact that the underlying target of a computed root has to be an export target of a content-fixed repository; instead, we always install the root to a temporary directory and pick it up from there. Still, the basic functionality is there, and it is minimally useful.
2024-11-20Return ResultTargetMap from analysisMaksim Denisov
...instead of filling in a map passed from the outside.
2024-11-14main: Implement IWYU suggestionsPaul Cristian Sarbu
2024-11-14file_system: Implement IWYU suggestionsPaul Cristian Sarbu
2024-11-14common: Implement IWYU suggestionsPaul Cristian Sarbu
2024-11-13just main: subcommand traverse should only traverseKlaus Aehlig
... regardless of success. If traversing fails, we should just return failure. In this way, we can also avoid an unnecessary else-branch. While there, always return normally for tarverse, avoiding direct exits.
2024-11-04Start 1.5 development cycleKlaus Aehlig
2024-11-04Release 1.4.0v1.4.0Klaus Aehlig
2024-10-30Release 1.4.0~beta1v1.4.0-beta1Klaus Aehlig
2024-10-29Clean up unused dependenciesKlaus Aehlig
2024-10-25Add dependencies explicitly that are included directlyKlaus Aehlig
... instead of relying on those dependencies being pulled in indirectly.
2024-10-21configured_target: honor --expression-log-limit when shortening representationKlaus Aehlig
2024-10-08just analyse: support dumping the action graph without originsKlaus Aehlig
The origins of actions are useful for understanding the action graph; if, however, the action graph is only to be used for further computaiton, this is unnecessary information. Therefore, add an option to dump the action graph without origins.
2024-10-07Disable misc-no-recursion checkMaksim Denisov
...since we use recursion for trees a lot, but skip this check manually.
2024-10-07Enable misc-* checks.Maksim Denisov
2024-10-07Enable readability-* checks.Maksim Denisov
2024-10-07Enable google-* checks.Maksim Denisov
2024-10-07Enable bugprone-narrowing-conversions checkMaksim Denisov
2024-09-26Fix enum sizes proposed by clang-tidy.Maksim Denisov
Enable performance-enum-size check.
2024-09-23Reorder dependencies and remove duplicates in OSSMaksim Denisov
2024-09-18Add missing #endif comments in headersMaksim Denisov
2024-09-13Remove Compatibility flag from justMaksim Denisov
2024-09-13Pass HashFunction::Type to SourceTargetMapMaksim Denisov
...that is to be used by FileRoot::ToArtifactDescription.
2024-09-13Check compatibility in add_to_cas based on the hash typeMaksim Denisov
2024-09-13Pass ApiBundle to RetrieveSubPathIdMaksim Denisov
...to get access to the protocol type.
2024-09-13Rename Compatibility class to ProtocolTraitsMaksim Denisov
...and move it to the common stage.
2024-09-11Use ArtifactDigestFactory in archiveMaksim Denisov
...to create ArtifactDigests.
2024-09-11Use HashFunction::Type to deserialize ArtifactDescriptionMaksim Denisov
2024-09-11Use ArtifactDigestFactory in install_casMaksim Denisov
2024-08-30Replace bazel_re::Digest in add_to_casMaksim Denisov
...with ArtifactDigest.
2024-08-30Replace bazel_re::Digest in BazelMsgFactory (local trees)Maksim Denisov
...with ArtifactDigest.
2024-08-30Return ArtifactDigest from LocalCAS::StoreMaksim Denisov
2024-08-29async_map_utils: Pass key_printer also for reporting pending tasks...Paul Cristian Sarbu
...in async map instances, same as for reporting cycles. This removes the restriction that the key object has to posses the ToString method, allowing it to be used, e.g., with just-mr maps. The now obsolete HasToString concept is removed.
2024-08-27Reformat code to comply with clang-format 18Klaus Aehlig
... while keeping our .clang-format file.
2024-08-26install-cas --archive: Fix empty directories not added to archivePaul Cristian Sarbu
Also add empty directory in test script to ensure we don't regress in the future. While there, fix some typos.
2024-08-07Replace classic C boolean operators with keywordsMaksim Denisov
! => not; && => and, || => or
2024-08-06analyse: extend provides map when switching to action inputKlaus Aehlig
When switching from a target to the artifacts that are the inputs of a particular action, the provides map is also switched to provide additional (besides the inputs) information about the action, in particular the command. Extend this provides map with the remaining information, in particular the working directory.
2024-08-02just: report completion of analyse earlierKlaus Aehlig
... right after having successfully finished analysing the target. As a side effect, we also get the statistics of the export targets reported on analysis requests. As cached export targets project artifacts to known ones, that information is highly relevant there.
2024-07-30Pass ExecutionContext to GraphTraverser and Executor/RebuilderPaul Cristian Sarbu
Also update the classes documentation accordingly.
2024-07-30ApiBundle: Use a creator method instead of constructorPaul Cristian Sarbu
This will allow for ApiBundle to be used together with the TestApi implementation of IExecutionApi in tests. Also rename CreateRemote method to MakeRemote in order to remove any semantical confusion.
2024-07-30Use RemoteContext in install_casPaul Cristian Sarbu
2024-07-30Pass RemoteContext to GraphTraverserPaul Cristian Sarbu
It is passed as a not_null const pointer, to avoid binding to temporaries, and stored as a const reference to be later passed also to Executor/Rebuilder.
2024-07-30Pass RemoteContext to execution serverPaul Cristian Sarbu
2024-07-30Pass LocalContext and RemoteContext to ServeApiPaul Cristian Sarbu
Also switch to using the fields from RemoteContext instances instead of those from ApiBundle.
2024-07-30Use RemoteContext in serve servicesPaul Cristian Sarbu
Also switch to using the fields from RemoteContext instances instead of those from ApiBundle.
2024-07-30Pass RemoteContext to ApiBundlePaul Cristian Sarbu
The CreateRemote method is also updated to receive all remote-related information as arguments, such that it does not have to rely on the ApiBundle internal fields which will eventually be removed.