Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
When calling just from just-mr, all logging arguments are forwarded
as early arguments. If any log files are provided, an unconditional
--log-append is also prepended to ensure the contents of the log files
are not overwritten.
|
|
Both, just and the launcher just-mr are developped and released
together and hence share version numbers. Nevertheless, the tools
are used independently. In fact, just-mr has an option to specify
the just binary to be used. Hence it is useful that each tool is
aware of its own version number. As a launcher, just-mr is supposed
to forward all subcommands known to just, hence the just-mr command
to show the version information cannot be called "version"; we use
"mrversion" instead.
|
|
|
|
|
|
tracing
|
|
|
|
|
|
|
|
...in order to not include unwanted dependencies in just proper.
The new class extends the GitRepo class used for just's Git tree
operations and gets used in all of just-mr's async maps.
|
|
...in order to not include unwanted dependencies in just proper.
As the whole other_tools folder is meant to be excluded from
bootstrapping, also remove the bootstrap guards.
|
|
...in order to not include unwanted dependencies in just proper.
As the whole other_tools folder is meant to be excluded from
bootstrapping, also remove the bootstrap guards.
|
|
The actual error fixed in this commit was the usage of the std::vector resize
method instead of the reserve method. The resize method increases the size of
the vector by appending new default-allocated elements (empty strings in this
case), whereas the reserve method just increases the underlying capacity of the
vector without appending elements. In addition to this fix, the remaining
just-args assembly code was refactored to drop the lambda-function usage in
favor of a plain sequence of statements.
|
|
As now all remote Git operations in GitRepo require at most just
the branch name, there is no more need to inquire the repository
about branch refspecs.
|
|
...and use instead the branch name. A valid direct refspec (as those
retrieved by a remote_ls call) will always end in the branch name,
so checking the last path component ('/'-delimited substring) of a
retrieved refspec is enough.
|
|
This also removes the need to call the GET_BRANCH_REFNAME critical
operation.
|
|
|
|
|
|
|
|
|
|
Both, the python script as well as the compiled variant of just-mr
fetch try to overwrite already existing distfiles in the distdir.
While it is unclear if overwriting existing distfiles or not
copying to distdir if a file with that name already exists is the
better behaviour, we at least should not error out, as the compiled
just-mr currently does as it sets permission to 444 and hence cannot
overwrite later; fix this by addwing owner write permissions before
overwriting.
|
|
The absent value for an optional string is std::nullopt, not
the empty string.
|
|
just-mr fetch is supposed to fetch to the first (in search order)
distdir that is an existing directory (and error out if no such
directory exists). So, once a directory is found, there is no need
to create it---we already verified it is an existing directory.
|
|
... in error message reporting the lack of present distdirs.
|
|
|
|
|
|
This provides the fix already performed for the just-mr script in
the internal just-mr as well. In short, this fix makes sure that the
computation of the content key for distdir repositories is
independent of the presence of the respective archives in CAS.
|
|
The subdir is required alongside the commit hash for a valid map
key when importing a Git repository into our Git cache.
|
|
Passing the logger by reference would require the caller to be
kept alive. Also, being a shared_ptr, the logger can be passed
by value at almost no cost.
|
|
Use intermediary unordered sets to store the repos to_setup and to_include
to avoid unnecessary duplicates. It is purely a performance benefit.
|
|
The parser was exiting early when the user gave no rc file, before
having the chance to look for the config file in the default locations.
|
|
... to show the argument vector properly serialized as json.
In this way, the vector can be read unambigiously even if
arguments contain white space.
|
|
|
|
|
|
|
|
|
|
|
|
Contains the logic for the checkout of all supported repositories.
|
|
Uses libarchive to unarchive the archives from CAS.
|
|
|
|
Calls libcurl to fetch the archives from the internet.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|