Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 2 additions & 17 deletions src/spdx_tools/spdx/parser/jsonlikedict/creation_info_parser.py
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down Expand Up @@ -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(
Expand Down Expand Up @@ -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:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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


Expand Down
2 changes: 1 addition & 1 deletion src/spdx_tools/spdx/parser/xml/xml_parser.py
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down