summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-08-14ArchiveOps: Add proper autodetection option for tarballsPaul Cristian Sarbu
We shouldn't exclude the possibility of receiving uncompressed tarballs as repositories in just-mr. Therefore, we introduce an explicit type that performs the autodetection (default behaviour in just-mr). This is done to also be more in line with our implementation which allows the granular handling of various archive types (currently used only for testing purposes).
2023-08-14test: Refactoring the archive usage testsPaul Cristian Sarbu
Tests for various archive types are by design repetitive and thus can be streamlined to avoid excessive code duplication. As a positive consequence, this change also adds previously missing .xz archive usage checks.
2023-08-14ArchiveOps: reduce verbosity in archive type enumPaul Cristian Sarbu
2023-08-14doc: Fix typos in tutorialPaul Cristian Sarbu
2023-08-14expression: add new built in "reverse"Klaus Aehlig
While a foldl is enough to implement a reverse functionality, adding it as a built in allows doing so in linear time.
2023-08-14expression: add new built in "set"Klaus Aehlig
... to obtain from a list of strings a map with those entries as keys and true as value. In this way, repeated membership tests in lists can be implemented more efficiently.
2023-08-14expressions: add constant for trueKlaus Aehlig
2023-08-14Update CHANGELOGKlaus Aehlig
2023-08-11external: Fix missing abseil export targetsPaul Cristian Sarbu
2023-08-11external: Clean up absl/random targetsPaul Cristian Sarbu
2023-08-11external: Update libcurl to v8.2.1Paul Cristian Sarbu
2023-08-11external: Update libarchive to v3.7.1Paul Cristian Sarbu
2023-08-11external: Update c-ares to v1.19.1Paul Cristian Sarbu
2023-08-11Add basic end-to-end test for build -PKlaus Aehlig
... also verifying that we can look into tree outputs
2023-08-11just build: allow -P to reach into treesKlaus Aehlig
2023-08-11Move downstepping to subobjects to a libraryKlaus Aehlig
... in order to make that functionality reusable
2023-08-10doc: Extend documentation with 'symlink' built-in rulePaul Cristian Sarbu
2023-08-10test: Add checks for the 'symlink' built-in rulePaul Cristian Sarbu
2023-08-10built-in: Add 'symlink' rulePaul Cristian Sarbu
The rule generates a non-upwards symbolic link with given target path.
2023-08-09Update fmt libraryKlaus Aehlig
2023-08-08Add a test verifying the overwrite property of install and install-casKlaus Aehlig
Verify that install and install-cas do not overwrite and instead replace existing files. This behaviour is less surprising for the user in the presence of hard links.
2023-08-08Unlink files before creation on install-casKlaus Aehlig
If install-cas finds a file in the target location, unlink it before writing (in the same way as install does already). In this way, we avoid changing other file locations in the presence of hard links.
2023-08-08absl: export reused library "raw_logging_internal"Klaus Aehlig
2023-08-08grpc and protobuf: use c++17Alberto Sartori
Due to a possible clang issue, protobuf v23.4 fails on debian-12 built with c++20. As such, protobuf and its consumer grpc have been set to build with c++17 until this is resolved upstream. Co-authored: Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com>
2023-08-08update grpc to version 1.56.2Alberto Sartori
2023-08-08external: Update protobuf to v23.4Paul Cristian Sarbu
This corresponds to the highest current version found in popular distros (in this case, the one in Arch Linux). The abseil library is now a dependency of protobuf (for logging).
2023-08-08external: Update abseil to LTS 20230125.3Paul Cristian Sarbu
Also adds the extra targets needed by protobuf v23.4, which now has a dependency on abseil, and by grpc v1.56.2.
2023-08-08external: Fix absl export targetsPaul Cristian Sarbu
2023-08-08just execute: Fix uncollected upwards symlinksPaul Cristian Sarbu
Upwards symlinks should still be collected from actions, even if only the non-upwards symlinks are supported artifact types. The client side is thus the one responsible with enforcing the non-upwardness condition.
2023-08-07man: Add 'special' pragma to just-mr repository configPaul Cristian Sarbu
2023-08-07doc: Extended treatment of symlinks in roots and treesPaul Cristian Sarbu
We now allow restrictive use of upwards symbolic links when importing filesystem directories and archives to git.
2023-08-07test: Add checks for 'special' pragma in just-mrPaul Cristian Sarbu
Checks that the new 'special' pragma works for all supported repository types. In particular, checks that symlinks get resolved as expected and that resolved trees add their unresolved counterparts to the CAS for 'file' and 'archive' type repositories. Splits install-roots test into a basic check which works with the bootstrappable just-mr, and a new check focusing on the newly introduced 'special' pragma.
2023-08-07just-mr maps: Add logic for resolving symlinks in archive repositoriesPaul Cristian Sarbu
2023-08-07just-mr maps: Add logic for resolving symlinks in file repositoriesPaul Cristian Sarbu
2023-08-07just-mr utils: Add resolved tree id file getterPaul Cristian Sarbu
2023-08-07just-mr: Add async map for resolving symlinks in Git treesPaul Cristian Sarbu
2023-08-07test: Add check for reading objects by path from a Git treePaul Cristian Sarbu
2023-08-07GitRepo: Add method for reading object from tree by its pathPaul Cristian Sarbu
2023-08-07utils: Add function to check for confined pathsPaul Cristian Sarbu
2023-08-07just-mr: Update async map keys with the 'special' pragma valuePaul Cristian Sarbu
For 'file' and 'archive' checkouts we will handle more than just the 'ignore' value.
2023-08-07just-mr: Add map for pragma 'special' valuesPaul Cristian Sarbu
Moves away from literal strings in the async maps.
2023-08-07just-mr: Set ignore-special roots via a pragma...Paul Cristian Sarbu
...instead of a regular field. Also removes the ignore-special logic from distdir repositories, as those will never contain symlinks, so no entries would be ignored.
2023-08-07test: Fix typo in script generating test_repo_symlinks bundlePaul Cristian Sarbu
2023-08-07just-mr maps: Clean up remnants from progress reporting reworkPaul Cristian Sarbu
2023-08-07utils: path normalization method should be noexceptPaul Cristian Sarbu
2023-07-27install-cas test: also verify the -P optionKlaus Aehlig
2023-07-27Add option -P to just-install-casKlaus Aehlig
... to allow selecting a sub object of a specified tree.
2023-07-27Execution API: support fetching a single artifact to memoryKlaus Aehlig
2023-07-27link install-cas test to test suiteKlaus Aehlig
While there, fix a typo in the setup.
2023-07-26Add basic test for install-casKlaus Aehlig
... verifying the consistency of the representation of trees between local and remote CAS.