Skip to content

Commit bfe889a

Browse files
fix: model.BomMetaData.component setter typehint (#817)
fix: `model.BomMetaData.component` setter typehint --------- Signed-off-by: dependabot[bot] <[email protected]> Signed-off-by: Jan Kowalleck <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jan Kowalleck <[email protected]>
1 parent ab2e91e commit bfe889a

File tree

14 files changed

+84
-84
lines changed

14 files changed

+84
-84
lines changed

cyclonedx/model/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -822,7 +822,7 @@ def __init__(
822822
self.url = url
823823
self.comment = comment
824824
self.type = type
825-
self.hashes = hashes or [] # type:ignore[assignment]
825+
self.hashes = hashes or []
826826

827827
@property
828828
@serializable.xml_sequence(1)

cyclonedx/model/bom.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -79,14 +79,14 @@ def __init__(
7979
manufacture: Optional[OrganizationalEntity] = None,
8080
) -> None:
8181
self.timestamp = timestamp or _get_now_utc()
82-
self.tools = tools or [] # type:ignore[assignment]
83-
self.authors = authors or [] # type:ignore[assignment]
82+
self.tools = tools or []
83+
self.authors = authors or []
8484
self.component = component
8585
self.supplier = supplier
86-
self.licenses = licenses or [] # type:ignore[assignment]
87-
self.properties = properties or [] # type:ignore[assignment]
86+
self.licenses = licenses or []
87+
self.properties = properties or []
8888
self.manufacturer = manufacturer
89-
self.lifecycles = lifecycles or [] # type:ignore[assignment]
89+
self.lifecycles = lifecycles or []
9090

9191
self.manufacture = manufacture
9292
if manufacture:
@@ -179,7 +179,7 @@ def component(self) -> Optional[Component]:
179179
return self._component
180180

181181
@component.setter
182-
def component(self, component: Component) -> None:
182+
def component(self, component: Optional[Component]) -> None:
183183
"""
184184
The (optional) component that the BOM describes.
185185
@@ -345,12 +345,12 @@ def __init__(
345345
self.serial_number = serial_number or uuid4()
346346
self.version = version
347347
self.metadata = metadata or BomMetaData()
348-
self.components = components or [] # type:ignore[assignment]
349-
self.services = services or [] # type:ignore[assignment]
350-
self.external_references = external_references or [] # type:ignore[assignment]
351-
self.vulnerabilities = vulnerabilities or [] # type:ignore[assignment]
352-
self.dependencies = dependencies or [] # type:ignore[assignment]
353-
self.properties = properties or [] # type:ignore[assignment]
348+
self.components = components or []
349+
self.services = services or []
350+
self.external_references = external_references or []
351+
self.vulnerabilities = vulnerabilities or []
352+
self.dependencies = dependencies or []
353+
self.properties = properties or []
354354
self.definitions = definitions or Definitions()
355355

356356
@property

cyclonedx/model/component.py

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -207,8 +207,8 @@ def __init__(
207207
licenses: Optional[Iterable[License]] = None,
208208
copyright: Optional[Iterable[Copyright]] = None,
209209
) -> None:
210-
self.licenses = licenses or [] # type:ignore[assignment]
211-
self.copyright = copyright or [] # type:ignore[assignment]
210+
self.licenses = licenses or []
211+
self.copyright = copyright or []
212212

213213
# @property
214214
# ...
@@ -527,7 +527,7 @@ def __init__(
527527
) -> None:
528528
self.type = type
529529
self.diff = diff
530-
self.resolves = resolves or [] # type:ignore[assignment]
530+
self.resolves = resolves or []
531531

532532
@property
533533
@serializable.xml_attribute()
@@ -623,11 +623,11 @@ def __init__(
623623
patches: Optional[Iterable[Patch]] = None,
624624
notes: Optional[str] = None,
625625
) -> None:
626-
self.ancestors = ancestors or [] # type:ignore[assignment]
627-
self.descendants = descendants or [] # type:ignore[assignment]
628-
self.variants = variants or [] # type:ignore[assignment]
629-
self.commits = commits or [] # type:ignore[assignment]
630-
self.patches = patches or [] # type:ignore[assignment]
626+
self.ancestors = ancestors or []
627+
self.descendants = descendants or []
628+
self.variants = variants or []
629+
self.commits = commits or []
630+
self.patches = patches or []
631631
self.notes = notes
632632

633633
@property
@@ -1111,31 +1111,31 @@ def __init__(
11111111
self._bom_ref = _bom_ref_from_str(bom_ref)
11121112
self.supplier = supplier
11131113
self.manufacturer = manufacturer
1114-
self.authors = authors or [] # type:ignore[assignment]
1114+
self.authors = authors or []
11151115
self.author = author
11161116
self.publisher = publisher
11171117
self.group = group
11181118
self.name = name
11191119
self.version = version
11201120
self.description = description
11211121
self.scope = scope
1122-
self.hashes = hashes or [] # type:ignore[assignment]
1123-
self.licenses = licenses or [] # type:ignore[assignment]
1122+
self.hashes = hashes or []
1123+
self.licenses = licenses or []
11241124
self.copyright = copyright
11251125
self.cpe = cpe
11261126
self.purl = purl
1127-
self.omnibor_ids = omnibor_ids or [] # type:ignore[assignment]
1128-
self.swhids = swhids or [] # type:ignore[assignment]
1127+
self.omnibor_ids = omnibor_ids or []
1128+
self.swhids = swhids or []
11291129
self.swid = swid
11301130
self.modified = modified
11311131
self.pedigree = pedigree
1132-
self.external_references = external_references or [] # type:ignore[assignment]
1133-
self.properties = properties or [] # type:ignore[assignment]
1134-
self.components = components or [] # type:ignore[assignment]
1132+
self.external_references = external_references or []
1133+
self.properties = properties or []
1134+
self.components = components or []
11351135
self.evidence = evidence
11361136
self.release_notes = release_notes
11371137
self.crypto_properties = crypto_properties
1138-
self.tags = tags or [] # type:ignore[assignment]
1138+
self.tags = tags or []
11391139

11401140
if modified:
11411141
warn('`.component.modified` is deprecated from CycloneDX v1.3 onwards. '

cyclonedx/model/contact.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -296,8 +296,8 @@ def __init__(
296296
) -> None:
297297
self.name = name
298298
self.address = address
299-
self.urls = urls or [] # type:ignore[assignment]
300-
self.contacts = contacts or [] # type:ignore[assignment]
299+
self.urls = urls or []
300+
self.contacts = contacts or []
301301

302302
@property
303303
@serializable.xml_sequence(10)

cyclonedx/model/crypto.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -295,10 +295,10 @@ def __init__(
295295
self.curve = curve
296296
self.execution_environment = execution_environment
297297
self.implementation_platform = implementation_platform
298-
self.certification_levels = certification_levels or [] # type:ignore[assignment]
298+
self.certification_levels = certification_levels or []
299299
self.mode = mode
300300
self.padding = padding
301-
self.crypto_functions = crypto_functions or [] # type:ignore[assignment]
301+
self.crypto_functions = crypto_functions or []
302302
self.classical_security_level = classical_security_level
303303
self.nist_quantum_security_level = nist_quantum_security_level
304304

@@ -1107,8 +1107,8 @@ def __init__(
11071107
identifiers: Optional[Iterable[str]] = None,
11081108
) -> None:
11091109
self.name = name
1110-
self.algorithms = algorithms or [] # type:ignore[assignment]
1111-
self.identifiers = identifiers or [] # type:ignore[assignment]
1110+
self.algorithms = algorithms or []
1111+
self.identifiers = identifiers or []
11121112

11131113
@property
11141114
@serializable.xml_sequence(10)
@@ -1202,12 +1202,12 @@ def __init__(
12021202
esn: Optional[bool] = None,
12031203
auth: Optional[Iterable[BomRef]] = None,
12041204
) -> None:
1205-
self.encr = encr or [] # type:ignore[assignment]
1206-
self.prf = prf or [] # type:ignore[assignment]
1207-
self.integ = integ or [] # type:ignore[assignment]
1208-
self.ke = ke or [] # type:ignore[assignment]
1205+
self.encr = encr or []
1206+
self.prf = prf or []
1207+
self.integ = integ or []
1208+
self.ke = ke or []
12091209
self.esn = esn
1210-
self.auth = auth or [] # type:ignore[assignment]
1210+
self.auth = auth or []
12111211

12121212
@property
12131213
@serializable.xml_sequence(10)
@@ -1345,9 +1345,9 @@ def __init__(
13451345
) -> None:
13461346
self.type = type
13471347
self.version = version
1348-
self.cipher_suites = cipher_suites or [] # type:ignore[assignment]
1348+
self.cipher_suites = cipher_suites or []
13491349
self.ikev2_transform_types = ikev2_transform_types
1350-
self.crypto_refs = crypto_refs or [] # type:ignore[assignment]
1350+
self.crypto_refs = crypto_refs or []
13511351

13521352
@property
13531353
@serializable.xml_sequence(10)

cyclonedx/model/definition.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -111,11 +111,11 @@ def __init__(
111111
self.identifier = identifier
112112
self.title = title
113113
self.text = text
114-
self.descriptions = descriptions or () # type:ignore[assignment]
115-
self.open_cre = open_cre or () # type:ignore[assignment]
116-
self.parent = parent # type:ignore[assignment]
117-
self.properties = properties or () # type:ignore[assignment]
118-
self.external_references = external_references or () # type:ignore[assignment]
114+
self.descriptions = descriptions or ()
115+
self.open_cre = open_cre or ()
116+
self.parent = parent
117+
self.properties = properties or ()
118+
self.external_references = external_references or ()
119119

120120
@property
121121
@serializable.type_mapping(BomRef)
@@ -300,7 +300,7 @@ def __init__(
300300
self.identifier = identifier
301301
self.title = title
302302
self.description = description
303-
self.requirements = requirements or () # type:ignore[assignment]
303+
self.requirements = requirements or ()
304304

305305
@property
306306
@serializable.type_mapping(BomRef)
@@ -421,9 +421,9 @@ def __init__(
421421
self.version = version
422422
self.description = description
423423
self.owner = owner
424-
self.requirements = requirements or () # type:ignore[assignment]
425-
self.levels = levels or () # type:ignore[assignment]
426-
self.external_references = external_references or () # type:ignore[assignment]
424+
self.requirements = requirements or ()
425+
self.levels = levels or ()
426+
self.external_references = external_references or ()
427427
# TODO: signature
428428

429429
@property
@@ -584,7 +584,7 @@ def __init__(
584584
self, *,
585585
standards: Optional[Iterable[Standard]] = None
586586
) -> None:
587-
self.standards = standards or () # type:ignore[assignment]
587+
self.standards = standards or ()
588588

589589
@property
590590
@serializable.xml_array(serializable.XmlArraySerializationType.NESTED, 'standard')

cyclonedx/model/dependency.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ class Dependency:
5858

5959
def __init__(self, ref: BomRef, dependencies: Optional[Iterable['Dependency']] = None) -> None:
6060
self.ref = ref
61-
self.dependencies = dependencies or [] # type:ignore[assignment]
61+
self.dependencies = dependencies or []
6262

6363
@property
6464
@serializable.type_mapping(BomRef)

cyclonedx/model/issue.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ def __init__(
132132
self.name = name
133133
self.description = description
134134
self.source = source
135-
self.references = references or [] # type:ignore[assignment]
135+
self.references = references or []
136136

137137
@property
138138
@serializable.xml_attribute()

cyclonedx/model/release_note.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,11 @@ def __init__(
5555
self.social_image = social_image
5656
self.description = description
5757
self.timestamp = timestamp
58-
self.aliases = aliases or [] # type:ignore[assignment]
59-
self.tags = tags or [] # type:ignore[assignment]
60-
self.resolves = resolves or [] # type:ignore[assignment]
61-
self.notes = notes or [] # type:ignore[assignment]
62-
self.properties = properties or [] # type:ignore[assignment]
58+
self.aliases = aliases or []
59+
self.tags = tags or []
60+
self.resolves = resolves or []
61+
self.notes = notes or []
62+
self.properties = properties or []
6363

6464
@property
6565
@serializable.xml_sequence(1)

cyclonedx/model/service.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,15 +74,15 @@ def __init__(
7474
self.name = name
7575
self.version = version
7676
self.description = description
77-
self.endpoints = endpoints or [] # type:ignore[assignment]
77+
self.endpoints = endpoints or []
7878
self.authenticated = authenticated
7979
self.x_trust_boundary = x_trust_boundary
80-
self.data = data or [] # type:ignore[assignment]
81-
self.licenses = licenses or [] # type:ignore[assignment]
82-
self.external_references = external_references or [] # type:ignore[assignment]
83-
self.services = services or [] # type:ignore[assignment]
80+
self.data = data or []
81+
self.licenses = licenses or []
82+
self.external_references = external_references or []
83+
self.services = services or []
8484
self.release_notes = release_notes
85-
self.properties = properties or [] # type:ignore[assignment]
85+
self.properties = properties or []
8686

8787
@property
8888
@serializable.json_name('bom-ref')

cyclonedx/model/tool.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,8 @@ def __init__(
6262
self.vendor = vendor
6363
self.name = name
6464
self.version = version
65-
self.hashes = hashes or () # type:ignore[assignment]
66-
self.external_references = external_references or () # type:ignore[assignment]
65+
self.hashes = hashes or ()
66+
self.external_references = external_references or ()
6767

6868
@property
6969
@serializable.xml_sequence(1)
@@ -207,9 +207,9 @@ def __init__(
207207
warn('`@.tools` is deprecated from CycloneDX v1.5 onwards. '
208208
'Please use `@.components` and `@.services` instead.',
209209
DeprecationWarning)
210-
self.components = components or () # type:ignore[assignment]
211-
self.services = services or () # type:ignore[assignment]
212-
self.tools = tools or () # type:ignore[assignment]
210+
self.components = components or ()
211+
self.services = services or ()
212+
self.tools = tools or ()
213213

214214
@property
215215
def components(self) -> 'SortedSet[Component]':

cyclonedx/model/vulnerability.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ def __init__(
168168
versions: Optional[Iterable[BomTargetVersionRange]] = None,
169169
) -> None:
170170
self.ref = ref
171-
self.versions = versions or [] # type:ignore[assignment]
171+
self.versions = versions or []
172172

173173
@property
174174
@serializable.xml_sequence(1)
@@ -241,7 +241,7 @@ def __init__(
241241
) -> None:
242242
self.state = state
243243
self.justification = justification
244-
self.responses = responses or [] # type:ignore[assignment]
244+
self.responses = responses or []
245245
self.detail = detail
246246
self.first_issued = first_issued
247247
self.last_updated = last_updated
@@ -904,8 +904,8 @@ def __init__(
904904
organizations: Optional[Iterable[OrganizationalEntity]] = None,
905905
individuals: Optional[Iterable[OrganizationalContact]] = None,
906906
) -> None:
907-
self.organizations = organizations or [] # type:ignore[assignment]
908-
self.individuals = individuals or [] # type:ignore[assignment]
907+
self.organizations = organizations or []
908+
self.individuals = individuals or []
909909

910910
@property
911911
@serializable.xml_array(serializable.XmlArraySerializationType.NESTED, 'organization')
@@ -999,22 +999,22 @@ def __init__(
999999
self._bom_ref = _bom_ref_from_str(bom_ref)
10001000
self.id = id
10011001
self.source = source
1002-
self.references = references or [] # type:ignore[assignment]
1003-
self.ratings = ratings or [] # type:ignore[assignment]
1004-
self.cwes = cwes or [] # type:ignore[assignment]
1002+
self.references = references or []
1003+
self.ratings = ratings or []
1004+
self.cwes = cwes or []
10051005
self.description = description
10061006
self.detail = detail
10071007
self.recommendation = recommendation
10081008
self.workaround = workaround
1009-
self.advisories = advisories or [] # type:ignore[assignment]
1009+
self.advisories = advisories or []
10101010
self.created = created
10111011
self.published = published
10121012
self.updated = updated
10131013
self.credits = credits
1014-
self.tools = tools or [] # type:ignore[assignment]
1014+
self.tools = tools or []
10151015
self.analysis = analysis
1016-
self.affects = affects or [] # type:ignore[assignment]
1017-
self.properties = properties or [] # type:ignore[assignment]
1016+
self.affects = affects or []
1017+
self.properties = properties or []
10181018

10191019
@property
10201020
@serializable.json_name('bom-ref')

cyclonedx/output/xml.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ def generate(self, force_regeneration: bool = False) -> None:
6060
bom.validate()
6161
xmlns = self.get_target_namespace()
6262
with BomRefDiscriminator.from_bom(bom):
63-
self._bom_xml = '<?xml version="1.0" ?>\n' + xml_dumps(
63+
self._bom_xml = '<?xml version="1.0" ?>\n' + xml_dumps( # type:ignore[call-overload]
6464
bom.as_xml( # type:ignore[attr-defined]
6565
_view, as_string=False, xmlns=xmlns),
6666
method='xml', default_namespace=xmlns, encoding='unicode',

0 commit comments

Comments
 (0)