summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-11-02INSTALL: also mention how to install just-mrKlaus Aehlig
... as this tool is usally used in conjunction with just; in particular, our tutorial assumes just-mr to be present.
2022-11-02INSTALL: also mention the "unknown" compiler familyKlaus Aehlig
... in the overview table, especially as we recommend it when building for host and manually setting CC and CXX.
2022-11-02Improved test case for target-level cached artifacts synchronizationSascha Roloff
This commit extends the test case for target-level cached artifacts synchronization to include all locations of a target-cache entry where known artifacts can be mentioned. These locations are the 'artifacts', 'runfiles', and 'provides' map and all are considered now as part of the test.
2022-11-02tutorial/getting-started: Also introduce the concept of stagingKlaus Aehlig
Staging is quite a fundamental concept of just. Therefore, introduce it early in the tutorial. In this way, it also becomes obvious, why only targets are requested and files are not installed by default.
2022-11-02Tutorial getting-started: introduce -PKlaus Aehlig
... as an way of directly obtaining an artifact without an additional detour through the file system.
2022-11-02tutorial/getting-started: better explain object identifiersChristian Lütke Stetzkamp
When the tutorial references blob identifiers in the output, also immediately explain the syntax. Also emphasize the possible abbreviations made possible by b9880e8ecdce02f047dfb1d19de5f1ed07a82ac6 given that they are typically used in practise. Co-authored-by: Klaus Aehlig <aehlig@linta.de>
2022-10-31CC/test test_runner.sh: correctly report the reusltKlaus Aehlig
The test runner is supposed to report the reult in a file called 'result' in the top-level action directory. However, before starting the actual test, it changes the working directory to the subdir 'work' where the input of the test action is located. Therefore, when reporting the result, the correct file name is '../result'. Fix this.
2022-10-31bootstrap: allow overwriting of arKlaus Aehlig
... in the same way, as we support different names for cc and c++.
2022-10-28bootstrap: be consistent with the desired compilerAlberto Sartori
2022-10-27main: improve short self-description of justKlaus Aehlig
2022-10-27rules: Honor ENV for finding catChristian Lütke Stetzkamp
2022-10-27rules: Honor ENV for patch separationChristian Lütke Stetzkamp
2022-10-26readme: Add note about potentially missing libraryOliver Reiche
2022-10-26bootstrap: honor CC and CXX from build configurationKlaus Aehlig
... also in the first phases of the bootstrap procedure. Co-authored-by: Oliver Reiche <oliver.reiche@huawei.com>
2022-10-26bootstrap: Support building bootstrap_just in parallelOliver Reiche
2022-10-26Bootstrap: allow setting build configurationKlaus Aehlig
When constructing the build configuration for the bootstrap build is just, start with the value of the environment variable JUST_BUILD_CONF, if set, instead of the empty object. While there, also propagate SOURCE_DATE_EPOCH from the environment to the build configuration.
2022-10-26grpc: Do not warn about unkonwn warning optionsOliver Reiche
2022-10-26rules: Honor ENV variable for protobuf compilationOliver Reiche
2022-10-26GitCAS: Disable code that is unused during bootstrapOliver Reiche
2022-10-25grpc: Silence warnings depending on compilerOliver Reiche
2022-10-24grpc: silence warningsAlberto Sartori
2022-10-24git2: silence warningsAlberto Sartori
2022-10-24fix position of just-mr setup subcommandAlberto Sartori
2022-10-24do no use late optionsAlberto Sartori
2022-10-21grpc: silence warningsAlberto Sartori
2022-10-21absl: silence warningsAlberto Sartori
2022-10-21just-mr: Fix use of wrong file path for checkout locationsOliver Reiche
2022-10-20Install: Simplify building instructionsOliver Reiche
2022-10-20Tutorial: Adjust 'test/glob/rebuild/proto' sectionsOliver Reiche
2022-10-20Tutorial: Adjust 'Third-party' section to new changesOliver Reiche
2022-10-20Tutorial: Adjust 'Hello world' section to new changesOliver Reiche
2022-10-20share: Provide bash completion for just-mrOliver Reiche
2022-10-20man: Section-5 man page for just-mrrcOliver Reiche
2022-10-20man: Section-1 man page for just-mrPaul Cristian Sarbu
Co-authored-by: Oliver Reiche <oliver.reiche@huawei.com>
2022-10-20just-mr: Warn on inefficient Git operationsOliver Reiche
2022-10-20just-mr: Support for just-mrrc fileOliver Reiche
2022-10-20man: Update just-mr-repository-config man pageOliver Reiche
2022-10-20just-mr: Implement just-mr launchersOliver Reiche
2022-10-20man: Update just man pageOliver Reiche
2022-10-20just: Take lexicographical first repositoryOliver Reiche
... if none is specified on command line or in the config.
2022-10-19Just suffix bump after introducing the latest incompatible changesSascha Roloff
2022-10-19Apply sharding as used in git to files stored in the just cache directory.Sascha Roloff
This commit also introduces an incompatible change, since it modifies the way how files are stored in the just cache directory. This modification reduces the number of files per directory and only introduces a maximum number new directories to avoid possible performance bottlenecks.
2022-10-19Add generation directory as part of the just cache root.Sascha Roloff
This change is introduced to be prepared for future changes such as garbage collection. It is an incompatible change compared to earlier just versions since it modifies the local path to the just cache directory, where among others the CASes, action cache, target-level cache are located.
2022-10-18TargetResult: Serialise inner TargetResults flatOliver Reiche
Before this change, TargetResults that appear inside of other TargetResults (typically via value nodes) were serialised via the top-level serialisation function for TargetResults. While technically correct, it is rather inefficient as identical expressions from outer and inner TargetResults are not properly deduplicated and a deeply nested data structure is maintained. With this change, expressions of inner TargetResults are serialised in the context of outer TargetResults, resulting in a flat list of all transitively contained expressions with proper deduplication applied. As this serialisation of TargetResult is used in target-level cache entries, the new format is a breaking change to existing entries. Therefore, after switching to the new serialisation format introduced by this commit, users are required to clean their target-level cache. This also reverts commit d22adef666d704680ee74b35a46d530f6b6d5f15, "Recursively scan provided results for known artifacts".
2022-10-14Recursively scan provided results for known artifactsSascha Roloff
This recursive scan of the provided results map of a target-cache entry for known artifacts is required since the serialization format of target results currently does not produce a single flat artifact list, but keeps the result entry structure with a nested list of artifacts. Once the serialization format of target results is changed in a way that a flat list of artifacts is produced, this recursive scan is not required anymore and can be reverted.
2022-10-14Remove default value of ArtifactDigest::Create template parameterSascha Roloff
This enforces the explicit specification, which object type, either file or tree, should be used to create an artifact digest. This also avoids subtile errors at locations as in the previous commit, where files as well as trees are supposed to be handled, but digest creation mistakenly defaults to file object type.
2022-10-14Fix missing tree handling in BazelCasClient::ReadSingleBlob functionSascha Roloff
The initial assumption before introducing the native remote execution protocol was that only blobs were transmitted over the wire and put in a blob store. With the native remote execution protocol, also trees can be transmitted over the wire and they are put in a different store than blobs. Different hashing functions are used for blobs and trees and need to be calculated accordingly for data to be put in the correct store. This distinction of blobs and trees is now implemented. Additionally, a warning is added that checks equality between the requested digest and the digest computed by the received content. This check makes sense to detect, e.g., corrupted messages, unexpected transmission termination, or remote server failure.
2022-10-13bootstrap: by default, bootstrap in parallelKlaus Aehlig
Only if the environment variable DEBUG is set, fall back to sequentially executing the graph generated by the bootstrap version of just.
2022-10-13Add a parallel version of the bootstrap graph traverserOliver Reicher
2022-10-12Add copyright and license notice to all source and header filesKlaus Aehlig
Signed-off-by: Goetz Brasche <goetz.brasche@huawei.com>