rgpycrumbs.sbom¶
Backward-compatible CycloneDX helpers (see rgpycrumbs.locks).
Attributes¶
Functions¶
|
If pip_spec's package is in pins, return |
|
Load and validate a CycloneDX JSON document from path. |
|
Load any supported lock/SBOM path and return a PyPI pin map. |
|
PEP 503-ish name normalization for pin lookups. |
|
Return the distribution name from a pip requirement string. |
|
Read pin map from |
|
Render pin map as pip/uv constraint lines ( |
|
Extract |
Module Contents¶
- rgpycrumbs.sbom.apply_pin_to_spec(pip_spec: str, pins: dict[str, str]) str[source]¶
If pip_spec’s package is in pins, return
name==version.
- rgpycrumbs.sbom.load_cyclonedx(path: str | pathlib.Path) dict[str, Any][source]¶
Load and validate a CycloneDX JSON document from path.
- rgpycrumbs.sbom.load_pypi_pins(path: str | pathlib.Path) dict[str, str][source]¶
Load any supported lock/SBOM path and return a PyPI pin map.
- Raises:
FileNotFoundError: path missing ValueError: unreadable / unsupported / empty-of-python when required
- rgpycrumbs.sbom.normalize_pypi_name(name: str) str[source]¶
PEP 503-ish name normalization for pin lookups.
- rgpycrumbs.sbom.package_name_from_spec(pip_spec: str) str[source]¶
Return the distribution name from a pip requirement string.
- rgpycrumbs.sbom.pins_from_env(env: dict[str, str] | None = None) dict[str, str][source]¶
Read pin map from
RGPKGS_LOCK_PINS/ legacy pin envs.