Metadata-Version: 2.4
Name: csaf
Version: 2026.2.1
Summary: Common Security Advisory Framework (CSAF) Verification, Validation, and Application Programming Interface (API).
Author-email: Stefan Hagen <stefan@hagen.link>
Maintainer-email: Stefan Hagen <stefan@hagen.link>
License-Expression: MIT
Project-URL: Homepage, https://git.sr.ht/~sthagen/csaf
Project-URL: Bug-Tracker, https://todo.sr.ht/~sthagen/csaf
Project-URL: Documentation, https://codes.dilettant.life/docs/csaf
Project-URL: Source-Code, https://git.sr.ht/~sthagen/csaf
Project-URL: Test-Coverage, https://codes.dilettant.life/coverage/csaf
Keywords: code-generation,developer-tools,validation,verification
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Build Tools
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: jmespath>=1.1.0
Requires-Dist: jsonschema>=4.26.0
Requires-Dist: langcodes>=3.5.1
Requires-Dist: lazr.uri>=1.0.7
Requires-Dist: msgspec>=0.20.0
Requires-Dist: pydantic>=2.12.5
Requires-Dist: referencing>=0.37.0
Requires-Dist: scooby>=0.11.0
Requires-Dist: setuptools>=80.10.2
Requires-Dist: typer>=0.21.1
Provides-Extra: dev
Requires-Dist: black; extra == "dev"
Requires-Dist: coverage; extra == "dev"
Requires-Dist: hypothesis; extra == "dev"
Requires-Dist: mypy; extra == "dev"
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: pytest-flake8; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Dynamic: license-file

# CSAF

Common Security Advisory Framework (CSAF) Verification, Validation, and Application Programming Interface (API).

[![License](https://git.sr.ht/~sthagen/csaf/blob/default/docs/badges/license-spdx-mit.svg)](https://git.sr.ht/~sthagen/csaf/tree/default/item/LICENSE)
[![Country of Origin](https://git.sr.ht/~sthagen/csaf/blob/default/docs/badges/country-of-origin-name-switzerland-neutral.svg)](https://git.sr.ht/~sthagen/csaf/tree/default/item/COUNTRY-OF-ORIGIN)
[![Export Classification Control Number (ECCN)](https://git.sr.ht/~sthagen/csaf/blob/default/docs/badges/export-control-classification-number_eccn-ear99-neutral.svg)](https://git.sr.ht/~sthagen/csaf/tree/default/item/EXPORT-CONTROL-CLASSIFICATION-NUMBER)
[![Configuration](https://git.sr.ht/~sthagen/csaf/blob/default/docs/badges/configuration-sbom.svg)](https://git.sr.ht/~sthagen/csaf/tree/default/item/docs/third-party/README.md)

[![Version](https://git.sr.ht/~sthagen/csaf/blob/default/docs/badges/latest-release.svg)](https://pypi.python.org/pypi/csaf/)
[![Downloads](https://git.sr.ht/~sthagen/csaf/blob/default/docs/badges/downloads-per-month.svg)](https://pepy.tech/project/csaf)
[![Python](https://git.sr.ht/~sthagen/csaf/blob/default/docs/badges/python-versions.svg)](https://pypi.python.org/pypi/csaf/)
[![Maintenance Status](https://git.sr.ht/~sthagen/csaf/blob/default/docs/badges/commits-per-year.svg)](https://git.sr.ht/~sthagen/csaf/log)

In this project the attempt is made, to provide API and tools to support the CSAF communities from a single repository in the easy to prototype python language.

If, and when this endeavor succeeds, other languages can easily derive form the approach (as long as these offer similar capabilties to keep the effort in check).

**Note**: CSAF predecessor CVRF versions 1.1 and 1.2 are out of scope.

## Documentation

User and developer [documentation of csaf](https://codes.dilettant.life/docs/csaf).

## Bug Tracker

Any feature requests or bug reports shall go to the [todos of csaf](https://todo.sr.ht/~sthagen/csaf).

## Primary Source repository

The main source of `csaf` is on a mountain in central Switzerland.
We use distributed version control (git).
There is no central hub.
Every clone can become a new source for the benefit of all.
The preferred public clone of `csaf` is:

* [at sourcehut](https://git.sr.ht/~sthagen/csaf) - a collection of tools useful for software development.

## Contributions

Please do not submit "pull requests" (I found no way to disable that "feature" on GitHub).
If you like to share small changes under the repositories license please kindly do so by sending a patchset.
You can either send such a patchset per email using [git send-email](https://git-send-email.io) or 
if you are a sourcehut user by selecting "Prepare a patchset" on the summary page of your fork at [sourcehut](https://git.sr.ht/).

## Support

Please kindly submit issues at https://todo.sr.ht/~sthagen/csaf or write plain text email to ~sthagen/csaf@lists.sr.ht to submit patches and request support. Thanks.

## Contributors

In alphabetical order:

* Anthony Harrison
* Jacco Ligthart
* Jiří Pešík
* Tom Klaver

## Status

Experimental

**Note**: The default branch is `default`.
