summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2025-02-17 10:05:15 +0100
committerPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2025-02-20 15:33:53 +0100
commite749a97621d445de5e0dec89ab840dd61839d872 (patch)
tree87f5290818f07def99b0a76e6e088614c5664a91 /doc
parent377b216dea73254f8d8e37868484be69a746678a (diff)
downloadjustbuild-e749a97621d445de5e0dec89ab840dd61839d872.tar.gz
just-lock: Improve handling of pragmas in 'repos' import description
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.
Diffstat (limited to 'doc')
-rw-r--r--doc/future-designs/just-lock.md8
1 files changed, 6 insertions, 2 deletions
diff --git a/doc/future-designs/just-lock.md b/doc/future-designs/just-lock.md
index 0ee3bf62..151625c1 100644
--- a/doc/future-designs/just-lock.md
+++ b/doc/future-designs/just-lock.md
@@ -264,7 +264,9 @@ The type of a _source_ is defined by the string value of the mandatory subfield
checkout.
The checkout is assumed to be maintained, so that `"file"`-type repositories
- marked to be imported can retain their type.
+ marked to be imported can retain their type. For such transitive dependencies,
+ one can also set the `"to_git": true` pragma with a corresponding entry in the
+ usual `"pragma"` field.
Proposed format:
``` jsonc
@@ -277,7 +279,9 @@ The type of a _source_ is defined by the string value of the mandatory subfield
, "repo": "<foreign_name>" // optional; corresponds to `foreign_repository_name` var
, "map": {"from_name": "to_name"} // optional; corresponds to `import_map` var (option --map)
, "pragma": // optional
- {"absent": true} // corresponds to `absent` var (option --absent)
+ { "absent": true // corresponds to `absent` var (option --absent)
+ , "to_git": true // any imported "file"-repositories will also be "to_git":true
+ }
}
, ...
]