Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-08-07 | Generate bazel trees in LocalCasReader | Maksim Denisov | |
...and use this functionality in ExecutionServer | |||
2024-08-07 | Avoid deep copies of containers in responses. | Maksim Denisov | |
2024-08-07 | Remove code duplication in Populate method in responses. | Maksim Denisov | |
2024-08-01 | Execution API: support cwd | Klaus Aehlig | |
... following the remote-execution standard that all output paths (but none of the input paths) are relative to the working directory. Therefore, the executor has to do the path translation. For our implementation of the API interface - the local API now handles cwd correctly, - the remote API forwards cwd correctly, and - the git API continues to report actions as not implemented. | |||
2024-07-30 | Pass LocalContext to LocalApi | Paul Cristian Sarbu | |
The context is passed by not_null const pointer to avoid binding to temporaries. The LocalApi also stores the context as const ref for further access and passing it to LocalAction. | |||
2024-07-30 | Add extensible structure for local execution-related entities | Paul Cristian Sarbu | |
2024-07-22 | Rename HashFunction methods and enums | Maksim Denisov | |
2024-07-22 | Use HashFunction from Storage in LocalResponse | Maksim Denisov | |
2024-07-22 | Pass HashFunction to CreateActionDigestFromCommandLine | Maksim Denisov | |
2024-07-22 | Use a fixed HashFunction for reading trees | Maksim Denisov | |
2024-07-22 | Pass HashFunction to ArtifactDigest::Create | Maksim Denisov | |
2024-07-22 | Use HashFunction functionality via Instance() | Maksim Denisov | |
...to track changes during refactoring easier. | |||
2024-07-22 | Use a precreated GitApi in LocalCAS | Maksim Denisov | |
2024-07-16 | Remove the LocalExecutionConfig singleton | Paul Cristian Sarbu | |
...and replace it with passed instances created early via a builder pattern. | |||
2024-07-16 | Pass LocalExecutionConfig to LocalAction and LocalApi | Paul Cristian Sarbu | |
2024-07-16 | LocalAction, BazelAction: Extend constness in fields and methods | Paul Cristian Sarbu | |
2024-07-16 | Remove Data struct from LocalExecutionConfig | Paul Cristian Sarbu | |
...to simplify the class and clarify the singleton pattern in preparation for its removal. | |||
2024-07-12 | Capture in TreeReaders by pointer to avoid temporaries | Maksim Denisov | |
2024-07-12 | Return std::nullopt if creation of an action digest fails | Maksim Denisov | |
...instead of dereferencing nullptr. | |||
2024-07-12 | Pack arguments of CreateActionDigestFromCommandLine to a struct | Maksim Denisov | |
2024-07-05 | local action: copy input file on reaching symlink limit | Klaus Aehlig | |
... and continue with the newly created copy as target for the next hard links. In this way, we get rid of the restriction we used to have that the number of identical inputs be not greater than the hardlink limit. | |||
2024-07-05 | Pass StorageConfig and Storage to LocalApi | Maksim Denisov | |
2024-07-05 | Use StorageConfig functionality via Instance() | Maksim Denisov | |
...to track changes during refactoring easier. | |||
2024-07-04 | Mark more constructors 'explicit' | Paul Cristian Sarbu | |
Since c++17 the 'explicit' keyword has use also for constructors with more than one argument and it is recommended to use it by default whereever implicit conversions are not expected bahaviour. | |||
2024-06-28 | Use (un)expected for CAS utils | Oliver Reiche | |
2024-06-27 | Use a raw pointer for passing optional RepositoryConfig | Maksim Denisov | |
...instead of std::optional<gsl::not_null<RepositoryConfig const*>>. | |||
2024-06-27 | Use a raw pointer for passing optional IExecutionApi | Maksim Denisov | |
...instead of std::optional<gsl::not_null<IExecutionApi const*>> | |||
2024-06-25 | Introduce a type allias for an optional ptr to IExecutionApi | Maksim Denisov | |
...and replace verbose constructions. | |||
2024-06-25 | Pass IExecutionApi to IExecutionApi by reference | Maksim Denisov | |
...instead of not_null const ptr. | |||
2024-06-25 | Mark IExecutionApi's methods constant | Maksim Denisov | |
2024-06-07 | Remove unused code | Maksim Denisov | |
2024-06-07 | Remove 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-04 | blob containers: Store and upload taking into account content size | Paul Cristian Sarbu | |
Update logic populating containers to use the new method which is aware of the maximum transfer limit. | |||
2024-05-28 | Use shared_ptr for data in ContentBlob | Maksim Denisov | |
...to reduce the "price" of copying. | |||
2024-05-28 | Use ArtifactBlobContainer in IExecutionApi | Maksim Denisov | |
...instead of BazelBlobContainer to not bring bazel_re::Digest to IExecutionApi. | |||
2024-05-28 | Move blob_tree to the common stage since it is used only there. | Maksim Denisov | |
2024-05-28 | Rename BlobContainer to BazelBlobContainer | Maksim Denisov | |
2024-05-28 | Use TransformedRange in BlobContainer | Maksim Denisov | |
...instead of various iterators. | |||
2024-05-27 | Use common interface for stream dumping | Maksim Denisov | |
...in LocalApi and BazelApi. | |||
2024-05-27 | Use common interface for reading tree entries and leafs | Maksim Denisov | |
...in LocalApi and BazelApi. | |||
2024-05-23 | Execution APIs: Extract common implementation into separate library | Paul Cristian Sarbu | |
This reduces the code duplication between the local and bazel APIs and improves code maintainability. | |||
2024-05-17 | RepositoryConfig: Instance should not be changed once populated | Paul 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-04-02 | LargeBlobs: Use LocalCAS methods to implement split-splice logic of CASUtils. | Maksim Denisov | |
2024-03-26 | Add missing system includes | Paul 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-15 | Clean up more includes and targets | Paul 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-03-08 | SystemCommand: Transfer outfile responsibility to caller | Oliver Reiche | |
2024-02-26 | Implement blob splitting in local API | Sascha Roloff | |
2024-02-26 | Implement blob splicing protocol at just server side | Sascha Roloff | |
2024-02-26 | Refactor split and splice implementations. | Sascha Roloff | |
Currently, the implementations of the split and splice operation are both hidden behind the Bazel API implementation. This was sufficient to implement splitting at the server and splicing at the client. In order to support the other direction of splitting at the client and splicing at the server while reusing their implementations, the code needs to be refactored. First, the functionality of split and splice are explicitly exposed at the general execution API interface and implemented in the sub APIs. Second, the implementations of split and splice are factored into a separate utils class. | |||
2024-02-13 | local_api: also for retrieve to memory, consult git api as fallback | Klaus Aehlig | |