Skip to content

Commit 8bbdf46

Browse files
madpahjkowalleck
andauthored
feat!: Support for CycloneDX v1.6
* added draft v1.6 schemas and boilerplate for v1.6 Signed-off-by: Paul Horton <[email protected]> * re-generated test snapshots for v1.6 Signed-off-by: Paul Horton <[email protected]> * note `bom.metadata.manufacture` as deprecated Signed-off-by: Paul Horton <[email protected]> * work on `bom.metadata` for v1.6 Signed-off-by: Paul Horton <[email protected]> * Deprecated `.component.author`. Added `.component.authors` and `.component.manufacturer` Signed-off-by: Paul Horton <[email protected]> * work to add `.component.omniborid` - but tests deserialisation tests fail due to schema differences (`.component.author` not in 1.6) Signed-off-by: Paul Horton <[email protected]> * work to get deserialization tests passing Signed-off-by: Paul Horton <[email protected]> * chore(deps): bump `py-serializable` to >=1.0.3 to resolve issues with deserialization to XML Signed-off-by: Paul Horton <[email protected]> * imports tidied Signed-off-by: Paul Horton <[email protected]> * properly added `.component.swhid` Signed-off-by: Paul Horton <[email protected]> * add `.component.cryptoProperties` - with test failures for SchemaVersion < 1.6 Signed-off-by: Paul Horton <[email protected]> * typing and bandit ignores Signed-off-by: Paul Horton <[email protected]> * coding standards Signed-off-by: Paul Horton <[email protected]> * test filtering Signed-off-by: Paul Horton <[email protected]> * coding standards Signed-off-by: Paul Horton <[email protected]> * additional tests to increase code coverage Signed-off-by: Paul Horton <[email protected]> * corrected CryptoMode enum Signed-off-by: Paul Horton <[email protected]> * coding standards Signed-off-by: Paul Horton <[email protected]> * Added `address` to `organizationalEntity` Signed-off-by: Paul Horton <[email protected]> * Added `address` to `organizationalEntity` Signed-off-by: Paul Horton <[email protected]> * raise `UserWarning` in `.component.version` has length > 1024 Signed-off-by: Paul Horton <[email protected]> * coding standards and typing Signed-off-by: Paul Horton <[email protected]> * add `acknowledgement` to `LicenseExpression` (#582) Signed-off-by: Paul Horton <[email protected]> * more proper way to filter test cases Signed-off-by: Paul Horton <[email protected]> * update schema to published versions Signed-off-by: Paul Horton <[email protected]> * fetch schema 1.6 JSON Signed-off-by: Jan Kowalleck <[email protected]> * fetch test data for CDX 1.6 Signed-off-by: Jan Kowalleck <[email protected]> * reformat Signed-off-by: Jan Kowalleck <[email protected]> * reformat Signed-off-by: Jan Kowalleck <[email protected]> * refactor Signed-off-by: Jan Kowalleck <[email protected]> * style Signed-off-by: Jan Kowalleck <[email protected]> * refactor Signed-off-by: Jan Kowalleck <[email protected]> * docs Signed-off-by: Jan Kowalleck <[email protected]> --------- Signed-off-by: Paul Horton <[email protected]> Signed-off-by: Jan Kowalleck <[email protected]> Co-authored-by: Jan Kowalleck <[email protected]>
1 parent 35749c6 commit 8bbdf46

File tree

314 files changed

+34482
-308
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

314 files changed

+34482
-308
lines changed

CHANGELOG.md

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,177 @@
22

33

44

5+
## v7.0.0-alpha.1 (2024-04-09)
6+
7+
### Chore
8+
9+
* chore(deps): bump `py-serializable` to &gt;=1.0.3 to resolve issues with deserialization to XML
10+
11+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`0398051`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/039805174f76f2b228e4436e01752ec7893df30f))
12+
13+
* chore(deps-dev): update autopep8 requirement from 2.0.4 to 2.1.0 (#573)
14+
15+
Updates the requirements on [autopep8](https://github.com/hhatto/autopep8) to permit the latest version.
16+
- [Release notes](https://github.com/hhatto/autopep8/releases)
17+
- [Commits](https://github.com/hhatto/autopep8/compare/v2.0.4...v2.1.0)
18+
19+
---
20+
updated-dependencies:
21+
- dependency-name: autopep8
22+
dependency-type: direct:development
23+
...
24+
25+
Signed-off-by: dependabot[bot] &lt;[email protected]&gt;
26+
Co-authored-by: dependabot[bot] &lt;49699333+dependabot[bot]@users.noreply.github.com&gt; ([`35749c6`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/35749c6cd18ebb8911b7cefac8a381d2ee57177a))
27+
28+
* chore(deps-dev): update tox requirement from 4.14.1 to 4.14.2 (#574)
29+
30+
Updates the requirements on [tox](https://github.com/tox-dev/tox) to permit the latest version.
31+
- [Release notes](https://github.com/tox-dev/tox/releases)
32+
- [Changelog](https://github.com/tox-dev/tox/blob/main/docs/changelog.rst)
33+
- [Commits](https://github.com/tox-dev/tox/compare/4.14.1...4.14.2)
34+
35+
---
36+
updated-dependencies:
37+
- dependency-name: tox
38+
dependency-type: direct:development
39+
...
40+
41+
Signed-off-by: dependabot[bot] &lt;[email protected]&gt;
42+
Co-authored-by: dependabot[bot] &lt;49699333+dependabot[bot]@users.noreply.github.com&gt; ([`d60f457`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/d60f4570621246ce3d68e7f2e7f1aa831fb818f0))
43+
44+
### Unknown
45+
46+
* docs
47+
48+
Signed-off-by: Jan Kowalleck &lt;[email protected]&gt; ([`42c6f25`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/42c6f253f0ee4a26230d7c119d622154f34d9795))
49+
50+
* refactor
51+
52+
Signed-off-by: Jan Kowalleck &lt;[email protected]&gt; ([`b4a133a`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/b4a133ab916ce66a2a955ff1c9bc8596234a8b30))
53+
54+
* style
55+
56+
Signed-off-by: Jan Kowalleck &lt;[email protected]&gt; ([`0843234`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/084323425fed612331c8f519e0a9ea7dfc4db636))
57+
58+
* refactor
59+
60+
Signed-off-by: Jan Kowalleck &lt;[email protected]&gt; ([`62c1d9a`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/62c1d9a18c0e0a2efb8f215e68a46057177733a0))
61+
62+
* reformat
63+
64+
Signed-off-by: Jan Kowalleck &lt;[email protected]&gt; ([`e10ffee`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/e10ffee9c8cd4a2fcfe9f06fce5a1e5d4c8157fe))
65+
66+
* reformat
67+
68+
Signed-off-by: Jan Kowalleck &lt;[email protected]&gt; ([`e0184cc`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/e0184cc4f098634076d11234b3cb949c5fba5bd9))
69+
70+
* fetch test data for CDX 1.6
71+
72+
Signed-off-by: Jan Kowalleck &lt;[email protected]&gt; ([`618a292`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/618a29258d576e96163be51511710232de16fe53))
73+
74+
* fetch schema 1.6 JSON
75+
76+
Signed-off-by: Jan Kowalleck &lt;[email protected]&gt; ([`289e81a`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/289e81a7e65e39d3960a9e57e9e75079966f2db1))
77+
78+
* update schema to published versions
79+
80+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`0449de2`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/0449de2e87b6907e8712a504d1fb7a5ebf14fbc2))
81+
82+
* more proper way to filter test cases
83+
84+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`0a2ca2c`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/0a2ca2cfe42fd7306b69ea7c5df3d603bca5c43d))
85+
86+
* add `acknowledgement` to `LicenseExpression` (#582)
87+
88+
89+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`ddd7847`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/ddd7847c9a70faa353000e0cfeeb710d8df5bb93))
90+
91+
* coding standards and typing
92+
93+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`5c97c2d`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/5c97c2d22595479ae4b464baf04da9113c40a549))
94+
95+
* raise `UserWarning` in `.component.version` has length &gt; 1024
96+
97+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`abebd4f`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/abebd4f63d23d95b1a126c710dabf924689a8695))
98+
99+
* Added `address` to `organizationalEntity`
100+
101+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`1327558`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/1327558454b5f30f478783ae6cbbe4de73f1e011))
102+
103+
* Added `address` to `organizationalEntity`
104+
105+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`318d723`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/318d7238cab1805a3524413b6d10314065284cb7))
106+
107+
* coding standards
108+
109+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`d294620`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/d294620e44d8498025fa98e99e65f3366eb66fc2))
110+
111+
* corrected CryptoMode enum
112+
113+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`71e4bc6`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/71e4bc6fdc70c75187baf51a0e45fb21afe62d79))
114+
115+
* additional tests to increase code coverage
116+
117+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`f504daa`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/f504daadbb633a1e46ab474f97f76717c3358f0b))
118+
119+
* coding standards
120+
121+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`a3e09d1`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/a3e09d1bf0fde331e4e7e4685db4ed391c16d765))
122+
123+
* test filtering
124+
125+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`14f699f`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/14f699fe3d9ea282c47e5a6947d783a6ca0304c5))
126+
127+
* coding standards
128+
129+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`b23df1f`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/b23df1fcbe9af2657e47a436d00409e75bfd6b18))
130+
131+
* typing and bandit ignores
132+
133+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`96a6dc9`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/96a6dc9d5684589951dd3541b5cfa24160689b41))
134+
135+
* add `.component.cryptoProperties` - with test failures for SchemaVersion &lt; 1.6
136+
137+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`1e71dc3`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/1e71dc3da931500e1c332034cb244bf8230a7360))
138+
139+
* properly added `.component.swhid`
140+
141+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`ee80ea3`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/ee80ea32a91941349e0a81c1b4345a9fa73d6943))
142+
143+
* imports tidied
144+
145+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`875a338`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/875a338337a77fca3f51f41f65136dc5ec1ccdb9))
146+
147+
* work to get deserialization tests passing
148+
149+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`fdece59`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/fdece595c5ffec1f47b0fe5f1fc57aad06677107))
150+
151+
* work to add `.component.omniborid` - but tests deserialisation tests fail due to schema differences (`.component.author` not in 1.6)
152+
153+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`af7b92b`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/af7b92b0b4736610806504f73784333920592a45))
154+
155+
* Deprecated `.component.author`. Added `.component.authors` and `.component.manufacturer`
156+
157+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`6227c08`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/6227c08af50c4c612baaedc64976652cd53e3a1b))
158+
159+
* work on `bom.metadata` for v1.6
160+
161+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`6192ed8`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/6192ed886faec9b51f080db628659d4246ebae70))
162+
163+
* note `bom.metadata.manufacture` as deprecated
164+
165+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`240dfaa`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/240dfaa00a74c66e71d8d65864bf492b67d5310a))
166+
167+
* re-generated test snapshots for v1.6
168+
169+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`8132c3e`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/8132c3ec59084e84156eb815e9da9277541e2afd))
170+
171+
* added draft v1.6 schemas and boilerplate for v1.6
172+
173+
Signed-off-by: Paul Horton &lt;[email protected]&gt; ([`41ca1e0`](https://github.com/CycloneDX/cyclonedx-python-lib/commit/41ca1e007c73692d5ada6af6318b0c5ff42fa11d))
174+
175+
5176
## v6.4.4 (2024-03-18)
6177

7178
### Chore

cyclonedx/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,4 @@
2020

2121
# !! version is managed by semantic_release
2222
# do not use typing here, or else `semantic_release` might have issues finding the variable
23-
__version__ = "6.4.4" # noqa:Q000
23+
__version__ = "7.0.0-alpha.1" # noqa:Q000

cyclonedx/exception/model.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,38 @@ class InvalidLocaleTypeException(CycloneDxModelException):
4545
pass
4646

4747

48+
class InvalidNistQuantumSecurityLevelException(CycloneDxModelException):
49+
"""
50+
Raised when an invalid value is provided for an NIST Quantum Security Level
51+
as defined at https://csrc.nist.gov/projects/post-quantum-cryptography/post-quantum-cryptography-standardization/
52+
evaluation-criteria/security-(evaluation-criteria).
53+
"""
54+
pass
55+
56+
57+
class InvalidOmniBorIdException(CycloneDxModelException):
58+
"""
59+
Raised when a supplied value for an OmniBOR ID does not meet the format requirements
60+
as defined at https://www.iana.org/assignments/uri-schemes/prov/gitoid.
61+
"""
62+
pass
63+
64+
65+
class InvalidRelatedCryptoMaterialSizeException(CycloneDxModelException):
66+
"""
67+
Raised when the supplied size of a Related Crypto Material is negative.
68+
"""
69+
pass
70+
71+
72+
class InvalidSwhidException(CycloneDxModelException):
73+
"""
74+
Raised when a supplied value for an Swhid does not meet the format requirements
75+
as defined at https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html.
76+
"""
77+
pass
78+
79+
4880
class InvalidUriException(CycloneDxModelException):
4981
"""
5082
Raised when a `str` is provided that needs to be a valid URI, but isn't.

0 commit comments

Comments
 (0)