Skip to main content

Generate Software Bill of Materials from PDM based projects

Project description

pdm-sbom

Generate Software Bill of Materials from PDM based projects

Note: This is still a pre-development state.

Open topics

  • CLI Options
  • Create a wheel
  • Refactor implementation (Too large parser module, too large sbom namespace)
  • Refactor implementation for improved testing
  • Create tests
  • Add CI/CT/CD Pipeline
  • Improve documentation
  • Divide components into application, framework, etc
  • Add validation, e.g. missing license or author
  • Add parser for TROVE classifiers
  • Add more data to Project entity to fill in gaps
  • Unify implementation for meta data extraction

Purpose

When developing software, gathering the tree of used software for the development including the runtime-dependencies is essential in some cases. The so called software bill of materials is an essential piece of software development.

This pdm plugin analyzes the output of pdm list and divides the output into a hierarchical dependency tree including development and optional dependencies. This tree is enriched with the module meta data consisting of authors and licenses.

In the end, three different SBOMs can be created:

  • a regular JSON file.
  • an spdx file in Version 1.0 to 2.3, either as
    • JSON
    • YAML
    • XML
    • RDF (XML)
    • SPDX Tag-Value
  • a cyclonede file in version 1.0 to 1.4, either as
    • XML
    • JSON

The resulting file will be stored in the dists folder next to the resulting wheel.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

pdm_sbom-0.6.0-py3-none-any.whl (18.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page