summaryrefslogtreecommitdiff
path: root/src/other_tools
AgeCommit message (Collapse)Author
2024-11-14other_tools/ops_maps: Implement IWYU suggestionsPaul Cristian Sarbu
Also follow-up changes to ensure build success.
2024-11-14other_tools/just_mr: Implement IWYU suggestionsPaul Cristian Sarbu
2024-11-14other_tools/git_operations: Implement IWYU suggestionsPaul Cristian Sarbu
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-25Enable compatible mode for just-mr and SourceTree serve service...Paul Cristian Sarbu
...by using the new local api that can handle any remote endpoint, irrespective of protocol. Also ensure all tests for the serve service are now being run both in native and compatible modes.
2024-10-25serve service: Use digest when requesting serve to set up a treePaul Cristian Sarbu
...instead of passing just the Git hash, which imposes the remote to always be native. The serve service proto file is updated accordingly.
2024-10-25serve service: Respond with digest for blob and tree checksPaul Cristian Sarbu
...to be able to interrogate remotes irrespective of protocol. When serve endpoint is active, it will provide the correct digest with which to interrogate the remote endpoint. Otherwise, for a compatible remote check the file mappings for the correct digest. The serve service proto file is updated accordingly.
2024-10-25serve service: Respond also with digest in serve repository tree RPCsPaul Cristian Sarbu
...besides the simple Git hash, if syncing was done. This way one can know what digest to ask for from the remote. The serve client also needs to now know what hash function the remote expects. The serve service proto file is updated accordingly.
2024-10-25just-mr and SourceTree: Use new Git execution api instancePaul Cristian Sarbu
In just-mr: to instantiate the new Git api instance, both storage configs, as well as the compatible storage, need to be passed to the maps. While there, use more explicit naming schemes for the storage and CAS instances used. In serve: also acquire gc locks for the local storages when needed to instantiate the new Git api, which now has access to the CAS. In all these instances we also pass, as needed, the local api, which currently still operates only in native mode. This makes no difference currently, but will ensure less changes needed when the future compatible-aware local api will be used instead.
2024-10-25just-mr: Instantiate both native and compatible storages...Paul Cristian Sarbu
...to be later passed to maps that might need them. This is a preparatory commit. Currently only the native storage is actively being used.
2024-10-25just-mr: Use explicit naming in default instantiated storagePaul Cristian Sarbu
As just-mr will always create Git roots, be explicit in the names of variables to state that the default storage created is native.
2024-10-25just-mr: Small fixesPaul Cristian Sarbu
2024-10-25distdir_git_map.cpp: fix is_tree valueAlberto Sartori
2024-10-25content_cas_map: Fix missing return after logging fatalPaul Cristian Sarbu
2024-10-10Remove from OSS intersecting public-private dependenciesMaksim Denisov
2024-10-08Name value template parameters using kCamelCase.Maksim Denisov
2024-10-08Name global constants using kCamelCase.Maksim Denisov
2024-10-08Name constexpr variables using kCamelCase.Maksim Denisov
2024-10-07Enable cppcoreguidelines-* checks.Maksim Denisov
2024-10-07Disable misc-no-recursion checkMaksim Denisov
...since we use recursion for trees a lot, but skip this check manually.
2024-10-07Enable readability-* checks.Maksim Denisov
2024-10-07Enable readability-redundant-member-init check.Maksim Denisov
2024-10-07Enable modernize-* checks.Maksim Denisov
2024-10-07Enable bugprone-empty-catch check.Maksim Denisov
2024-10-07Enable bugprone-exception-escape checkMaksim Denisov
2024-10-07Replace manual new allocations for git_strarray with std::vectorsMaksim Denisov
...and remove unused code from git_utils
2024-09-26Fix enum sizes proposed by clang-tidy.Maksim Denisov
Enable performance-enum-size check.
2024-09-26Fix redundant std::optional conversionsMaksim Denisov
...proposed by clang-tidy. Enable bugprone-optional-value-conversion check.
2024-09-26Fix assignments in conditionsMaksim Denisov
...proposed by clang-tidy. Enable bugprone-assignment-in-if-condition check.
2024-09-24Repository setup: Warn about unknown keysKlaus Aehlig
Warn if a repository definition contains unknown keys (that are therefore ignored), as this often indicates a typo in the repository specification. However, for some common naming of extensions (currently: "bootstrap") keep the warning at a level below the default for reporting.
2024-09-23Reorder dependencies and remove duplicates in OSSMaksim Denisov
2024-09-18Add missing #endif comments in headersMaksim Denisov
2024-09-13Avoid unnecessary copiesKlaus Aehlig
2024-09-13Remove std::move of const value and avoid non-movable intermediate variablesKlaus Aehlig
2024-09-13Remove Compatibility flag from just-mrMaksim Denisov
2024-09-13Rename Compatibility class to ProtocolTraitsMaksim Denisov
...and move it to the common stage.
2024-09-12Prefer fseek ofer rewindKlaus Aehlig
2024-09-11Use ArtifactDigestFactory in just-mr mapsMaksim Denisov
...to create ArtifactDigests.
2024-09-11Store HashInfo in just-mr's GitTreeInfo as tree_hashMaksim Denisov
...and use it to create ArtifactDigests.
2024-09-11Store HashInfo in just-mr's ArchiveContent as content hashMaksim Denisov
...and use it to create ArtifactDigests.
2024-09-11Move just-mr's parsing of git trees to ParseGitTreeMaksim Denisov
...and use it in fetch and repos_to_setup_map to remove code duplication.
2024-09-11Move ParseArchiveContent function to the headerMaksim Denisov
...to remove code duplications in ReposToSetupMap.
2024-08-29just-mr maps: Properly check for missing values in map chainPaul Cristian Sarbu
The root async map in a chain of calls should always be checked for missing value, which can happen if, e.g., a cycle happens or a thread gets killed by the system. Properly handle this by checking explicitly if a value has been posted. If not, check for cycles where it makes sense (for example, in the resolving of symlinks), otherwise report any pending map keys not yet processed. This is done for all just-mr commands working with async maps.
2024-08-29just-mr maps: Add utility key-printing functionsPaul Cristian Sarbu
...to be used when reporting pending keys on failure to post value.
2024-08-29just-mr maps: Fix wrong or missing return conditionsPaul Cristian Sarbu
2024-08-27Reformat code to comply with clang-format 18Klaus Aehlig
... while keeping our .clang-format file.
2024-08-26GitRepo: Create commit from a directory explicitly...Paul Cristian Sarbu
...by writing its tree directly in the object database instead of working with the index. This allows the creation of trees that contain also entries with 'magic' names, such as the .git folder or .gitignore files. Callers must ensure the given directory only contains the needed entries. In particular, just-mr maps and serve service are updated to separate the import-to-Git repository path from the temporary path containing the content to be committed, to avoid polluting the content path with entries generated on repository initialization.
2024-08-26GitOps: Pass source directory to GitInitialCommit operationPaul Cristian Sarbu
While there, ensure optional Git operation parameters are checked before use for the operations that require them.
2024-08-26GitRepo: Change logic that creates commits to explicitly give directoryPaul Cristian Sarbu
In preparation for subsequent changes, specify the directory path containing the tree content to be committed explicitly. This change will allow eventually to be able to specify paths that are different from the root path of the repository in which the commit is created. This commit renames and refactors StageAndCommitAllAnnonymous to allow a directory path to be passed. The just-mr and serve service logic is updated such that current behaviour is otherwise unchanged.