Age | Commit message (Collapse) | Author |
|
... as the external link dependency is still associated with this
library. In this way, importing preinstalled libraries can happen
in a sound way, even though the actual library is just an external
link dependency; still dependencies among external libraries are
honored.
|
|
|
|
... by computing the absolute path (required to successfully
identified them as a Git root) and enforcing that tag
creation is only performed for the default Git root from the
cache directory.
|
|
... and not only located on the file system. This change
enables the use of Git bundles as "non-local" repositories.
|
|
While there, fix a few typos in the same document as well.
|
|
|
|
While the just binary itself was carefully created to work correctly
in the presence of several instances running simultaneously, the
just-mr.py script started as proof-of-concept out of the need to
conveniently generate a multi-repository configuration for just.
Nevertheless, it is now actually used, so parallel running instances
have to be taken seriously. Moreover, we have to ensure that in
case of failures, we don't leave the local build root in a state
giving a false impression on how an unpacked archive looks like.
Both can be avoided by always working on temporary directories and,
should a persistent location be needed, only renaming to the final
desitantion once everything is set up correclty.
|
|
|
|
|
|
|
|
... conceptually, it was possible that a previous task
decrements the `num_threads_running_` counter before it is
incremented by the next task. Therefore, we have to unify
the queue and thread status in a single counter
(`total_workload_`) and ensure that woken threads increment
it before decrementing it for popping a queue.
|
|
|
|
Extend the --request-action-input option to also provide command line,
environment, etc, of the requested action. As this option is mainly
for debugging, having that information available via the analyse
subcommand is useful; for build/install that change does not make
a difference anyway.
|
|
The remote execution endpoint shards the target-level cache; still,
for analysis, we want to specify a particular target-level cache,
e.g., to analyse the inputs of a particular action that failed
remotely. Note that the action identifier depends on the target-level
cache in question, due to the extensional projection implicit in
target-level caching.
|
|
... as the --request-action-input option provides a clean way of
restoring the inputs to a specific action, without the need of
interacting with the internal directory structure of the tool. In
particular, the new option also works for remote builds.
|
|
Add an option to change the requested result to be (as artifacts)
the input stage of a specified action. In this way, the inputs to
individual actions can conveniently be inspected, e.g., for local
debugging of why an action failed.
|
|
|
|
|
|
... which is required for boringssl, libg2 and grpc.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
When converting a directory to git, just-mr.py shells out to git
to to the actual conversion. However, not in all cases git waits
for its children, in particular when deciding to implicitly run
git-gc ("Auto packing the repository in background for optimum
performance.") This causes problems, as we assume that after git
finishes we safely can remove the temporary directory from which
we pulled; however, the shutils.rmtree function we call for this
assumes the directory to be removed not to be changed by other
processes---like git removing the file gc.pid. Work around this,
by retrying the removal of no longer needed temporary directories.
|
|
... to the same limit as the values occuring in the stack.
|
|
|
|
... in error messages. The outer structure is usually more important
than the the details of the first element.
|
|
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.
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
... which, if defined, is appended to the suffix string. In this way,
versions can be forked, e.g., if non-upstream changes are included.
|
|
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.
|
|
|
|
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.
|
|
|
|
add details for the --action-timeout and -f,--log-file command line
options
|
|
|
|
|
|
|
|
|
|
|
|
|