diff options
author | Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com> | 2025-02-17 10:05:15 +0100 |
---|---|---|
committer | Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com> | 2025-02-20 15:33:53 +0100 |
commit | e749a97621d445de5e0dec89ab840dd61839d872 (patch) | |
tree | 87f5290818f07def99b0a76e6e088614c5664a91 /doc | |
parent | 377b216dea73254f8d8e37868484be69a746678a (diff) | |
download | justbuild-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.md | 8 |
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 + } } , ... ] |