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
8 changes: 5 additions & 3 deletions spdx/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,16 @@
from datetime import datetime
from enum import Enum
from functools import reduce
from typing import Optional
from typing import Optional, Union

from spdx import creationinfo
from spdx import license
from spdx import utils
from spdx.checksum import Checksum, ChecksumAlgorithm
from spdx.creationinfo import Creator
from spdx.parsers.builderexceptions import SPDXValueError
from spdx.parsers.loggers import ErrorMessages
from spdx.utils import NoAssert


class PackagePurpose(Enum):
Expand Down Expand Up @@ -95,8 +97,8 @@ def __init__(
self.spdx_id = spdx_id
self.version = version
self.file_name = file_name
self.supplier = supplier
self.originator = originator
self.supplier: Optional[Union[Creator, NoAssert]] = supplier
self.originator: Optional[Union[Creator, NoAssert]] = originator
self.download_location = download_location
self.files_analyzed = None
self.homepage = None
Expand Down
6 changes: 5 additions & 1 deletion spdx/parsers/jsonyamlxml.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
from spdx.parsers.builderexceptions import SPDXValueError, CardinalityError, OrderError
from spdx.parsers.loggers import ErrorMessages
from spdx.snippet import Snippet
from spdx.utils import UnKnown
from spdx.utils import UnKnown, NoAssert

ERROR_MESSAGES = rdf.ERROR_MESSAGES

Expand Down Expand Up @@ -1243,6 +1243,8 @@ def parse_pkg_supplier(self, pkg_supplier):
- pkg_supplier: Python str/unicode
"""
if isinstance(pkg_supplier, str):
if pkg_supplier == "NOASSERTION":
return self.builder.set_pkg_supplier(self.document, NoAssert())
entity = self.builder.create_entity(self.document, pkg_supplier)
try:
return self.builder.set_pkg_supplier(self.document, entity)
Expand All @@ -1261,6 +1263,8 @@ def parse_pkg_originator(self, pkg_originator):
- pkg_originator: Python str/unicode
"""
if isinstance(pkg_originator, str):
if pkg_originator == "NOASSERTION":
return self.builder.set_pkg_originator(self.document, NoAssert())
entity = self.builder.create_entity(self.document, pkg_originator)
try:
return self.builder.set_pkg_originator(self.document, entity)
Expand Down