summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-06-25Pass ApiBundle to GraphTraverserMaksim Denisov
2024-06-25Instantiate LocalApi and BazelApi at onceMaksim Denisov
...to properly fallback to local api if needed.
2024-06-25Use a general boolean for compatible in MultiRepoCommonArgumentsMaksim Denisov
2024-06-25Remove GraphTraverser's constructor used for tests only.Maksim Denisov
2024-06-25CC defaults: Provide the debug stage also for implicit depsPaul Cristian Sarbu
This ensures that one can inspect, e.g., generated protobuf source files (.pb.cc) or standard library headers while debugging proto libraries or general C++ libraries and binaries, respectively.
2024-06-24CC/proto: Libraries should be aware of DEBUG flagPaul Cristian Sarbu
2024-06-24CC: Fix some doc typosPaul Cristian Sarbu
2024-06-19rules-cc: Binaries should keep the compile dependency headers for debuggingv1.4.0-alpha+20240619Paul Cristian Sarbu
2024-06-18Make ServeServerImpl a general class, not a singleton.Maksim Denisov
2024-06-18Make RemoteServeConfig a general struct, not a singletonMaksim Denisov
...and adjust interfaces.
2024-06-18Create an individual instance of RemoteServeConfig in testsMaksim Denisov
...instead of intialization of the singleton.
2024-06-18Create an individual instance of RemoteServeConfig in just-mrMaksim Denisov
...instead of initialization of the singleton.
2024-06-18Create an individual instance of RemoteServeConfig in justMaksim Denisov
...instead of initialization of the singleton. Use builder for creation and validity check.
2024-06-18Make ServeApi a general class, not a singletonMaksim Denisov
...and adjust interfaces.
2024-06-18Pass RemoteAddress to ConfigurationClient by valueMaksim Denisov
...instead of using singleton calls.
2024-06-18Pass ServeApi to just-mr maps by referenceMaksim Denisov
...instead of using singleton calls.
2024-06-18Pass ServeApi to ServeServerImpl by referenceMaksim Denisov
...instead of using singleton calls.
2024-06-18Pass RemoteServeConfig to ServeServerImpl by referenceMaksim Denisov
...instead of using singleton calls.
2024-06-18Pass ServeApi by reference to the describe functionMaksim Denisov
...instead of using singleton calls.
2024-06-18Pass ServeApi as a field of context to the analysisMaksim Denisov
...instead of using singleton calls.
2024-06-18Use ServeApi during bootstrapMaksim Denisov
...with a default implementation. Although it is not used directly, it will be needed for instantiation of std::optional.
2024-06-18Use an extensible structure to pass arguments to the analysis.Maksim Denisov
2024-06-18Store services in ServeApi by value.Maksim Denisov
* No stackoverflow is possible: there is just one instance of ServeApi and services are relatively 'light'; * Services are not optional and cannot be changed during their use; * operator-> is not free.
2024-06-18Mark ServeApi's services' methods contant.Maksim Denisov
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-06-17Use c++20 standard in clang-formatMaksim Denisov
2024-06-17executor: properly separate stdout and stderr in log messagesKlaus Aehlig
... about processes producing both, stdout and stderr. By supporting unique readability of the output, we facilitate the understanding of the messages provided by actions.
2024-06-17Add utility function for prefixing each line of a stringKlaus Aehlig
... and thus allowing proper quoting of command output.
2024-06-12Tree-overlay design: support disjoint overlayKlaus Aehlig
2024-06-11Move creation of TargetCacheKey description to TargetCacheMaksim Denisov
...to use corresponding Storage for storing auxiliary information.
2024-06-10Add support for protobuf compiler flagsOliver Reiche
2024-06-07Move reading functionality to BazelNetworkReaderMaksim Denisov
...to enable validation of received blobs.
2024-06-07Validate all blobs received over the network.Maksim Denisov
2024-06-07Use BaselCasClient in BazelNetworkReaderMaksim Denisov
...bypassing BazelNetwork layer.
2024-06-07Mark methods constant in BazelCasClient.Maksim Denisov
2024-06-07Remove unused codeMaksim Denisov
2024-06-07Remove unused code.Maksim Denisov
IExecutionApi::UploadFile was introduced to handle adding of a temporary file to the storage. The call was redirected to LocalCAS internal methods that do the similar thing, so this virtual method can be removed.
2024-06-07Update ChangelogKlaus Aehlig
2024-06-06Update documentation about tc writing in the presence of serveKlaus Aehlig
2024-06-06Add test verifying cache consistency if some targets are servedKlaus Aehlig
... but not all. Also in this case, if an target-level cache entry is written, the dependencies have to be written as well.
2024-06-06tc writing: allow different log levelKlaus Aehlig
... for failures instead of the binary strict_logging. In this way, we can log at log level Error in the serve instance, and for the client at level Warning or Info, depending on whether failure is expected (i.e., if targets are potentially taken from a serve endpoint) or not.
2024-06-06tc cache: abort writing if a dependent target is not availableKlaus Aehlig
After successful build of an export target target a cache entry is written. As those export targets have a dependency structure, care is taken to write them in correct order. Writing a cache entry for an export target requires knowledge of the analysis result of that target. Originally, all targets used to be analysed locally, so that information was available for every target that was not read from the local target cache already. However, with the introduction of serve endpoints, it can happen that a target was analyzed locally, but it depends on targets obtained from serve. In this case, we have to refrain from writing a target-level cache entry to keep the the consistency invariants of the target-level cache.
2024-06-05Add design on how to extend our handling of symbolic linksKlaus Aehlig
2024-06-04blob containers: Store and upload taking into account content sizePaul Cristian Sarbu
Update logic populating containers to use the new method which is aware of the maximum transfer limit.
2024-06-04common_api: Add method to help limit memory footprint of containers...Paul Cristian Sarbu
...by proactively calling the Upload method for large blobs and containers as soon as the transfer limit is reached.
2024-06-04bazel_network: Change UploadBlobs to also accept an rvaluePaul Cristian Sarbu
This unifies the signature of all uploader functions consuming a BlobContainer type.
2024-06-04ContentBlobContainer: Add content size fieldPaul Cristian Sarbu
As the ContentBlobContainer is used to store actual content needed to be transferred, it is useful to automatically keep track of the running (bytes) size of the data being stored.
2024-06-04rule language: support SYMLINK functionKlaus Aehlig
... to allow generating symlinks as part of a rule, as it is already described in our documentation.
2024-06-03debug rule: Fix staging of headersPaul Cristian Sarbu
For libraries the headers of private dependencies were wrongly skipped from staging. For binaries, no headers were passed at all in the provides map. To fix these issues, an additional field is added in the provides map to ensure we collect, and then properly stage, all needed headers for both libraries and binaries.