head	1.19;
access;
symbols
	pkgsrc-2026Q3:1.19.0.2
	pkgsrc-2026Q3-base:1.19
	pkgsrc-2026Q2:1.18.0.2
	pkgsrc-2026Q2-base:1.18
	pkgsrc-2026Q1:1.17.0.4
	pkgsrc-2026Q1-base:1.17
	pkgsrc-2025Q4:1.17.0.2
	pkgsrc-2025Q4-base:1.17
	pkgsrc-2025Q3:1.14.0.2
	pkgsrc-2025Q3-base:1.14
	pkgsrc-2025Q2:1.13.0.6
	pkgsrc-2025Q2-base:1.13
	pkgsrc-2025Q1:1.13.0.4
	pkgsrc-2025Q1-base:1.13
	pkgsrc-2024Q4:1.13.0.2
	pkgsrc-2024Q4-base:1.13
	pkgsrc-2024Q3:1.11.0.4
	pkgsrc-2024Q3-base:1.11
	pkgsrc-2024Q2:1.11.0.2
	pkgsrc-2024Q2-base:1.11
	pkgsrc-2024Q1:1.10.0.2
	pkgsrc-2024Q1-base:1.10
	pkgsrc-2023Q4:1.9.0.2
	pkgsrc-2023Q4-base:1.9
	pkgsrc-2023Q3:1.6.0.4
	pkgsrc-2023Q3-base:1.6
	pkgsrc-2023Q2:1.6.0.2
	pkgsrc-2023Q2-base:1.6
	pkgsrc-2023Q1:1.5.0.6
	pkgsrc-2023Q1-base:1.5
	pkgsrc-2022Q4:1.5.0.4
	pkgsrc-2022Q4-base:1.5
	pkgsrc-2022Q3:1.5.0.2
	pkgsrc-2022Q3-base:1.5
	pkgsrc-2022Q2:1.4.0.2
	pkgsrc-2022Q2-base:1.4
	pkgsrc-2022Q1:1.3.0.2
	pkgsrc-2022Q1-base:1.3
	pkgsrc-2021Q4:1.1.0.2
	pkgsrc-2021Q4-base:1.1;
locks; strict;
comment	@# @;


1.19
date	2026.06.23.10.42.43;	author wiz;	state Exp;
branches;
next	1.18;
commitid	KcvlymvD3B8PwUKG;

1.18
date	2026.03.26.14.36.13;	author wiz;	state Exp;
branches;
next	1.17;
commitid	aHqn7TgVozycGuzG;

1.17
date	2025.12.09.13.49.34;	author wiz;	state Exp;
branches;
next	1.16;
commitid	9zVGvZL480dCRJlG;

1.16
date	2025.10.30.13.11.30;	author wiz;	state Exp;
branches;
next	1.15;
commitid	m33UibcMyPhiWAgG;

1.15
date	2025.09.22.20.31.05;	author wiz;	state Exp;
branches;
next	1.14;
commitid	nR5R1QGIgNwOAKbG;

1.14
date	2025.07.01.19.34.11;	author wiz;	state Exp;
branches;
next	1.13;
commitid	IOXUJWRex1LEW41G;

1.13
date	2024.10.30.14.35.34;	author wiz;	state Exp;
branches;
next	1.12;
commitid	qOnQ3hcBtJbv8HvF;

1.12
date	2024.10.22.07.55.51;	author wiz;	state Exp;
branches;
next	1.11;
commitid	3LiSc8DwuFnmbDuF;

1.11
date	2024.04.18.08.55.26;	author wiz;	state Exp;
branches;
next	1.10;
commitid	n1OcmCZlt0btwB6F;

1.10
date	2024.02.05.10.53.31;	author adam;	state Exp;
branches;
next	1.9;
commitid	TpbFZEhaAnpgweXE;

1.9
date	2023.12.17.22.22.06;	author wiz;	state Exp;
branches;
next	1.8;
commitid	HuIbiSWjhMokWRQE;

1.8
date	2023.11.07.22.58.58;	author wiz;	state Exp;
branches;
next	1.7;
commitid	FIWVsAd13HAfqJLE;

1.7
date	2023.10.28.19.57.14;	author wiz;	state Exp;
branches;
next	1.6;
commitid	jP8MYROLWZ3yJqKE;

1.6
date	2023.05.04.11.38.14;	author wiz;	state Exp;
branches;
next	1.5;
commitid	tEF6rvWRB8ANFDnE;

1.5
date	2022.09.18.11.53.56;	author wiz;	state Exp;
branches;
next	1.4;
commitid	wgI9sqYMcyqB5lUD;

1.4
date	2022.04.20.21.29.08;	author wiz;	state Exp;
branches;
next	1.3;
commitid	ZvHLnxOzkMzR7ZAD;

1.3
date	2022.03.08.09.08.29;	author wiz;	state Exp;
branches;
next	1.2;
commitid	Qx4P7R7JrZktpovD;

1.2
date	2022.02.20.21.23.44;	author wiz;	state Exp;
branches;
next	1.1;
commitid	1kIkUCzUea4vZotD;

1.1
date	2021.12.07.18.05.29;	author wiz;	state Exp;
branches;
next	;
commitid	dmJHzOM0ZOL3jKjD;


desc
@@


1.19
log
@py-cyclonedx-python-lib: update to 11.11.0.

## v11.11.0 (2026-06-17)

### Bug Fixes

- Protocolpropertiestype enum case `5g-aka` for CycloneDX 1.7

### Features

- `cryptoprimitive` enum cases for CycloneDX 1.7

- `protocolpropertiestype` enum cases for CycloneDX 1.7


## v11.10.0 (2026-06-11)

### Bug Fixes

- Lossless flattening of dependency graph during JSON serialization

- Typing in `contrib.bom.utils.BomDependencyGraphFlatMerger`

### Documentation

- Improve docs of `contrib.bom.utils.BomRefDiscriminator`

### Features

- Add `contrib.bom.utils.BomDependencyGraphFlatMerger`

- Move `output.BomRefDiscriminator` to `contrib.bom.utils.BomRefDiscriminator`

### Performance Improvements

- `contrib.bom.utils.bomdependencygraphflatmerger._flatten_merge`


## v11.9.0 (2026-06-08)

### Features

- Add support for license expression details
@
text
@@@comment $NetBSD$
${PYSITELIB}/cyclonedx/__init__.py
${PYSITELIB}/cyclonedx/__init__.pyc
${PYSITELIB}/cyclonedx/__init__.pyo
${PYSITELIB}/cyclonedx/_internal/__init__.py
${PYSITELIB}/cyclonedx/_internal/__init__.pyc
${PYSITELIB}/cyclonedx/_internal/__init__.pyo
${PYSITELIB}/cyclonedx/_internal/bom_ref.py
${PYSITELIB}/cyclonedx/_internal/bom_ref.pyc
${PYSITELIB}/cyclonedx/_internal/bom_ref.pyo
${PYSITELIB}/cyclonedx/_internal/compare.py
${PYSITELIB}/cyclonedx/_internal/compare.pyc
${PYSITELIB}/cyclonedx/_internal/compare.pyo
${PYSITELIB}/cyclonedx/_internal/time.py
${PYSITELIB}/cyclonedx/_internal/time.pyc
${PYSITELIB}/cyclonedx/_internal/time.pyo
${PYSITELIB}/cyclonedx/builder/__init__.py
${PYSITELIB}/cyclonedx/builder/__init__.pyc
${PYSITELIB}/cyclonedx/builder/__init__.pyo
${PYSITELIB}/cyclonedx/builder/this.py
${PYSITELIB}/cyclonedx/builder/this.pyc
${PYSITELIB}/cyclonedx/builder/this.pyo
${PYSITELIB}/cyclonedx/contrib/README.md
${PYSITELIB}/cyclonedx/contrib/__init__.py
${PYSITELIB}/cyclonedx/contrib/__init__.pyc
${PYSITELIB}/cyclonedx/contrib/__init__.pyo
${PYSITELIB}/cyclonedx/contrib/bom/__init__.py
${PYSITELIB}/cyclonedx/contrib/bom/__init__.pyc
${PYSITELIB}/cyclonedx/contrib/bom/__init__.pyo
${PYSITELIB}/cyclonedx/contrib/bom/utils.py
${PYSITELIB}/cyclonedx/contrib/bom/utils.pyc
${PYSITELIB}/cyclonedx/contrib/bom/utils.pyo
${PYSITELIB}/cyclonedx/contrib/component/__init__.py
${PYSITELIB}/cyclonedx/contrib/component/__init__.pyc
${PYSITELIB}/cyclonedx/contrib/component/__init__.pyo
${PYSITELIB}/cyclonedx/contrib/component/builders.py
${PYSITELIB}/cyclonedx/contrib/component/builders.pyc
${PYSITELIB}/cyclonedx/contrib/component/builders.pyo
${PYSITELIB}/cyclonedx/contrib/hash/__init__.py
${PYSITELIB}/cyclonedx/contrib/hash/__init__.pyc
${PYSITELIB}/cyclonedx/contrib/hash/__init__.pyo
${PYSITELIB}/cyclonedx/contrib/hash/factories.py
${PYSITELIB}/cyclonedx/contrib/hash/factories.pyc
${PYSITELIB}/cyclonedx/contrib/hash/factories.pyo
${PYSITELIB}/cyclonedx/contrib/license/__init__.py
${PYSITELIB}/cyclonedx/contrib/license/__init__.pyc
${PYSITELIB}/cyclonedx/contrib/license/__init__.pyo
${PYSITELIB}/cyclonedx/contrib/license/exceptions.py
${PYSITELIB}/cyclonedx/contrib/license/exceptions.pyc
${PYSITELIB}/cyclonedx/contrib/license/exceptions.pyo
${PYSITELIB}/cyclonedx/contrib/license/factories.py
${PYSITELIB}/cyclonedx/contrib/license/factories.pyc
${PYSITELIB}/cyclonedx/contrib/license/factories.pyo
${PYSITELIB}/cyclonedx/contrib/this/__init__.py
${PYSITELIB}/cyclonedx/contrib/this/__init__.pyc
${PYSITELIB}/cyclonedx/contrib/this/__init__.pyo
${PYSITELIB}/cyclonedx/contrib/this/builders.py
${PYSITELIB}/cyclonedx/contrib/this/builders.pyc
${PYSITELIB}/cyclonedx/contrib/this/builders.pyo
${PYSITELIB}/cyclonedx/contrib/vulnerability/__init__.py
${PYSITELIB}/cyclonedx/contrib/vulnerability/__init__.pyc
${PYSITELIB}/cyclonedx/contrib/vulnerability/__init__.pyo
${PYSITELIB}/cyclonedx/contrib/vulnerability/cvss.py
${PYSITELIB}/cyclonedx/contrib/vulnerability/cvss.pyc
${PYSITELIB}/cyclonedx/contrib/vulnerability/cvss.pyo
${PYSITELIB}/cyclonedx/exception/__init__.py
${PYSITELIB}/cyclonedx/exception/__init__.pyc
${PYSITELIB}/cyclonedx/exception/__init__.pyo
${PYSITELIB}/cyclonedx/exception/factory.py
${PYSITELIB}/cyclonedx/exception/factory.pyc
${PYSITELIB}/cyclonedx/exception/factory.pyo
${PYSITELIB}/cyclonedx/exception/model.py
${PYSITELIB}/cyclonedx/exception/model.pyc
${PYSITELIB}/cyclonedx/exception/model.pyo
${PYSITELIB}/cyclonedx/exception/output.py
${PYSITELIB}/cyclonedx/exception/output.pyc
${PYSITELIB}/cyclonedx/exception/output.pyo
${PYSITELIB}/cyclonedx/exception/serialization.py
${PYSITELIB}/cyclonedx/exception/serialization.pyc
${PYSITELIB}/cyclonedx/exception/serialization.pyo
${PYSITELIB}/cyclonedx/factory/__init__.py
${PYSITELIB}/cyclonedx/factory/__init__.pyc
${PYSITELIB}/cyclonedx/factory/__init__.pyo
${PYSITELIB}/cyclonedx/factory/license.py
${PYSITELIB}/cyclonedx/factory/license.pyc
${PYSITELIB}/cyclonedx/factory/license.pyo
${PYSITELIB}/cyclonedx/model/__init__.py
${PYSITELIB}/cyclonedx/model/__init__.pyc
${PYSITELIB}/cyclonedx/model/__init__.pyo
${PYSITELIB}/cyclonedx/model/bom.py
${PYSITELIB}/cyclonedx/model/bom.pyc
${PYSITELIB}/cyclonedx/model/bom.pyo
${PYSITELIB}/cyclonedx/model/bom_ref.py
${PYSITELIB}/cyclonedx/model/bom_ref.pyc
${PYSITELIB}/cyclonedx/model/bom_ref.pyo
${PYSITELIB}/cyclonedx/model/component.py
${PYSITELIB}/cyclonedx/model/component.pyc
${PYSITELIB}/cyclonedx/model/component.pyo
${PYSITELIB}/cyclonedx/model/component_evidence.py
${PYSITELIB}/cyclonedx/model/component_evidence.pyc
${PYSITELIB}/cyclonedx/model/component_evidence.pyo
${PYSITELIB}/cyclonedx/model/contact.py
${PYSITELIB}/cyclonedx/model/contact.pyc
${PYSITELIB}/cyclonedx/model/contact.pyo
${PYSITELIB}/cyclonedx/model/crypto.py
${PYSITELIB}/cyclonedx/model/crypto.pyc
${PYSITELIB}/cyclonedx/model/crypto.pyo
${PYSITELIB}/cyclonedx/model/definition.py
${PYSITELIB}/cyclonedx/model/definition.pyc
${PYSITELIB}/cyclonedx/model/definition.pyo
${PYSITELIB}/cyclonedx/model/dependency.py
${PYSITELIB}/cyclonedx/model/dependency.pyc
${PYSITELIB}/cyclonedx/model/dependency.pyo
${PYSITELIB}/cyclonedx/model/impact_analysis.py
${PYSITELIB}/cyclonedx/model/impact_analysis.pyc
${PYSITELIB}/cyclonedx/model/impact_analysis.pyo
${PYSITELIB}/cyclonedx/model/issue.py
${PYSITELIB}/cyclonedx/model/issue.pyc
${PYSITELIB}/cyclonedx/model/issue.pyo
${PYSITELIB}/cyclonedx/model/license.py
${PYSITELIB}/cyclonedx/model/license.pyc
${PYSITELIB}/cyclonedx/model/license.pyo
${PYSITELIB}/cyclonedx/model/lifecycle.py
${PYSITELIB}/cyclonedx/model/lifecycle.pyc
${PYSITELIB}/cyclonedx/model/lifecycle.pyo
${PYSITELIB}/cyclonedx/model/release_note.py
${PYSITELIB}/cyclonedx/model/release_note.pyc
${PYSITELIB}/cyclonedx/model/release_note.pyo
${PYSITELIB}/cyclonedx/model/service.py
${PYSITELIB}/cyclonedx/model/service.pyc
${PYSITELIB}/cyclonedx/model/service.pyo
${PYSITELIB}/cyclonedx/model/tool.py
${PYSITELIB}/cyclonedx/model/tool.pyc
${PYSITELIB}/cyclonedx/model/tool.pyo
${PYSITELIB}/cyclonedx/model/vulnerability.py
${PYSITELIB}/cyclonedx/model/vulnerability.pyc
${PYSITELIB}/cyclonedx/model/vulnerability.pyo
${PYSITELIB}/cyclonedx/output/__init__.py
${PYSITELIB}/cyclonedx/output/__init__.pyc
${PYSITELIB}/cyclonedx/output/__init__.pyo
${PYSITELIB}/cyclonedx/output/json.py
${PYSITELIB}/cyclonedx/output/json.pyc
${PYSITELIB}/cyclonedx/output/json.pyo
${PYSITELIB}/cyclonedx/output/xml.py
${PYSITELIB}/cyclonedx/output/xml.pyc
${PYSITELIB}/cyclonedx/output/xml.pyo
${PYSITELIB}/cyclonedx/py.typed
${PYSITELIB}/cyclonedx/schema/__init__.py
${PYSITELIB}/cyclonedx/schema/__init__.pyc
${PYSITELIB}/cyclonedx/schema/__init__.pyo
${PYSITELIB}/cyclonedx/schema/_res/README.md
${PYSITELIB}/cyclonedx/schema/_res/__init__.py
${PYSITELIB}/cyclonedx/schema/_res/__init__.pyc
${PYSITELIB}/cyclonedx/schema/_res/__init__.pyo
${PYSITELIB}/cyclonedx/schema/_res/bom-1.0.SNAPSHOT.xsd
${PYSITELIB}/cyclonedx/schema/_res/bom-1.1.SNAPSHOT.xsd
${PYSITELIB}/cyclonedx/schema/_res/bom-1.2-strict.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/bom-1.2.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/bom-1.2.SNAPSHOT.xsd
${PYSITELIB}/cyclonedx/schema/_res/bom-1.3-strict.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/bom-1.3.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/bom-1.3.SNAPSHOT.xsd
${PYSITELIB}/cyclonedx/schema/_res/bom-1.4.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/bom-1.4.SNAPSHOT.xsd
${PYSITELIB}/cyclonedx/schema/_res/bom-1.5.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/bom-1.5.SNAPSHOT.xsd
${PYSITELIB}/cyclonedx/schema/_res/bom-1.6.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/bom-1.6.SNAPSHOT.xsd
${PYSITELIB}/cyclonedx/schema/_res/bom-1.7.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/bom-1.7.SNAPSHOT.xsd
${PYSITELIB}/cyclonedx/schema/_res/cryptography-defs.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/jsf-0.82.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/spdx.SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/_res/spdx.SNAPSHOT.xsd
${PYSITELIB}/cyclonedx/schema/deprecation.py
${PYSITELIB}/cyclonedx/schema/deprecation.pyc
${PYSITELIB}/cyclonedx/schema/deprecation.pyo
${PYSITELIB}/cyclonedx/schema/schema.py
${PYSITELIB}/cyclonedx/schema/schema.pyc
${PYSITELIB}/cyclonedx/schema/schema.pyo
${PYSITELIB}/cyclonedx/serialization/__init__.py
${PYSITELIB}/cyclonedx/serialization/__init__.pyc
${PYSITELIB}/cyclonedx/serialization/__init__.pyo
${PYSITELIB}/cyclonedx/spdx.py
${PYSITELIB}/cyclonedx/spdx.pyc
${PYSITELIB}/cyclonedx/spdx.pyo
${PYSITELIB}/cyclonedx/validation/__init__.py
${PYSITELIB}/cyclonedx/validation/__init__.pyc
${PYSITELIB}/cyclonedx/validation/__init__.pyo
${PYSITELIB}/cyclonedx/validation/json.py
${PYSITELIB}/cyclonedx/validation/json.pyc
${PYSITELIB}/cyclonedx/validation/json.pyo
${PYSITELIB}/cyclonedx/validation/model.py
${PYSITELIB}/cyclonedx/validation/model.pyc
${PYSITELIB}/cyclonedx/validation/model.pyo
${PYSITELIB}/cyclonedx/validation/xml.py
${PYSITELIB}/cyclonedx/validation/xml.pyc
${PYSITELIB}/cyclonedx/validation/xml.pyo
${PYSITELIB}/${WHEEL_INFODIR}/METADATA
${PYSITELIB}/${WHEEL_INFODIR}/RECORD
${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE
${PYSITELIB}/${WHEEL_INFODIR}/licenses/NOTICE
@


1.18
log
@py-cyclonedx-python-lib: update to 11.7.0.

## v11.7.0 (2026-03-17)

### Documentation

- Add comprehensive SBOM validation guide
- Docstrings for schema version classes

- Modernize RTF setup

### Features

- Add properties for licenses according to CycloneDX 1.5

- Make schema deprecation warnings handle-able
@
text
@d27 6
@


1.17
log
@py-cyclonedx-python-lib: update to 11.6.0.

Features

    Moved non‑standard implementations to Contrib area (#916, 15a9023)
        Added
            New sub-package contrib.
        Changed
            Moved non‑standard implementations to Contrib area.
        Deprecated
            Certain exports have been deprecated; downstream imports should be updated to the new locations.
            Note: the symbols themselves remain supported. See documentation and the "Refactored" section below for details.
            Some (trivial) non-standard functionality was deprecated:
                model.bom.Bom.get_component_by_purl()
                model.bom.Bom.get_urn_uuid()
                model.bom.Bom.has_component()
                model.bom.Bom.get_vulnerabilities_for_bom_ref()
                model.bom.Bom.has_vulnerabilities()
                model.bom.Bom.urn()
        Refactored
            The following symbols were moved.
            The symbols are still import-able through their old location.
                OLD -> NEW
                builder.this.this_component() -> contrib.this.builders.this_component()
                builder.this.this_tool() -> contrib.this.builders.this_tool()
                exception.factory.* -> contrib.license.exceptions.*
                factory.license.LicenseFactory -> contrib.license.factories.LicenseFactory
                model.HashType.from_hashlib_alg() -> contrib.hash.factories.HashTypeFactory.from_hashlib_alg()
                model.HashType.from_composite_str() -> contrib.hash.factories.HashTypeFactory.from_composite_str()
                model.component.Component.for_file() -> contrib.component.builders.ComponentBuilder.make_for_file()
                model.vulnerability.VulnerabilitySeverity.get_from_cvss_scores() -> contrib.vulnerability.cvss.vs_from_cvss_scores()
@
text
@d169 3
@


1.16
log
@py-cyclonedx-python-lib: update to 11.4.0.

## v11.4.0 (2025-10-23)

### Features

- Add support for CycloneDX 1.7 (basics)


## v11.3.0 (2025-10-22)

### Bug Fixes

- Implement `__lt__` for models still missing it

### Features

- Deserialize single `ComponentEvidence.identity`
@
text
@a13 3
${PYSITELIB}/cyclonedx/_internal/hash.py
${PYSITELIB}/cyclonedx/_internal/hash.pyc
${PYSITELIB}/cyclonedx/_internal/hash.pyo
d23 37
@


1.15
log
@py-cyclonedx-python-lib: fix PLIST for latest poetry-core and depend on it
@
text
@d129 3
@


1.14
log
@py-cyclonedx-python-lib: update to 10.2.0.

## v10.2.0 (2025-06-10)

### Bug Fixes

- `vulnerabilityscoresource.get_from_vector()` for `CVSS_V3_1` and `CVSS_V4`

### Features

- Add support for component's evidences according to spec
@
text
@a152 1
${PYSITELIB}/${WHEEL_INFODIR}/LICENSE
a153 1
${PYSITELIB}/${WHEEL_INFODIR}/NOTICE
d156 2
@


1.13
log
@py-cyclonedx-python-lib: update to 8.4.0.

8.4.0

Feature

    feat: add factory method XsUri.make_bom_link() (#728)

Fix

    fix: no warning for missing dependencies if no component exists (#720)

Docs

    docs: fix Definitions docstring (#731)

## v8.3.0 (2024-10-26)

### Documentation

* docs: revisit examples readme (#725)

### Feature

* feat: add basic support for Definitions  (#701)

## v8.2.1 (2024-10-24)

### Fix

* fix: encode quotation mark in URL (#724)

## v8.2.0 (2024-10-22)

### Feature

* feat: Add Python 3.13 support (#718)

## v8.1.0 (2024-10-21)

### Documentation

* docs: fix code examples regarding outputting (#709)

### Feature

* feat: add support for Lifecycles in BOM metadata (#698)
@
text
@d59 3
@


1.12
log
@py-cyclonedx-python-lib: update to 8.0.0.

### Documentation

* docs(chaneglog): omit chore/ci/refactor/style/test/build (#703)
* docs: rephrase migration paths

### Unknown

* rework tools xml deserializer (#700)
@
text
@d8 3
d65 3
d80 3
@


1.11
log
@py-cyclonedx-python-lib: update to 7.1.0.

7.1.0

Documentation
    docs: missing schema support table & update schema support to reflect version 7.0.0 (#584)
Feature
    feat: support bom.properties for CycloneDX v1.5+ (#585)

7.0.0

Breaking
    feat!: Support for CycloneDX v1.6
    added draft v1.6 schemas and boilerplate for v1.6
    re-generated test snapshots for v1.6
    note bom.metadata.manufacture as deprecated
    work on bom.metadata for v1.6
    Deprecated .component.author. Added .component.authors and .component.manufacturer
    work to add .component.omniborid - but tests deserialisation tests fail due to schema differences (.component.author not in 1.6)
    work to get deserialization tests passing
    chore(deps): bump py-serializable to >=1.0.3 to resolve issues with deserialization to XML
    imports tidied
    properly added .component.swhid
    add .component.cryptoProperties - with test failures for SchemaVersion < 1.6
    typing and bandit ignores
    coding standards
    test filtering
    coding standards
    additional tests to increase code coverage
    corrected CryptoMode enum
    coding standards
    Added address to organizationalEntity
    Added address to organizationalEntity
    raise UserWarning in .component.version has length > 1024
    coding standards and typing
    add acknowledgement to LicenseExpression (#582)
    more proper way to filter test cases
    update schema to published versions
    fetch schema 1.6 JSON
    fetch test data for CDX 1.6
    reformat
    reformat
    refactor
    style
    refactor
    docs
@
text
@d17 6
d80 3
@


1.10
log
@py-cyclonedx-python-lib: updated to 6.4.1

v6.4.1

chore(deps-dev): update bandit requirement from 1.7.6 to 1.7.7
chore(deps-dev): update coverage requirement from 7.4.0 to 7.4.1
docs: ship docs with sdist build
docs: refactor example
fix: model.BomRef no longer equal to unset peers
@
text
@d1 1
a1 6
@@comment $NetBSD: PLIST,v 1.9 2023/12/17 22:22:06 wiz Exp $
${PYSITELIB}/${WHEEL_INFODIR}/LICENSE
${PYSITELIB}/${WHEEL_INFODIR}/METADATA
${PYSITELIB}/${WHEEL_INFODIR}/NOTICE
${PYSITELIB}/${WHEEL_INFODIR}/RECORD
${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
d50 6
d106 2
d132 5
@


1.9
log
@py-cyclonedx-python-lib: update to 6.0.0.

v6.0.0 (2023-12-10)

Breaking

    feat!: v6.0.0 (#492)

Breaking Changes

    Removed symbols that were already marked as deprecated (via #493)
    Removed symbols in parser.* (#489 via #495)
    Removed output.LATEST_SUPPORTED_SCHEMA_VERSION (#491 via #494)
    Serialization of unsupported enum values might downgrade/migrate/omit them (#490 via #496)
    Handling might raise warnings if a data loss occurred due to omitting.
    The result is a guaranteed valid XML/JSON, since no (enum-)invalid values are rendered.
    Serialization of any model.component.Component with unsupported type raises exception.serialization.SerializationOfUnsupportedComponentTypeException (#490 via #496)
    Object model.bom_ref.BomRef's property value defaults to Null, was arbitrary UUID (#504 via #505)
    This change does not affect serialization. All bom-refs are guaranteed to have unique values on rendering.
    Removed helpers from public API (#503 via #506)

Added

    Basic support for CycloneDX 1.5 (#404 via #488) -- Thanks to @@Churro
        No data models were enhanced nor added, yet.
        Pull requests to add functionality are welcome.
        Existing enumerable got new cases, to reflect features of CycloneDX 1.5 (#404 via #488)
        Outputters were enabled to render CycloneDX 1.5 (#404 via #488)

Tests

    Created (regression/unit/integration/functional) tests for CycloneDX 1.5 (#404 via #488)
    Created (regression/functional) tests for Enums' handling and completeness (#490 via #496)

Misc

    Bumped dependency py-serializable@@^0.16, was @@^0.15 (via #496)

API Changes — the details for migration

    Added new sub-package exception.serialization (via #496)
    Removed class models.ComparableTuple (#503 via #506)
    Enum model.ExternalReferenceType got new cases, to reflect features for CycloneDX 1.5 (#404 via #488)
    Removed function models.get_now_utc (#503 via #506)
    Removed function models.sha1sum (#503 via #506)
    Enum model.component.ComponentType got new cases, to reflect features for CycloneDX 1.5 (#404 via #488)
    Removed model.component.Component.__init__()'s deprecated optional kwarg namespace (via #493)
    Use kwarg group instead.
    Removed model.component.Component.__init__()'s deprecated optional kwarg license_str (via #493)
    Use kwarg licenses instead.
    Removed deprecated method model.component.Component.get_namespace() (via #493)
    Removed class models.dependency.DependencyDependencies (#503 via #506)
    Removed model.vulnerability.Vulnerability.__init__()'s deprecated optional kwarg source_name (via #493)
    Use kwarg source instead.
    Removed model.vulnerability.Vulnerability.__init__()'s deprecated optional kwarg source_url (via #493)
    Use kwarg source instead.
    Removed model.vulnerability.Vulnerability.__init__()'s deprecated optional kwarg recommendations (via #493)
    Use kwarg recommendation instead.
    Removed model.vulnerability.VulnerabilityRating.__init__()'s deprecated optional kwarg score_base (via #493)
    Use kwarg score instead.
    Enum model.vulnerability.VulnerabilityScoreSource got new cases, to reflect features for CycloneDX 1.5 (#404 via #488)
    Removed output.LATEST_SUPPORTED_SCHEMA_VERSION (#491 via #494)
    Removed deprecated function output.get_instance() (via #493)
    Use function output.make_outputter() instead.
    Added new class output.json.JsonV1Dot5, to reflect CycloneDX 1.5 (#404 via #488)
    Added new item to dict output.json.BY_SCHEMA_VERSION, to reflect CycloneDX 1.5 (#404 via #488)
    Added new class output.xml.XmlV1Dot5, to reflect CycloneDX 1.5 (#404 via #488)
    Added new item to dict output.xml.BY_SCHEMA_VERSION, to reflect CycloneDX 1.5 (#404 via #488)
    Removed class parser.ParserWarning (#489 via #495)
    Removed class parser.BaseParser (#489 via #495)
    Enum schema.SchemaVersion got new case V1_5, to reflect CycloneDX 1.5 (#404 via #488)
@
text
@d1 6
a6 1
@@comment $NetBSD$
a128 4
${PYSITELIB}/${WHEEL_INFODIR}/LICENSE
${PYSITELIB}/${WHEEL_INFODIR}/METADATA
${PYSITELIB}/${WHEEL_INFODIR}/RECORD
${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
@


1.8
log
@py-cyclonedx-python-lib: update to 5.1.1.

5.1.1

Bugfix release

5.1.0

Documentation

    docs: advance license docs (f61a730)

Feature

    feat: guarantee unique BomRefs in serialization result (#479) (a648775)
    Incorporate output.BomRefDiscriminator on serialization

5.0.1

What's Changed

    docs: fix RTFD build by @@jkowalleck in #476
    docs: revisit project meta by @@jkowalleck in #475
    chore: make pyproject parsable by dependabot by @@jkowalleck in #477
    chore(deps): bump python-semantic-release/python-semantic-release from 8.0.8 to 8.3.0 by @@dependabot in #474

5.0.0

BREAKING CHANGES

    Dropped support for python<3.8 (#436 via #441; enable #433)
    Reworked license related models, collections, and factories (#365 via #466)
    Behavior
        Method model.bom.Bom.validate() will throw exception.LicenseExpressionAlongWithOthersException, if detecting invalid license constellation (#453 via #452)
        Fixed tuple comparison when unequal lengths (via #461)
    API
        Enum schema.SchemaVersion is no longer string-like (#442 via #447)
        Enum schema.OutputVersion is no longer string-like (#442 via #447)
        Abstract class output.BaseOutput requires implementation of new method output_format (#446 via #447)
        Abstract method output.BaseOutput.output_as_string() got new optional parameter indent (#437 via #458)
        Abstract method output.BaseOutput.output_as_string() accepts arbitrary kwargs (via #458, #462)
        Removed class factory.license.LicenseChoiceFactory (via #466)
        The old functionality was integrated into factory.license.LicenseFactory.
        Method factory.license.LicenseFactory.make_from_string()'s parameter name_or_spdx was renamed to value (via #466)
        Method factory.license.LicenseFactory.make_from_string()'s return value can also be a LicenseExpression (#365 via #466)
        The behavior imitates the old factory.license.LicenseChoiceFactory.make_from_string()
        Renamed class module.License to module.license.DisjunctliveLicense (#365 via #466)
        Removed class module.LicenseChoice (#365 via #466)
        Use dedicated classes module.license.DisjunctliveLicense and module.license.LicenseExpression instead
        All occurrences of models.LicenseChoice were replaced by models.licenses.License (#365 via #466)
        All occurrences of SortedSet[LicenseChoice] were specialized to models.license.LicenseRepository (#365 via #466)

Fixed

    Serialization of multy-licenses (#365 via #466)
    Detect unused "dependent" components in model.bom.validate() (via #464)

Changed

    Updated latest supported list of supported SPDX license identifiers (via #433)
    Shipped schema files are moved to a protected space (via #433)
    These files were never intended for public use.
    XML output uses a default namespace, which makes results smaller. (#438 via #458)

Added

    Support for Python 3.12 (via #460)
    JSON- & XML-Validators (#432, #446 via #433, #448)
    The functionality might require additional dependencies, that can be installed with the extra "validation".
    See the docs in section "Installation" for details.
    JSON & XML can be generated in a more human-friendly form (#437, #438 via #458)
    Type hints, typings & overloads for better integration downstream (via #463)
    API
        New function output.make_outputter() (via #469)
        This replaces the deprecated function output.get_instance().
        New sub-package validation (#432, #446 via #433, #448, #469, #468, #469)
        New class exception.MissingOptionalDependencyException (#432 via #433)
        New class exception.LicenseExpressionAlongWithOthersException (#453 via #452)
        New dictionaries output.{json,xml}.BY_SCHEMA_VERSION (#446 via #447)
        Existing implementations of class output.BaseOutput now have a new method output_format (#446 via #447)
        Existing implementations of method output.BaseOutput.output_as_string() got new optional parameter indent (#437 via #458)
        Existing implementations of method output.BaseOutput.output_to_file() got new optional parameter indent (#437 via #458)
        New method factory.license.LicenseFactory.make_with_expression() (via #466)
        New class model.license.DisjunctiveLicense (#365 via #466)
        New class model.license.LicenseExpression (#365 via #466)
        New class model.license.LicenseRepository (#365 via #466)
        New class serialization.LicenseRepositoryHelper (#365 via #466)

Deprecated

    Function output.get_instance() might be removed, use output.make_outputter() instead (via #469)

Tests

    Added validation tests with official CycloneDX schema test data (#432 via #433)
    Use proper snapshots, instead of pseudo comparison (#437 via #464)
    Added regression test for bug #365 (via #466, #467)

Misc

    Dependencies: bumped py-serializable@@^0.15.0, was @@^0.11.1 (via #458, #463, #464, #466)
    Style: streamlined quotes and strings (via #472)
    Chore: bumped internal dev- and QA-tools (#436 via #441, #472)
    Chore: added more QA tools to prevent common security issues (via #473)
@
text
@d5 12
d29 3
a79 3
${PYSITELIB}/cyclonedx/parser/__init__.py
${PYSITELIB}/cyclonedx/parser/__init__.pyc
${PYSITELIB}/cyclonedx/parser/__init__.pyo
d98 2
@


1.7
log
@python/wheel.mk: simplify a lot, and switch to 'installer' for installation

This follows the recommended bootstrap method (flit_core, build, installer).

However, installer installs different files than pip, so update PLISTs
for all packages using wheel.mk and bump their PKGREVISIONs.
@
text
@d44 3
d72 17
a88 18
${PYSITELIB}/cyclonedx/schema/bom-1.0.xsd
${PYSITELIB}/cyclonedx/schema/bom-1.1.xsd
${PYSITELIB}/cyclonedx/schema/bom-1.2-strict.schema.json
${PYSITELIB}/cyclonedx/schema/bom-1.2.schema.json
${PYSITELIB}/cyclonedx/schema/bom-1.2.xsd
${PYSITELIB}/cyclonedx/schema/bom-1.2b.schema.json
${PYSITELIB}/cyclonedx/schema/bom-1.3-strict.schema.json
${PYSITELIB}/cyclonedx/schema/bom-1.3.proto
${PYSITELIB}/cyclonedx/schema/bom-1.3.schema.json
${PYSITELIB}/cyclonedx/schema/bom-1.3.xsd
${PYSITELIB}/cyclonedx/schema/bom-1.3a.schema.json
${PYSITELIB}/cyclonedx/schema/bom-1.4.schema.json
${PYSITELIB}/cyclonedx/schema/bom-1.4.xsd
${PYSITELIB}/cyclonedx/schema/ext/bom-descriptor-0.9.xsd
${PYSITELIB}/cyclonedx/schema/ext/bom-descriptor-1.0.xsd
${PYSITELIB}/cyclonedx/schema/ext/dependency-graph-1.0.xsd
${PYSITELIB}/cyclonedx/schema/ext/vulnerability-1.0-SNAPSHOT.schema.json
${PYSITELIB}/cyclonedx/schema/ext/vulnerability-1.0.xsd
a91 2
${PYSITELIB}/cyclonedx/schema/spdx.schema.json
${PYSITELIB}/cyclonedx/schema/spdx.xsd
d98 12
@


1.6
log
@py-cyclonedx-python-lib: update to 4.0.0.

Feature

    Release 4.0.0 #341) (8fb1b14)

Breaking

    Large portions of this library have been re-written for this release and many methods and contracts have changed. (8fb1b14)
    Model classes changed to relocated Vulnerability at Bom, not at Component (8fb1b14)
    Model classes changed to relocated Vulnerability at Bom, not at Component (8fb1b14)
    (8fb1b14)
@
text
@d4 1
d7 1
d10 1
d13 1
d16 1
d19 1
d22 1
d25 1
d28 1
d31 1
d34 1
d37 1
d40 1
d43 1
d46 1
d49 1
d52 1
d55 1
d58 1
d61 1
d64 1
d68 1
d89 1
d94 1
d97 1
a97 1
${PYSITELIB}/${WHEEL_INFODIR}/INSTALLER
a100 1
${PYSITELIB}/${WHEEL_INFODIR}/REQUESTED
a101 1
${PYSITELIB}/${WHEEL_INFODIR}/direct_url.json
@


1.5
log
@py-cyclonedx-python-lib: update to 3.1.0.

v3.1.0

Feature

    Out-factor SPDX compound detection (fd4d537, 2b69925)
    License factories (033bad2)

Note: There was no 3.0.0 release officially, but due to CI publishing
issues, an unexpected 3.0.0 release was publiched to PyPi and
subsequently yanked from PyPi. There are NO breaking changes between
2.7.1 and 3.1.0.
@
text
@a3 1
${PYSITELIB}/cyclonedx/__init__.pyo
a5 1
${PYSITELIB}/cyclonedx/exception/__init__.pyo
a7 1
${PYSITELIB}/cyclonedx/exception/factory.pyo
a9 1
${PYSITELIB}/cyclonedx/exception/model.pyo
a11 1
${PYSITELIB}/cyclonedx/exception/output.pyo
a13 1
${PYSITELIB}/cyclonedx/factory/__init__.pyo
a15 1
${PYSITELIB}/cyclonedx/factory/license.pyo
a17 1
${PYSITELIB}/cyclonedx/model/__init__.pyo
a19 1
${PYSITELIB}/cyclonedx/model/bom.pyo
a21 1
${PYSITELIB}/cyclonedx/model/bom_ref.pyo
a23 1
${PYSITELIB}/cyclonedx/model/component.pyo
a25 1
${PYSITELIB}/cyclonedx/model/dependency.pyo
a27 1
${PYSITELIB}/cyclonedx/model/impact_analysis.pyo
a29 1
${PYSITELIB}/cyclonedx/model/issue.pyo
a31 1
${PYSITELIB}/cyclonedx/model/release_note.pyo
a33 1
${PYSITELIB}/cyclonedx/model/service.pyo
a35 1
${PYSITELIB}/cyclonedx/model/vulnerability.pyo
a37 1
${PYSITELIB}/cyclonedx/output/__init__.pyo
a39 10
${PYSITELIB}/cyclonedx/output/json.pyo
${PYSITELIB}/cyclonedx/output/schema.py
${PYSITELIB}/cyclonedx/output/schema.pyc
${PYSITELIB}/cyclonedx/output/schema.pyo
${PYSITELIB}/cyclonedx/output/serializer/__init__.py
${PYSITELIB}/cyclonedx/output/serializer/__init__.pyc
${PYSITELIB}/cyclonedx/output/serializer/__init__.pyo
${PYSITELIB}/cyclonedx/output/serializer/json.py
${PYSITELIB}/cyclonedx/output/serializer/json.pyc
${PYSITELIB}/cyclonedx/output/serializer/json.pyo
a41 1
${PYSITELIB}/cyclonedx/output/xml.pyo
a43 1
${PYSITELIB}/cyclonedx/parser/__init__.pyo
d45 2
d65 2
d69 2
d73 7
a79 6
${PYSITELIB}/cyclonedx/spdx.pyo
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
${PYSITELIB}/${EGG_INFODIR}/requires.txt
${PYSITELIB}/${EGG_INFODIR}/top_level.txt
@


1.4
log
@py-cyclonedx-python-lib: update to 2.3.0.

2.3.0

Feature

    Add support for Dependency Graph in Model and output serialisation (ea34513)

2.2.0

Feature

    Bump XML schemas to latest fix version for 1.2-1.4 - see: (bd2e756)
    Bump JSON schemas to latest fix verison for 1.2 and 1.3 - see: (bd6a088)

2.1.1

Fix

    Prevent error if version not set (b9a84b5)
    version being optional in JSON output can raise error (ba0c82f)

2.1.0

Feature

    Output errors are verbose (bfe8fb1)
@
text
@d8 3
d17 6
d95 3
@


1.3
log
@py-cyclonedx-python-lib: update to 2.0.0.

Feature

    Bump dependencies (da3f0ca)
    Completed work on #155 (#172) (a926b34)
    Support complete model for bom.metadata (#162) (2938a6c)
    Support for bom.externalReferences in JSON and XML #124 (1b733d7)
    Complete support for bom.components (#155) (32c0139)
    Support services in XML BOMs (9edf6c9)

Fix

    license_url not serialised in XML output #179 (#180) (f014d7c)
    Component.bom_ref is not Optional in our model implementation (in the schema it is) - we generate a UUID if bom_ref is not supplied explicitly (5c954d1)
    Temporary fix for __hash__ of Component with properties #153 (a51766d)
    Further fix for #150 (1f55f3e)
    Regression introduced by first fix for #150 (c09e396)
    Components with no version (optional since 1.4) produce invalid BOM output in XML #150 (70d25c8)
    expression not supported in Component Licsnes for version 1.0 (15b081b)

Breaking

    Adopt PEP-3102 (da3f0ca)
    Optional Lists are now non-optional Sets (da3f0ca)
    Remove concept of DEFAULT schema version - replaced with LATEST schema version (da3f0ca)
    Added BomRef data type (da3f0ca)
@
text
@d26 3
d71 1
d76 1
@


1.2
log
@py-cyclonedx-python-lib: update to 1.3.0.

1.3.0 (2022-01-24)
Feature

    bom-ref for Component and Vulnerability default to a UUID (#142) (3953bb6)

1.2.0 (2022-01-24)
Feature

    Add CPE to component (#138) (269ee15)

1.1.1 (2022-01-19)
Fix

    Bump dependencies (#136) (18ec498)

1.1.0 (2022-01-13)
Feature

    Add support for bom.metadata.component (#118) (1ac31f4)

1.0.0 (2022-01-13)

Support for CycloneDX schema version 1.4 (#108)
Breaking Changes

Support for CycloneDX 1.4. This includes:

    Support for tools having externalReferences
    Allowing version for a Component to be optional in 1.4
    Support for releaseNotes per Component
    Support for the core schema implementation of Vulnerabilities (VEX)

Features

    $schema is now included in JSON BOMs
    Concrete Parsers how now been moved into downstream projects to keep this libraries focus on modelling and outputting CycloneDX - see https://github.com/CycloneDX/cyclonedx-python

Fixes

    Unit tests now include schema validation (we've left schema validation out of the core library due to dependency bloat)
    Ensure schema is adhered to in 1.0
    URIs are now used throughout the library through a new XsUri class to provide URI validation

Other

    Documentation is now hosted on readthedocs.org (https://cyclonedx-python-library.readthedocs.io/)
    Added reference to release of this library on Anaconda

0.12.3 (2021-12-15)
Fix

    Removed requirements-parser as dependency (temp) as not available for Python 3 as Wheel (#98) (3677d9f)

0.12.2 (2021-12-09)
Fix

    Tightened dependency packageurl-python (#95) (eb4ae5c)

0.12.1 (2021-12-09)
Fix

    Further loosened dependency definitions (8bef6ec)

0.12.0 (2021-12-09)
Feature

    Loosed dependency versions to make this library more consumable (55f10fb)
@
text
@d20 3
d35 3
@


1.1
log
@security/py-cyclonedx-python-lib: import py-cyclonedx-python-lib-0.11.1

This CycloneDX module for Python can generate valid CycloneDX
bill-of-material document containing an aggregate of all project
dependencies.

This module is not designed for standalone use.
@
text
@d8 6
a13 3
${PYSITELIB}/cyclonedx/exception/parser.py
${PYSITELIB}/cyclonedx/exception/parser.pyc
${PYSITELIB}/cyclonedx/exception/parser.pyo
d23 9
d44 6
a55 15
${PYSITELIB}/cyclonedx/parser/conda.py
${PYSITELIB}/cyclonedx/parser/conda.pyc
${PYSITELIB}/cyclonedx/parser/conda.pyo
${PYSITELIB}/cyclonedx/parser/environment.py
${PYSITELIB}/cyclonedx/parser/environment.pyc
${PYSITELIB}/cyclonedx/parser/environment.pyo
${PYSITELIB}/cyclonedx/parser/pipenv.py
${PYSITELIB}/cyclonedx/parser/pipenv.pyc
${PYSITELIB}/cyclonedx/parser/pipenv.pyo
${PYSITELIB}/cyclonedx/parser/poetry.py
${PYSITELIB}/cyclonedx/parser/poetry.pyc
${PYSITELIB}/cyclonedx/parser/poetry.pyo
${PYSITELIB}/cyclonedx/parser/requirements.py
${PYSITELIB}/cyclonedx/parser/requirements.pyc
${PYSITELIB}/cyclonedx/parser/requirements.pyo
d66 2
a74 6
${PYSITELIB}/cyclonedx/utils/__init__.py
${PYSITELIB}/cyclonedx/utils/__init__.pyc
${PYSITELIB}/cyclonedx/utils/__init__.pyo
${PYSITELIB}/cyclonedx/utils/conda.py
${PYSITELIB}/cyclonedx/utils/conda.pyc
${PYSITELIB}/cyclonedx/utils/conda.pyo
@

