summaryrefslogtreecommitdiff
path: root/doc/future-designs
AgeCommit message (Collapse)Author
6 daysdoc: Fix various typos and inconsistenciesPaul Cristian Sarbu
7 daysfuture-designs: Remove entries for debug fission and just-lockPaul Cristian Sarbu
...as these features have already been implemented and appropriately documented.
2025-06-12Update documentationMaksim Denisov
2025-06-11Add design document for full GCMaksim Denisov
2025-04-23debug-fission doc: Update with small design changesPaul Cristian Sarbu
2025-04-09Document tree overlays as implemented conceptKlaus Aehlig
2025-04-07tree-overlay design: minor updatesKlaus Aehlig
- For the rule functions TREE_OVERLAY and DISJOINT_TREE_OVERLAY call the argument "$1", to align with the argument name for BLOB and TREE. - For the built-in functions `"tree_overlay"` and `"disjoint_tree_overlay"`, align this the built-in function `"tree"` and allow staging of the resulting tree.
2025-03-20Document profiling as tool conceptKlaus Aehlig
... and remove it from the future design, as it is already implemented.
2025-03-19doc: Improve debug fission designPaul Cristian Sarbu
Clarify the handling and extent of proposed debug-related configuration fields in the CC defaults.
2025-03-18doc: Add design for debug fission integrationPaul Cristian Sarbu
2025-03-10profiling design: drop asynchronous writingKlaus Aehlig
... as it turns out that the synchronous writing is fast enough and hence we can avoid all the problems of background processes.
2025-02-26profiling design: update logging optionsKlaus Aehlig
Reduce interference of invocation logging with regular logging operations; in particular, restrict just-mr passing the --async-profile option only to build commands and thus avoiding race conditions with calls to `analyse` that rely on having a graph available immediate after invocation.
2025-02-24just-lock design: Clarify env handling for 'generic' sourcePaul Cristian Sarbu
2025-02-20just-lock design: Clarify wording of --clone optionPaul Cristian Sarbu
- specify that what is cloned is the workspace root of the target repository - disambiguate what is referred to as the 'start' and 'target' repository
2025-02-20just-lock: Add option to set a just binary to usePaul Cristian Sarbu
2025-02-20just-lock: Support special pragma for plain importsPaul Cristian Sarbu
Marking a source repository 'as plain' means that the whole source repository tree will get imported as a repository type corresponding to the source type. In this case, additional pragmas than those supported by the inndividual imports might need to be set. Solve this by supporting the just-mr-style 'pragma' field also in the source description, for all sources also accepting the 'as plain' field. Currently support only the 'special' pragma. Document change and add test for plain imports that checks this feature.
2025-02-20just-lock: Improve handling of pragmas in 'repos' import descriptionPaul Cristian Sarbu
In particular, any transitive 'file'-type repository will inherit any given '{to_git: true}' pragma in the import description objects. Note that this technically can only happen for transitive 'file' repositories imported from a 'file' source, so in all other cases such a pragma would not have any effect. Document change and extend the import from 'file' source test to check this feature.
2025-02-07Add design document on profiling buildsKlaus Aehlig
2025-01-29just-lock config: Make field names consistent with just-mrPaul Cristian Sarbu
2025-01-23Document computed roots as implemented conceptKlaus Aehlig
... rather than as future design. While there, also add target-level caching as a service to the list of documentation pages.
2025-01-10just-lock design: Add fields 'type','mirrors','subdir' to 'archive' sourcePaul Cristian Sarbu
The 'type' field is optional and informs both the way to unpack the archive and which type imported file repositories should be rewritten as in the output configuration. Mirrors the 'just-mr' types, with options for tarballs and zip-like archives, defaulting to tarballs if missing. The 'mirrors' field is treated the same as for 'git' sources. The 'subdir' field is optional and accounts for the fact that the actual root of the source repository might be a subpath in the unpacked archive, as opposed to Git repositories where it is reasonable to expect that the sources root is the top-level directory.
2024-12-16just-lock design: Update --clone design...Paul Cristian Sarbu
...to refer to repositories as a chain of bindings to be followed starting from one of the known repositories (existing or imported). Both the initial and the target repositories are to be kept during deduplication.
2024-12-09Extend computed-roots design discussing the interaction with serveKlaus Aehlig
2024-11-29just-lock design: Clarify I/O file location defaultsPaul Cristian Sarbu
2024-11-28Proposal for just-lockPaul Cristian Sarbu
2024-11-08Design computed roots: Add additional root typeKlaus Aehlig
... specifically for the use case of target files depending on the directory structure.
2024-08-02CHANGELOG: mention cwd supportKlaus Aehlig
... and drop the corresponding design document as implemented.
2024-07-30Add design document on supporting a working directory inside the action ↵Klaus Aehlig
directory ... instead of always having to execute actions in the top-level directory.
2024-07-24Remove implemented design document on root gcKlaus Aehlig
2024-07-08Remove hardlink design as implementedKlaus Aehlig
... and mention the fix in CHANGELOG.
2024-07-03Add a design document on how to handle the hard-link limitKlaus Aehlig
2024-06-12Tree-overlay design: support disjoint overlayKlaus Aehlig
2024-06-06Update documentation about tc writing in the presence of serveKlaus Aehlig
2024-06-05Add design on how to extend our handling of symbolic linksKlaus Aehlig
2024-05-03Remove large-blobs from future designs as it is implementedKlaus Aehlig
... and document the implementation in the concepts documentation.
2024-03-28CAS-import design: update implementation stateKlaus Aehlig
2024-03-20add-to-cas proposal: update design to reflect state of implementationKlaus Aehlig
The base functionality is already implemented. Also, the default has changed with respect to the design to make reading symlinks the default and only follow symlinks if the optin --follow-symlinks is given.
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-26Add a design document for foreign-file rootsKlaus Aehlig
2024-02-15git-gc design: fix typosKlaus Aehlig
2024-01-30Drop multi-rc from future designs, as it is implementedKlaus Aehlig
2024-01-23Add design for using multiple mrrc filesKlaus Aehlig
2024-01-18Document the implementation of tc deps tracking on gcKlaus Aehlig
2024-01-16Design interaction between target-level caching and garbage collectionKlaus Aehlig
The implicit extensional projection of target-level caching and garbage collection interact in a subtile way. Add a design document describing how we keep the invariant required by target-level caching in the presence of garbage collection. While, techincally, this just describes how to fix a bug, a careful design is still needed, as some fundamental changes are made.
2024-01-09large-blob design: fix file nameKlaus Aehlig
2023-12-18future-designs: Add proposal for 'just add-to-cas' subcommandPaul Cristian Sarbu
2023-12-18Add design document for adding garbage collection for build rootsKlaus Aehlig
2023-12-15just serve design doc: Update and move to conceptsPaul Cristian Sarbu
2023-12-12Add design on more compact storing of large filesKlaus Aehlig