summaryrefslogtreecommitdiff
path: root/share/man/just-graph-file.5.md
diff options
context:
space:
mode:
authorKlaus Aehlig <klaus.aehlig@huawei.com>2025-03-25 15:33:18 +0100
committerKlaus Aehlig <klaus.aehlig@huawei.com>2025-04-07 16:09:43 +0200
commit1d17c22800eae5329f74d5847d95092b946cd7e2 (patch)
tree502132b4307562cc50ab1573e3946322c6b27fa2 /share/man/just-graph-file.5.md
parent21957eabce87cc1f52a7fdecd5930970d01883f2 (diff)
downloadjustbuild-1d17c22800eae5329f74d5847d95092b946cd7e2.tar.gz
just-graph-file(5): document tree overlays
Document the conservative extension of our graph-file format due to the addition of tree overlays.
Diffstat (limited to 'share/man/just-graph-file.5.md')
-rw-r--r--share/man/just-graph-file.5.md16
1 files changed, 15 insertions, 1 deletions
diff --git a/share/man/just-graph-file.5.md b/share/man/just-graph-file.5.md
index d84f5fbb..1e2c5de9 100644
--- a/share/man/just-graph-file.5.md
+++ b/share/man/just-graph-file.5.md
@@ -16,7 +16,7 @@ same key are treated.
Artifacts and their serialization
---------------------------------
-There are four different kind of artifacts. The serialization of the
+There are five different kind of artifacts. The serialization of the
artifact is always a JSON object with two keys: *`"type"`* and
*`"data"`*. The value for *`"type"`* is always on of the strings
*`"LOCAL"`*, *`"KNOWN"`*, *`"ACTION"`*, or *`"TREE"`*. The value for
@@ -45,6 +45,10 @@ artifact is of.
- *`"TREE"`* artifacts refer to trees defined in the action graph. The
defining data are
- the *`"id"`*, a string with the name of the tree.
+ - *`"TREE_OVERLAY"`* artifacts refer to trees defined as the result of
+ overlaying earlier trees. The defining data are
+ - the *`"id"`*, a string with the name of the tree overlay.
+
Actions and their serialization
-------------------------------
@@ -115,6 +119,16 @@ The action graph is given by a JSON object.
- The value for the key *`"actions"`* is a JSON object, mapping names
of actions to their respective definition (serialized as JSON).
+- The optional value (with default `{}`) for the key *`"tree_overlays"`*
+ is a JSON object mapping the names of tree overlay to their
+ definition. The definition is a JSON object with the following keys.
+ - For the key *`"trees"`* a JSON array of the artifacts to be
+ overlayed in the order they are to be overlayed (with latest-wins
+ semantics for each path).
+ - For the key *`"disjoint"`* a boolean indicating if it is to
+ be considered an error of a conflict arises on any path of the
+ trees to be overlayed.
+
Additional keys
---------------