diff --git a/src/spdx_tools/spdx/parser/jsonlikedict/creation_info_parser.py b/src/spdx_tools/spdx/parser/jsonlikedict/creation_info_parser.py index dbad22d11..1e7015c50 100644 --- a/src/spdx_tools/spdx/parser/jsonlikedict/creation_info_parser.py +++ b/src/spdx_tools/spdx/parser/jsonlikedict/creation_info_parser.py @@ -9,11 +9,7 @@ from spdx_tools.spdx.parser.actor_parser import ActorParser from spdx_tools.spdx.parser.error import SPDXParsingError from spdx_tools.spdx.parser.jsonlikedict.checksum_parser import ChecksumParser -from spdx_tools.spdx.parser.jsonlikedict.dict_parsing_functions import ( - append_parsed_field_or_log_error, - parse_field_or_log_error, - parse_field_or_no_assertion, -) +from spdx_tools.spdx.parser.jsonlikedict.dict_parsing_functions import parse_field_or_log_error from spdx_tools.spdx.parser.logger import Logger from spdx_tools.spdx.parser.parsing_functions import ( construct_or_raise_parsing_error, @@ -45,7 +41,7 @@ def parse_creation_info(self, doc_dict: Dict) -> CreationInfo: raise SPDXParsingError([f"Error while parsing document {name}: {logger.get_messages()}"]) creators: List[Actor] = parse_field_or_log_error( - logger, creation_info_dict.get("creators"), self.parse_creators + logger, creation_info_dict.get("creators"), self.actor_parser.parse_actor, field_is_list=True ) created: Optional[datetime] = parse_field_or_log_error( @@ -83,17 +79,6 @@ def parse_creation_info(self, doc_dict: Dict) -> CreationInfo: return creation_info - def parse_creators(self, creators_list_from_dict: List[str]) -> List[Actor]: - logger = Logger() - creators = [] - for creator_str in creators_list_from_dict: - creators = append_parsed_field_or_log_error( - logger, creators, creator_str, lambda x: parse_field_or_no_assertion(x, self.actor_parser.parse_actor) - ) - - raise_parsing_error_if_logger_has_messages(logger) - return creators - @staticmethod def parse_version(version_str: str) -> Version: try: diff --git a/src/spdx_tools/spdx/parser/jsonlikedict/dict_parsing_functions.py b/src/spdx_tools/spdx/parser/jsonlikedict/dict_parsing_functions.py index 6320b5bc0..c5076d2bf 100644 --- a/src/spdx_tools/spdx/parser/jsonlikedict/dict_parsing_functions.py +++ b/src/spdx_tools/spdx/parser/jsonlikedict/dict_parsing_functions.py @@ -45,7 +45,7 @@ def append_parsed_field_or_log_error( except SPDXParsingError as err: logger.extend(err.get_messages()) except (TypeError, ValueError) as err: - logger.extend(err.args[0]) + logger.append(err.args[0]) return list_to_append_to diff --git a/src/spdx_tools/spdx/parser/xml/xml_parser.py b/src/spdx_tools/spdx/parser/xml/xml_parser.py index 52863f389..4dd8c3aa2 100644 --- a/src/spdx_tools/spdx/parser/xml/xml_parser.py +++ b/src/spdx_tools/spdx/parser/xml/xml_parser.py @@ -58,7 +58,7 @@ def _fix_list_like_fields(data: Any) -> Any: new_data = {} for key, value in data.items(): if key in LIST_LIKE_FIELDS and not isinstance(value, list): - new_data[key] = [_fix_list_like_fields(value)] + new_data[key] = [_fix_list_like_fields(value)] if value else [] else: new_data[key] = _fix_list_like_fields(value) return new_data