Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-06-20 | Crypto: Refactor hash computation | Oliver Reiche | |
... by renaming HashGenerator to (incremental) Hasher and dropping support for Git/MD5 hashes. The Hasher does not expose the actual hash implementation. | |||
2022-06-20 | Crypto: Add and use set of globally used hash functions | Oliver Reiche | |
2022-06-20 | Executor: Fix printing artifact ids | Oliver Reiche | |
2022-06-14 | fix handling of workspace root for the main repository | Alberto Sartori | |
commit fd58a5eb429d4a9db51f73c06137f1a4ebe41c08 introduced a bug. If the main workspace root is a git repo, it will be overwritten by a std::optional<std::filesystem::path> storing std::nullopt. This patch fixes this wrong behaviour. | |||
2022-06-13 | Fix target cache key: Use repository-local target name | Oliver Reiche | |
2022-06-13 | Main: Print statistics for export targets | Oliver Reiche | |
2022-06-13 | ExportRule: Compute target cache key use target cache | Oliver Reiche | |
2022-06-13 | Statistics: Add counters for export targets | Oliver Reiche | |
2022-06-13 | Logging: Extend logger by level for Performance | Oliver Reiche | |
2022-06-13 | Main: Collect cache artifacts and Write target cache entries | Oliver Reiche | |
2022-06-13 | ResultMap: Keep track of targets to cache | Oliver Reiche | |
2022-06-13 | AnalysedTarget: Add getter to obtain non-known artifacts | Oliver Reiche | |
2022-06-13 | TargetCache: Initial implementation | Oliver Reiche | |
2022-06-13 | TargetResult: Add support for JSON (de)serialization | Oliver Reiche | |
2022-06-13 | GraphTraverser: Add support for extra artifacts | Oliver Reiche | |
2022-06-13 | ArtifactDescription: Add ref getter for id and C++ hash | Oliver Reiche | |
2022-06-13 | RemoteExecutionConfig: Keep global platform properties | Oliver Reiche | |
... and cache endpoint address for rebuilding. | |||
2022-06-13 | RepoConfig: Compute repository key | Oliver Reiche | |
2022-06-13 | LocalCAS: Add singleton pattern | Oliver Reiche | |
2022-06-13 | multithreading: Add AtomicValue to atomically set/get value | Oliver Reiche | |
... and use it to replace the commonly used pattern in Expression, LinkedMap, and GitTreeEntry. Furthermore, remove assignment operators for Expression and LinkedMap as those are considered to be used in an immutable manner anyway. | |||
2022-06-13 | utils: Add DFAMinimizer for computing bisimulations | Oliver Reiche | |
2022-06-13 | HashGenerator: Add global function for obtaining digest | Oliver Reiche | |
2022-06-13 | FileRoot: support content description | Klaus Aehlig | |
For some file roots, in particular git trees, we can give a complete selfcontained description of the content without accessing any external resources. For those, add a method to return such a complete description that will be used to compute the keys of content-defined repositories. | |||
2022-06-13 | Include raw identifier to GitTree | Klaus Aehlig | |
In this way, we have it available when needed, e.g., to get identifers for file roots or to get whole trees as source artifacts. | |||
2022-06-13 | utils: convert hex to string | Klaus Aehlig | |
2022-06-13 | CLI: Catch and report non-CLI11 related errors | Oliver Reiche | |
... and ensure that the default logging is set up before. | |||
2022-06-09 | Disallow upwards-facing inputs in actions and tree constructors | Klaus Aehlig | |
2022-06-09 | Change wording of -D to emphasize that it is an overlay | Klaus Aehlig | |
While there, also document the option (in more detail) in the man page. | |||
2022-06-09 | improve error message | Alberto Sartori | |
2022-06-09 | reduce code duplication | Alberto Sartori | |
2022-06-09 | pass by const ref big objects | Alberto Sartori | |
2022-06-09 | fix order of evaluations for the workspace root of the main repository | Alberto Sartori | |
the command line --workspace-root now overwrites what is eventually read from the multi-repository configuration file for the main repository | |||
2022-06-09 | remove misleading comment | Alberto Sartori | |
2022-06-09 | fix typos | Alberto Sartori | |
2022-06-02 | CLI: New option -D/--defines for in-line configuration | Oliver Reiche | |
2022-06-02 | Split off the expression_ptr interface | Klaus Aehlig | |
So that we can, also for header-only libraries, always declare the direct dependencies without creating a cyclic dependency between entity_name_data and expressions. | |||
2022-06-02 | Add missing direct dependencies | Klaus Aehlig | |
2022-05-31 | "enumerate" expression: add padding to 10 characters | Klaus Aehlig | |
2022-05-30 | Built-in expressions: add enumerate | Klaus Aehlig | |
Add a function transforming a list into a map. In this way, artifacts collected positionally in a list can easily be realized as a stage used for input to an action or output of a target. | |||
2022-05-12 | Ensure we also correctly handle tree conflicts between files | Klaus Aehlig | |
Not only trees, but also regular files can disallow paths reaching into them. If we have a file at a/b then another file at a/b/c is a staging conflict as well. Make our tool recognize this. | |||
2022-05-12 | Ensure consistent path normalisation | Klaus Aehlig | |
In particular, ensure that the empty path and "." have the same normal form. | |||
2022-05-09 | CLI: Fix use of multiple RE property options | Oliver Reiche | |
... which were all ignored except the last. CLI11 usually only calls the option function once all options have been parsed. This change ensures that the option function is called everytime the option is parsed. | |||
2022-05-09 | Built-in "to_subdir": interpret input keys as path | Klaus Aehlig | |
... and detect conflicts araising this way. Also normalize the paths after staging them to the specified subdir. | |||
2022-05-09 | Verify conflict-freeness in inputs, artifacts, and runfiles | Klaus Aehlig | |
Our maps serve two purposes: on the one hand, they can be a generic key-value association with arbitrary strings as keys. On the other hand, we use them to describe arrangements of files (inputs to actions, artifacts or runfiles generated). In this function, certain keys refer to the same path and hence have to be identifed. Therefore, at places where the keys clearly have to be paths in the file system, implicitly normalize them and check for conflicts. | |||
2022-05-09 | Move path normalisation to a separate library | Klaus Aehlig | |
... as it will be required outside the target map. | |||
2022-05-09 | log to Error level when remote is unreachable | Alberto Sartori | |
2022-05-04 | just: add --compatible also to "just analyse" | Klaus Aehlig | |
One of the uses of "just analyse" is to obtain the action graph which also contains identifiers depending on the way artifacts are hashed, e.g., blobs or known artifacts. Therefore, make just analyse support compatible mode as well. | |||
2022-05-04 | install: normalize dir paths | Oliver Reiche | |
2022-04-27 | Remove libggit2 as host bootstrap dependency | Klaus Aehlig | |
Since in default (bundled) bootstrap, we bring our own version of libgit2, also use that for the initial bootstrap step. | |||
2022-04-27 | use kebab-case for all cmd line args | Alberto Sartori | |