diff options
| author | Peter Kjellerstedt <pkj@axis.com> | 2025-11-08 00:06:16 +0100 |
|---|---|---|
| committer | LUCI <gerrit-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2025-11-26 02:07:35 -0800 |
| commit | 412367bfafd9de014cfeb37475e0f97b1f6a2509 (patch) | |
| tree | 100e674dea649546145dbb81532a8f432cc09f52 /manifest_xml.py | |
| parent | 47c24b5c4092ce397c94c05d8686c8bcac64fbb2 (diff) | |
| download | git-repo-412367bfafd9de014cfeb37475e0f97b1f6a2509.tar.gz | |
project: Use dicts to keep track of copyfiles and linkfiles
This avoids copying/linking the same file/link multiple times if a
copyfile/linkfile element with the same values has been specifed
multiple times. This can happen when including a common manifest that
uses an extend-project element that has a copyfile/linkfile element.
This uses dicts rather than sets to store the copyfiles and linkfiles to
make sure the order they are specified in the manifest is maintained.
For Python 3.7+, maintaining the order that keys are added to dicts is
guaranteed, and for Python 3.6 it happened to be true.
The _CopyFile class and the _LinkFile class are changed to inherit from
NamedTuple to be able to store them in dicts.
Change-Id: I9f5a80298b875251a81c5fe7d353e262d104fae4
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/525322
Reviewed-by: Mike Frysinger <vapier@google.com>
Reviewed-by: Gavin Mak <gavinmak@google.com>
Tested-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Commit-Queue: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Diffstat (limited to 'manifest_xml.py')
0 files changed, 0 insertions, 0 deletions
