Changeset View
Changeset View
Standalone View
Standalone View
swh/indexer/codemeta.py
Show First 20 Lines • Show All 208 Lines • ▼ Show 20 Lines | for document in documents: | ||||
# merged_value must be of the form | # merged_value must be of the form | ||||
# {'@list': [item1, item2]}; as it is the same | # {'@list': [item1, item2]}; as it is the same | ||||
# type as value, which is an @list. | # type as value, which is an @list. | ||||
if subvalue not in merged_value["@list"]: | if subvalue not in merged_value["@list"]: | ||||
merged_value["@list"].append(subvalue) | merged_value["@list"].append(subvalue) | ||||
elif value not in merged_document[key]: | elif value not in merged_document[key]: | ||||
merged_document[key].append(value) | merged_document[key].append(value) | ||||
# XXX: we should set forgefed=True when merging extrinsic-metadata documents. | # XXX: we should set forgefed=True when merging extrinsic_metadata documents. | ||||
# however, this function is only used to merge multiple files of the same | # however, this function is only used to merge multiple files of the same | ||||
# directory (which is only for intrinsic-metadata), so it is not an issue for now | # directory (which is only for intrinsic-metadata), so it is not an issue for now | ||||
return compact(merged_document, forgefed=False) | return compact(merged_document, forgefed=False) |