Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-07-05 | ResultMapTargetMap: support looking up an action by identifier | Klaus Aehlig | |
2022-07-05 | Fix wrong output pipe for version info in main | Paul Cristian Sarbu | |
2022-07-04 | Main: Fix typo in include guards | Oliver Reiche | |
2022-07-04 | Drop copy constructor from atomic value | Oliver Reiche | |
2022-07-04 | Drop copy constructor from linked maps | Oliver Reiche | |
2022-07-04 | Drop copy constructor for expressions | Oliver Reiche | |
2022-07-04 | Improve move semantics with smart pointers | Oliver Reiche | |
2022-06-29 | Error reporting: also abbreviate the expression in the stack trace | Klaus Aehlig | |
... to the same limit as the values occuring in the stack. | |||
2022-06-29 | rename private member in compliance with the used code style | Alberto Sartori | |
2022-06-29 | Use a more meaningful abbreviation of expression values | Klaus Aehlig | |
... in error messages. The outer structure is usually more important than the the details of the first element. | |||
2022-06-29 | util: support abbreviating json | Klaus Aehlig | |
To an intended number of characters by leaving out the parts after a given depth. As the correct depths has to be determined, the JSON value is serialized several times; hence the method is slow, but acceptable for the generation of error messages. | |||
2022-06-28 | Support more verbose error reporting | Klaus Aehlig | |
2022-06-28 | Generic: add support for out_dirs | Alberto Sartori | |
Before this patch, the built-in "generic" type allowed for just output files, listed in the field "outs". Now, the type also supports output directories, listed in the "out_dirs" field. The output directories are created before the command is executed. | |||
2022-06-28 | sort and deduplicate outputs before creating the action | Alberto Sartori | |
2022-06-28 | define new header-only library for vector manipulation | Alberto Sartori | |
2022-06-28 | improve error message when outpus are not disjoint | Alberto Sartori | |
2022-06-28 | add parenthesis to emphasize the order of evaluation | Alberto Sartori | |
2022-06-27 | just version information: support VERSION_EXTRA_SUFFIX | Klaus Aehlig | |
... which, if defined, is appended to the suffix string. In this way, versions can be forked, e.g., if non-upstream changes are included. | |||
2022-06-24 | Add a version subcommand | Klaus Aehlig | |
To also allow identifying snapshot versions in a meaningful way, we support embedding SOURCE_DATE_EPOCH which ought to be set to the commit time of the commit used. | |||
2022-06-24 | action deserialisation: accept null for "may_fail" | Klaus Aehlig | |
In that way, we are consistent with all other values in that there is a way to positively state that the default value should be taken. While there, fix a wrong error message. | |||
2022-06-22 | RemoteExecutionClient: Check and log execution status | Oliver Reiche | |
2022-06-20 | Correctly serialize and deserialize results and nodes | Klaus Aehlig | |
So far, our serialisation and deserialisation assumed that no node or result values are included contained in the given value. However, for nodes (and hence ressults, given our implementation of value nodes) there is a legitimate use case. An abstract interface specification, given by provided nodes, can well be a meaningful target to be exported. Implement serialisation for those values. Also, avoid tree-unfolding the value when deserialising the value by appropriately caching the corresponding expression pointers. Moreover, avoid the quadratic overhead through linearly searching through the list of artifacts. | |||
2022-06-20 | Repository representation: also use string as name in bindings | Klaus Aehlig | |
In this way, we keep the repsitory description more close to a normal multi-repository configuration. The only difference remaining is the absence of repository locations for git-tree roots. | |||
2022-06-20 | analysed targets: artifacts can also be contained in nodes and results | Klaus Aehlig | |
2022-06-20 | Disallow comparison of names | Klaus Aehlig | |
In our semantics, it was always intended that names are completely opaque and only used by passing them to functions providing information about a target. However, we never enforced that they not be compared for equality, even though we always had this in mind, and the computation of the target-level cache key was designed with this semantics in mind. Enforce this restriction now. | |||
2022-06-20 | expression: cache the cacheability property | Klaus Aehlig | |
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. |