summaryrefslogtreecommitdiff
path: root/CHANGELOG.md
AgeCommit message (Collapse)Author
2024-11-04Release 1.4.0v1.4.0Klaus Aehlig
2024-10-30Release 1.4.0~beta1v1.4.0-beta1Klaus Aehlig
2024-10-30CHANGELOG: mention cooperation of `just serve` with compatible remoteKlaus Aehlig
2024-10-23expressions: enforce strict arguments for "join" and "join_cmd"v1.4.0-alpha+20241023Klaus Aehlig
... as described in the documentation. It was never intended to have a single string being an argument for those.
2024-09-09Update CHANGELOGKlaus Aehlig
- Add missing changelog entry for 74a5fbc9644eda7f105d2d2c672a41fa5c34c6a8 - In the summary paragraph, describe what does and does not stay backwards compatible. - Fix typos and do proper line breaking.
2024-08-26Store LocalAC keys as ArtifactDigestsMaksim Denisov
2024-08-26Reduce the size of large object entries.Maksim Denisov
Removed named keys of entries (hash, size). These prefixes were added for every chunk creating an additional overhead without any benefit. Removed prefixes of hashes (*62*hash) appearing in native mode and creating an additional overhead as well: it is known that all of them are blobs.
2024-08-23Rule "generic": verify that the output is a properly formed artifact stageKlaus Aehlig
2024-08-14expression language: add nub_leftKlaus Aehlig
Originally, the expression lanuage only contained a function to deduplicate a list, keeping only the right-most occurence. The reason was that this is the order needed for linking: a library providing an open symbol has to come on the command line after the library using that symbol (and hence making it an open symbol). However, by now use cases have emerged that require a topological sorting where definition comes before use; also, when composing the value of PATH from fragments, we usually want to keep the first occurrence in order for it to take precedence. Therefore, also add "nub_left" as built-in function, allowing a more condense (and slightly more efficient) description in rules instead of the revserse-nub_right-reverse pattern.
2024-08-05Expression language: add expression from_subdirKlaus Aehlig
... allowing to select only the keys in a specific subdir, and move the them to top-level.
2024-08-02CHANGELOG: mention cwd supportKlaus Aehlig
... and drop the corresponding design document as implemented.
2024-07-26Changelog: mention quote and quasi-quote expressionsKlaus Aehlig
2024-07-19Update Changelog to report about `just-mr gc-repo`Klaus Aehlig
... and the transition path on upgrade.
2024-07-15Update CHANGELOG with latest fixesKlaus Aehlig
2024-07-08Remove hardlink design as implementedKlaus Aehlig
... and mention the fix in CHANGELOG.
2024-07-08CHANGELOG: fix typosKlaus Aehlig
2024-06-07Update ChangelogKlaus Aehlig
2024-05-21Update CHANGELOGKlaus Aehlig
... to report the changes so far since the last release.
2024-05-08Start 1.4 development cycleKlaus Aehlig
2024-05-08Relase 1.3.0v1.3.0Klaus Aehlig
2024-05-03Update man page and CHANGELOG to reflect blob splittingKlaus Aehlig
2024-05-02Fix typo and line break in CHANGELOG.mdPaul Cristian Sarbu
2024-05-02Release 1.3.0~beta1v1.3.0-beta1Klaus Aehlig
2024-04-29Fix race condition in task queueKlaus Aehlig
To avoid lock contention, our task system queues tasks in several queues. In order to know when there is no more work to be done, a global counter keeps track of the total work. Here, it is important that this counter be incremented before a value is added to the queue, for otherwise some other thread could pick it up and decrement the total work load, hence getting us in a state where the counter underestimates the total amount of work to be done. Fix the order of those operations.
2024-04-24just analyse: add --dump-result command line optionAlberto Sartori
The result of the analysis is a JSON object containing the keys `"artifacts"`, `"runfiles"`, and `"provides"`. This JSON object, by default, is logged. However, it might be useful to process the data contained in it, while, for example, developing new rules. This patch adds a new command line option (`--dump-result`), reserved to the subcommand `analyse`, to dump the analysis result to the given file or stdout (if `-` is given).
2024-04-24CHANGELOG: mention that the expression language has been extendedKlaus Aehlig
2024-04-10bugfix: cli: remote-execution-property: allow for accumulating multiple pairs.Alberto Sartori
Before this patch, if the option `--remote-execution-property KEY:VAL` is repeated multiple times (also with different `KEY`s), only the last one is taken into account. This patch fixes the intended behavior.
2024-04-05bug fix in expresion, Union: propagate the disjointness propertyKlaus Aehlig
To avoid too many intermediate results, we compute the union of a list in a divide and conquer fashion. Of course, for a disjoint union, the recursive calls on the lists of half the length have to be disjoint as well, i.e., the template parameter kDisjoint has to be passed on. Fix this.
2024-03-20Add new subcommand add-to-casKlaus Aehlig
2024-03-11gc: add option --no-rotationKlaus Aehlig
... to clean up what can be done without losing cache information.
2024-03-05Update documentation, now that "foreign file" roots are implementedKlaus Aehlig
2024-02-20Git URL scheme handling: whitelist path instead of non-path protocolsKlaus Aehlig
At some point we have to decide if a given git repository URL is a path. So far, we assumed that anything not starting with ssh://, http://, or https:// is a path. This ignores the facts that - the file:// scheme, while referring to a file, does not denote a relative path starting file://, - the [user@]host:path scheme is not a path on the local machine, - there exist the URL schemes git://, ftp://, and ftps://, and - future extension might add additional schemes. To also correctly handle new schemes that git might add (which we indeed can handle, as we simply shell out to the git binary), we reverse the approach: we give the user the means to unambigiously specify that they refer to a path on the local machine, by either - using the file:// scheme, - providing an absolute path starting with /, or - providing a relative path starting with ./ All other schemes will not be modified. The file scheme, as well as the git://, http://, and https:// scheme, are handled interally using libgit2; all others are passed on to git in an unmodified form.
2024-01-30just-mr rc: honor "rc files" optionKlaus Aehlig
... to pull in rc files from different locations, given by location objects.
2024-01-22just-mr: Disable all non-HTTP but FTP and TFTPOliver Reiche
2024-01-19CHANGELOG: document the fix of propagating taintedness in "configure" targetsKlaus Aehlig
... that was implicitly fixed fb365b17ca339a25688ff61918280a46d64943b9.
2024-01-18Document the implementation of tc deps tracking on gcKlaus Aehlig
2023-12-15changelog: Update 'just serve' entryPaul Cristian Sarbu
2023-12-12Fix formatting of blob used to shard target cachePaul Cristian Sarbu
The ToJson method of RemoteAddress was wrongly creating a list instead of a simple string, thus a wrongly formatted backend description was being used to shard the target cache. This however does not affect the correctness of the build. Changelog also updated accordingly.
2023-12-12Filesystem: Fix copy overwrite of symlink with fileOliver Reiche
... and improve log messages in case of failure.
2023-11-23Mention blob splitting in changelogSascha Roloff
2023-11-22LocalAction: Fix staging of empty treesOliver Reiche
2023-11-17built-in "install" rule: verify well-formedness of resulting stageKlaus Aehlig
The install target, like any other target, has to have artifacts and runfiles being proper stages, i.e., in such a way that the keys can be interpreted as names in the file system without causing conflicts. This property used to be unchecked, thus allowing users to define mal-formed targets that, when used as inputs to actions, would result in unspecified layout of the action directory. Fix this by adding an appropriate check enforcing well-formedness of the resulting stage.
2023-11-14Update ChangelogKlaus Aehlig
... clarifying the effect of the target-cache-key change. In particular, explain that, as the cache-key format has changed in a non-overlapping way, no care has to be taken on update, but old target-cache entries will not be used by the newer version of the tool. While there, fix some typos and properly break lines.
2023-11-13Add end-to-end test for environment handling of "git tree" repositoriesKlaus T. Aehlig
... ensuring that just-mr passes on the specified environment variables (and only those) to the tree-generating action.
2023-10-27Base export target chache key on the exported targetKlaus Aehlig
The cache key for an export target should contain as target name that of the export target (and its effective configuration) rather than the exported target. As we computed the repository part of the cache key for the target included in the key, this was still a correct cache key except in the case an explicit file reference was exported (as here, the information that the file was to be taken rather than the target of the same name got lost). We still fix this issue by making the implementation match our design (rather than by including the file-reference bit in the cache key), as the original design gives the cleaner protocol for target-level caching as a service.
2023-10-25just execute: fix race condition during garbage collection...Alberto Sartori
...of the internal cache used for keeping track of running operations.
2023-09-13CHANGELOG: describe current state of affairsKlaus Aehlig
2023-08-25Start 1.3 development cycleKlaus Aehlig
2023-08-25Release 1.2.0v1.2.0Klaus Aehlig
2023-08-22Release 1.2.0~beta3v1.2.0-beta3Oliver Reiche