{
  "components": [
    {
      "bom-ref": "CacheControl==0.14.4",
      "description": "httplib2 caching for requests",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/psf/cachecontrol/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/psf/cachecontrol"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://pypi.org/project/CacheControl/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "CacheControl",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "filecache"
        }
      ],
      "purl": "pkg:pypi/cachecontrol@0.14.4",
      "type": "library",
      "version": "0.14.4"
    },
    {
      "bom-ref": "Jinja2==3.1.6",
      "description": "A very fast and expressive template engine.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Chat",
          "type": "chat",
          "url": "https://discord.gg/pallets"
        },
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://jinja.palletsprojects.com/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pallets/jinja/"
        },
        {
          "comment": "from packaging metadata Project-URL: Donate",
          "type": "other",
          "url": "https://palletsprojects.com/donate"
        },
        {
          "comment": "from packaging metadata Project-URL: Changes",
          "type": "release-notes",
          "url": "https://jinja.palletsprojects.com/changes/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "Jinja2",
      "purl": "pkg:pypi/jinja2@3.1.6",
      "type": "library",
      "version": "3.1.6"
    },
    {
      "bom-ref": "Mako==1.3.10",
      "description": "A super-fast templating language that borrows the best ideas from the existing templating languages.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://docs.makotemplates.org"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/sqlalchemy/mako"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://www.makotemplates.org/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "Mako",
      "purl": "pkg:pypi/mako@1.3.10",
      "type": "library",
      "version": "1.3.10"
    },
    {
      "bom-ref": "Markdown==3.10.2",
      "description": "Python implementation of John Gruber's Markdown.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://Python-Markdown.github.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/Python-Markdown/markdown/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://python-markdown.github.io/changelog/"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/Python-Markdown/markdown"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://Python-Markdown.github.io/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "Markdown",
      "purl": "pkg:pypi/markdown@3.10.2",
      "type": "library",
      "version": "3.10.2"
    },
    {
      "bom-ref": "MarkupSafe==3.0.3",
      "description": "Safely add untrusted strings to HTML/XML markup.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Chat",
          "type": "chat",
          "url": "https://discord.gg/pallets"
        },
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://markupsafe.palletsprojects.com/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pallets/markupsafe/"
        },
        {
          "comment": "from packaging metadata Project-URL: Donate",
          "type": "other",
          "url": "https://palletsprojects.com/donate"
        },
        {
          "comment": "from packaging metadata Project-URL: Changes",
          "type": "release-notes",
          "url": "https://markupsafe.palletsprojects.com/page/changes/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "MarkupSafe",
      "purl": "pkg:pypi/markupsafe@3.0.3",
      "type": "library",
      "version": "3.0.3"
    },
    {
      "bom-ref": "PyYAML==6.0.3",
      "description": "YAML parser and emitter for Python",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Download-URL",
          "type": "distribution",
          "url": "https://pypi.org/project/PyYAML/"
        },
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://pyyaml.org/wiki/PyYAMLDocumentation"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/yaml/pyyaml/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Mailing lists",
          "type": "other",
          "url": "http://lists.sourceforge.net/lists/listinfo/yaml-core"
        },
        {
          "comment": "from packaging metadata Project-URL: Source Code",
          "type": "other",
          "url": "https://github.com/yaml/pyyaml"
        },
        {
          "comment": "from packaging metadata Project-URL: CI",
          "type": "other",
          "url": "https://github.com/yaml/pyyaml/actions"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://pyyaml.org/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "PyYAML",
      "purl": "pkg:pypi/pyyaml@6.0.3",
      "type": "library",
      "version": "6.0.3"
    },
    {
      "bom-ref": "Pygments==2.20.0",
      "description": "Pygments is a syntax highlighting package written in Python.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://pygments.org/docs"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/pygments/pygments/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pygments/pygments"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/pygments/pygments/blob/master/CHANGES"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://pygments.org"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-2-Clause"
          }
        }
      ],
      "name": "Pygments",
      "purl": "pkg:pypi/pygments@2.20.0",
      "type": "library",
      "version": "2.20.0"
    },
    {
      "bom-ref": "SQLAlchemy==2.0.49",
      "description": "Database Abstraction Library",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://docs.sqlalchemy.org"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/sqlalchemy/sqlalchemy/"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://www.sqlalchemy.org"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "SQLAlchemy",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "asyncio"
        }
      ],
      "purl": "pkg:pypi/sqlalchemy@2.0.49",
      "type": "library",
      "version": "2.0.49"
    },
    {
      "bom-ref": "aiosqlite==0.22.1",
      "description": "asyncio bridge to the standard sqlite3 module",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://aiosqlite.omnilib.dev"
        },
        {
          "comment": "from packaging metadata Project-URL: Github",
          "type": "vcs",
          "url": "https://github.com/omnilib/aiosqlite"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "aiosqlite",
      "purl": "pkg:pypi/aiosqlite@0.22.1",
      "type": "library",
      "version": "0.22.1"
    },
    {
      "bom-ref": "alembic==1.18.4",
      "description": "A database migration tool for SQLAlchemy.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://alembic.sqlalchemy.org/en/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/sqlalchemy/alembic/issues/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/sqlalchemy/alembic/"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://alembic.sqlalchemy.org/en/latest/changelog.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://alembic.sqlalchemy.org"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "alembic",
      "purl": "pkg:pypi/alembic@1.18.4",
      "type": "library",
      "version": "1.18.4"
    },
    {
      "bom-ref": "amplitude-analytics==1.2.3",
      "description": "The official Amplitude backend Python SDK for server-side instrumentation.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Bug Reports",
          "type": "issue-tracker",
          "url": "https://github.com/amplitude/Amplitude-Python/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Developer Doc",
          "type": "other",
          "url": "https://docs.developers.amplitude.com/data/sdks/python/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/amplitude/Amplitude-Python"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/amplitude/Amplitude-Python"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "amplitude-analytics",
      "purl": "pkg:pypi/amplitude-analytics@1.2.3",
      "type": "library",
      "version": "1.2.3"
    },
    {
      "bom-ref": "annotated-doc==0.0.4",
      "description": "Document parameters, class attributes, return types, and variables inline, with Annotated.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://github.com/fastapi/annotated-doc"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/fastapi/annotated-doc/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/fastapi/annotated-doc/release-notes.md"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/fastapi/annotated-doc"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/fastapi/annotated-doc"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "annotated-doc",
      "purl": "pkg:pypi/annotated-doc@0.0.4",
      "type": "library",
      "version": "0.0.4"
    },
    {
      "bom-ref": "annotated-types==0.7.0",
      "description": "Reusable constraint types to use with typing.Annotated",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/annotated-types/annotated-types"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/annotated-types/annotated-types/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/annotated-types/annotated-types"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "annotated-types",
      "purl": "pkg:pypi/annotated-types@0.7.0",
      "type": "library",
      "version": "0.7.0"
    },
    {
      "bom-ref": "anyio==4.13.0",
      "description": "High-level concurrency and networking framework on top of asyncio or Trio",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://anyio.readthedocs.io/en/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue tracker",
          "type": "issue-tracker",
          "url": "https://github.com/agronholm/anyio/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source code",
          "type": "other",
          "url": "https://github.com/agronholm/anyio"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://anyio.readthedocs.io/en/stable/versionhistory.html"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "anyio",
      "purl": "pkg:pypi/anyio@4.13.0",
      "type": "library",
      "version": "4.13.0"
    },
    {
      "bom-ref": "apprise==1.9.9",
      "description": "Push Notifications that work with just about every platform!",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://appriseit.com"
        },
        {
          "comment": "from packaging metadata Project-URL: Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/caronc/apprise/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/caronc/apprise"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://appriseit.com"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-2-Clause"
          }
        }
      ],
      "name": "apprise",
      "purl": "pkg:pypi/apprise@1.9.9",
      "type": "library",
      "version": "1.9.9"
    },
    {
      "bom-ref": "arrow==1.4.0",
      "description": "Better dates & times for Python",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://arrow.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/arrow-py/arrow/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/arrow-py/arrow"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "arrow",
      "purl": "pkg:pypi/arrow@1.4.0",
      "type": "library",
      "version": "1.4.0"
    },
    {
      "bom-ref": "asgi-lifespan==2.1.0",
      "description": "Programmatic startup/shutdown of ASGI apps.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/florimondmanca/asgi-lifespan"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "asgi-lifespan",
      "purl": "pkg:pypi/asgi-lifespan@2.1.0",
      "type": "library",
      "version": "2.1.0"
    },
    {
      "bom-ref": "asyncpg==0.31.0",
      "description": "An asyncio PostgreSQL driver",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: github",
          "type": "vcs",
          "url": "https://github.com/MagicStack/asyncpg"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "asyncpg",
      "purl": "pkg:pypi/asyncpg@0.31.0",
      "type": "library",
      "version": "0.31.0"
    },
    {
      "bom-ref": "attrs==26.1.0",
      "description": "Classes Without Boilerplate",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://www.attrs.org/"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/hynek"
        },
        {
          "comment": "from packaging metadata Project-URL: Tidelift",
          "type": "other",
          "url": "https://tidelift.com/subscription/pkg/pypi-attrs?utm_source=pypi-attrs&utm_medium=pypi"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://www.attrs.org/en/stable/changelog.html"
        },
        {
          "comment": "from packaging metadata Project-URL: GitHub",
          "type": "vcs",
          "url": "https://github.com/python-attrs/attrs"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "attrs",
      "purl": "pkg:pypi/attrs@26.1.0",
      "type": "library",
      "version": "26.1.0"
    },
    {
      "bom-ref": "bandit==1.9.4",
      "description": "Security oriented static analyser for python code.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://bandit.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/PyCQA/bandit/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Discord",
          "type": "other",
          "url": "https://discord.gg/qYxpadCgkx"
        },
        {
          "comment": "from packaging metadata Project-URL: Source Code",
          "type": "other",
          "url": "https://github.com/PyCQA/bandit"
        },
        {
          "comment": "from packaging metadata Project-URL: Release Notes",
          "type": "other",
          "url": "https://github.com/PyCQA/bandit/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Sponsor",
          "type": "other",
          "url": "https://psfmember.org/civicrm/contribute/transact/?reset=1&id=42"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://bandit.readthedocs.io/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "bandit",
      "purl": "pkg:pypi/bandit@1.9.4",
      "type": "library",
      "version": "1.9.4"
    },
    {
      "bom-ref": "beartype==0.22.9",
      "description": "Unbearably fast near-real-time pure-Python runtime-static type-checker.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Docs",
          "type": "documentation",
          "url": "https://beartype.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/beartype/beartype/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Forums",
          "type": "other",
          "url": "https://github.com/beartype/beartype/discussions"
        },
        {
          "comment": "from packaging metadata Project-URL: Releases",
          "type": "other",
          "url": "https://github.com/beartype/beartype/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: GitHub",
          "type": "vcs",
          "url": "https://github.com/beartype/beartype"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "beartype",
      "purl": "pkg:pypi/beartype@0.22.9",
      "type": "library",
      "version": "0.22.9"
    },
    {
      "bom-ref": "boolean.py==5.0",
      "description": "Define boolean algebras, create and parse boolean expressions and create custom boolean DSL.",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/bastikr/boolean.py"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-2-Clause"
          }
        }
      ],
      "name": "boolean.py",
      "purl": "pkg:pypi/boolean.py@5.0",
      "type": "library",
      "version": "5.0"
    },
    {
      "bom-ref": "cachetools==7.0.5",
      "description": "Extensible memoizing collections and decorators",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/tkem/cachetools/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "cachetools",
      "purl": "pkg:pypi/cachetools@7.0.5",
      "type": "library",
      "version": "7.0.5"
    },
    {
      "bom-ref": "certifi==2026.2.25",
      "description": "Python package for providing Mozilla's CA Bundle.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/certifi/python-certifi"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/certifi/python-certifi"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MPL-2.0"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)"
          }
        }
      ],
      "name": "certifi",
      "purl": "pkg:pypi/certifi@2026.2.25",
      "type": "library",
      "version": "2026.2.25"
    },
    {
      "bom-ref": "cffi==2.0.0",
      "description": "Foreign Function Interface for Python calling C code.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://cffi.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/python-cffi/cffi/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source Code",
          "type": "other",
          "url": "https://github.com/python-cffi/cffi"
        },
        {
          "comment": "from packaging metadata Project-URL: Downloads",
          "type": "other",
          "url": "https://github.com/python-cffi/cffi/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Contact",
          "type": "other",
          "url": "https://groups.google.com/forum/#!forum/python-cffi"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://cffi.readthedocs.io/en/latest/whatsnew.html"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "cffi",
      "purl": "pkg:pypi/cffi@2.0.0",
      "type": "library",
      "version": "2.0.0"
    },
    {
      "bom-ref": "chardet==5.2.0",
      "description": "Universal encoding detector for Python 3",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://chardet.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/chardet/chardet/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: GitHub Project",
          "type": "other",
          "url": "https://github.com/chardet/chardet"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/chardet/chardet"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)"
          }
        }
      ],
      "name": "chardet",
      "purl": "pkg:pypi/chardet@5.2.0",
      "type": "library",
      "version": "5.2.0"
    },
    {
      "bom-ref": "charset-normalizer==3.4.7",
      "description": "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://charset-normalizer.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue tracker",
          "type": "issue-tracker",
          "url": "https://github.com/jawah/charset_normalizer/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Code",
          "type": "other",
          "url": "https://github.com/jawah/charset_normalizer"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "charset-normalizer",
      "purl": "pkg:pypi/charset-normalizer@3.4.7",
      "type": "library",
      "version": "3.4.7"
    },
    {
      "bom-ref": "click==8.3.2",
      "description": "Composable command line interface toolkit",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Chat",
          "type": "chat",
          "url": "https://discord.gg/pallets"
        },
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://click.palletsprojects.com/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pallets/click/"
        },
        {
          "comment": "from packaging metadata Project-URL: Donate",
          "type": "other",
          "url": "https://palletsprojects.com/donate"
        },
        {
          "comment": "from packaging metadata Project-URL: Changes",
          "type": "release-notes",
          "url": "https://click.palletsprojects.com/page/changes/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "click",
      "purl": "pkg:pypi/click@8.3.2",
      "type": "library",
      "version": "8.3.2"
    },
    {
      "bom-ref": "cloudpickle==3.1.2",
      "description": "Pickler class to extend the standard pickle.Pickler functionality",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/cloudpipe/cloudpickle"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "cloudpickle",
      "purl": "pkg:pypi/cloudpickle@3.1.2",
      "type": "library",
      "version": "3.1.2"
    },
    {
      "bom-ref": "colorama==0.4.6",
      "description": "Cross-platform colored terminal text.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/tartley/colorama"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "colorama",
      "purl": "pkg:pypi/colorama@0.4.6",
      "type": "library",
      "version": "0.4.6"
    },
    {
      "bom-ref": "coolname==4.1.0",
      "description": "Random name and slug generator",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://coolname.readthedocs.io/en/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/alexanderlukanin13/coolname"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-2-Clause"
          }
        }
      ],
      "name": "coolname",
      "purl": "pkg:pypi/coolname@4.1.0",
      "type": "library",
      "version": "4.1.0"
    },
    {
      "bom-ref": "cronsim==2.7",
      "description": "Cron expression parser and evaluator",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/cuu508/cronsim/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/cuu508/cronsim/blob/main/CHANGELOG.md"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/cuu508/cronsim.git"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "cronsim",
      "purl": "pkg:pypi/cronsim@2.7",
      "type": "library",
      "version": "2.7"
    },
    {
      "bom-ref": "cryptography==46.0.6",
      "description": "cryptography is a package which provides cryptographic recipes and primitives to Python developers.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: documentation",
          "type": "documentation",
          "url": "https://cryptography.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: issues",
          "type": "issue-tracker",
          "url": "https://github.com/pyca/cryptography/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: source",
          "type": "other",
          "url": "https://github.com/pyca/cryptography/"
        },
        {
          "comment": "from packaging metadata Project-URL: changelog",
          "type": "release-notes",
          "url": "https://cryptography.io/en/latest/changelog/"
        },
        {
          "comment": "from packaging metadata Project-URL: homepage",
          "type": "website",
          "url": "https://github.com/pyca/cryptography"
        }
      ],
      "licenses": [
        {
          "acknowledgement": "declared",
          "expression": "Apache-2.0 OR BSD-3-Clause"
        }
      ],
      "name": "cryptography",
      "purl": "pkg:pypi/cryptography@46.0.6",
      "type": "library",
      "version": "46.0.6"
    },
    {
      "bom-ref": "cyclonedx-bom==7.3.0",
      "description": "CycloneDX Software Bill of Materials (SBOM) generator for Python projects and environments",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://cyclonedx-bom-tool.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/CycloneDX/cyclonedx-python/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://owasp.org/donate/?reponame=www-project-cyclonedx&title=OWASP+CycloneDX"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/CycloneDX/cyclonedx-python/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/CycloneDX/cyclonedx-python/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/CycloneDX/cyclonedx-python/#readme"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "cyclonedx-bom",
      "purl": "pkg:pypi/cyclonedx-bom@7.3.0",
      "type": "library",
      "version": "7.3.0"
    },
    {
      "bom-ref": "cyclonedx-py==1.0.1",
      "description": "Alias for package 'cyclonedx-bom'",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: repository",
          "type": "vcs",
          "url": "https://github.com/CycloneDX/cyclonedx-python/#package_aliases/cyclonedx-py"
        }
      ],
      "name": "cyclonedx-py",
      "purl": "pkg:pypi/cyclonedx-py@1.0.1",
      "type": "library",
      "version": "1.0.1"
    },
    {
      "bom-ref": "cyclonedx-python-lib==11.7.0",
      "description": "Python library for CycloneDX",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://cyclonedx-python-library.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/CycloneDX/cyclonedx-python-lib/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://owasp.org/donate/?reponame=www-project-cyclonedx&title=OWASP+CycloneDX"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/CycloneDX/cyclonedx-python-lib/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/CycloneDX/cyclonedx-python-lib"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/CycloneDX/cyclonedx-python-lib/#readme"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "cyclonedx-python-lib",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "validation"
        }
      ],
      "purl": "pkg:pypi/cyclonedx-python-lib@11.7.0",
      "type": "library",
      "version": "11.7.0"
    },
    {
      "bom-ref": "cyclopts==4.10.1",
      "description": "Intuitive, easy CLIs based on type hints.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/BrianPugh/cyclopts"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/BrianPugh/cyclopts"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "cyclopts",
      "purl": "pkg:pypi/cyclopts@4.10.1",
      "type": "library",
      "version": "4.10.1"
    },
    {
      "bom-ref": "dateparser==1.4.0",
      "description": "Date parsing library designed to parse dates from HTML pages",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: History",
          "type": "other",
          "url": "https://dateparser.readthedocs.io/en/latest/history.html"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/scrapinghub/dateparser"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "dateparser",
      "purl": "pkg:pypi/dateparser@1.4.0",
      "type": "library",
      "version": "1.4.0"
    },
    {
      "bom-ref": "defusedxml==0.7.1",
      "description": "XML bomb protection for Python stdlib modules",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Download-URL",
          "type": "distribution",
          "url": "https://pypi.python.org/pypi/defusedxml"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/tiran/defusedxml"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Python-2.0"
          }
        }
      ],
      "name": "defusedxml",
      "purl": "pkg:pypi/defusedxml@0.7.1",
      "type": "library",
      "version": "0.7.1"
    },
    {
      "bom-ref": "docker==7.1.0",
      "description": "A Python library for the Docker Engine API.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://docker-py.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/docker/docker-py/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/docker/docker-py"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://docker-py.readthedocs.io/en/stable/change-log.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/docker/docker-py"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "docker",
      "purl": "pkg:pypi/docker@7.1.0",
      "type": "library",
      "version": "7.1.0"
    },
    {
      "bom-ref": "docstring_parser==0.17.0",
      "description": "Parse Python docstrings in reST, Google and Numpydoc format",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: changelog",
          "type": "release-notes",
          "url": "https://github.com/rr-/docstring_parser/blob/master/CHANGELOG.md"
        },
        {
          "comment": "from packaging metadata Project-URL: repository",
          "type": "vcs",
          "url": "https://github.com/rr-/docstring_parser"
        },
        {
          "comment": "from packaging metadata Project-URL: homepage",
          "type": "website",
          "url": "https://github.com/rr-/docstring_parser"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "docstring_parser",
      "purl": "pkg:pypi/docstring-parser@0.17.0",
      "type": "library",
      "version": "0.17.0"
    },
    {
      "bom-ref": "docutils==0.22.4",
      "description": "Docutils -- Python Documentation Utilities",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Download",
          "type": "distribution",
          "url": "https://pypi.org/project/docutils/"
        },
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://docutils.sourceforge.io/docs/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue tracker",
          "type": "issue-tracker",
          "url": "https://sourceforge.net/p/docutils/bugs/"
        },
        {
          "comment": "from packaging metadata Project-URL: Code",
          "type": "other",
          "url": "https://sourceforge.net/p/docutils/code/"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://docutils.sourceforge.io/HISTORY.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://docutils.sourceforge.io"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: GNU General Public License (GPL)"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: Public Domain"
          }
        }
      ],
      "name": "docutils",
      "purl": "pkg:pypi/docutils@0.22.4",
      "type": "library",
      "version": "0.22.4"
    },
    {
      "bom-ref": "exceptiongroup==1.3.1",
      "description": "Backport of PEP 654 (exception groups)",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/agronholm/exceptiongroup/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source code",
          "type": "other",
          "url": "https://github.com/agronholm/exceptiongroup"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/agronholm/exceptiongroup/blob/main/CHANGES.rst"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "exceptiongroup",
      "purl": "pkg:pypi/exceptiongroup@1.3.1",
      "type": "library",
      "version": "1.3.1"
    },
    {
      "bom-ref": "fakeredis==2.34.1",
      "description": "Python implementation of redis API, can be used for testing purposes.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://fakeredis.moransoftware.ca/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/cunla/fakeredis-py/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/cunla"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/cunla/fakeredis-py"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/cunla/fakeredis-py"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "fakeredis",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "lua"
        }
      ],
      "purl": "pkg:pypi/fakeredis@2.34.1",
      "type": "library",
      "version": "2.34.1"
    },
    {
      "bom-ref": "fastapi==0.135.3",
      "description": "FastAPI framework, high performance, easy to learn, fast to code, ready for production",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://fastapi.tiangolo.com/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/fastapi/fastapi/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://fastapi.tiangolo.com/release-notes/"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/fastapi/fastapi"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/fastapi/fastapi"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "fastapi",
      "purl": "pkg:pypi/fastapi@0.135.3",
      "type": "library",
      "version": "0.135.3"
    },
    {
      "bom-ref": "filelock==3.25.2",
      "description": "A platform independent file lock.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://py-filelock.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/tox-dev/py-filelock/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/tox-dev/py-filelock"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/tox-dev/py-filelock"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "filelock",
      "purl": "pkg:pypi/filelock@3.25.2",
      "type": "library",
      "version": "3.25.2"
    },
    {
      "bom-ref": "fqdn==1.5.1",
      "description": "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/ypcrts/fqdn"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)"
          }
        }
      ],
      "name": "fqdn",
      "purl": "pkg:pypi/fqdn@1.5.1",
      "type": "library",
      "version": "1.5.1"
    },
    {
      "bom-ref": "fsspec==2026.3.0",
      "description": "File-system specification",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://filesystem-spec.readthedocs.io/en/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://filesystem-spec.readthedocs.io/en/latest/changelog.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/fsspec/filesystem_spec"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "fsspec",
      "purl": "pkg:pypi/fsspec@2026.3.0",
      "type": "library",
      "version": "2026.3.0"
    },
    {
      "bom-ref": "graphviz==0.21",
      "description": "Simple Python interface for Graphviz",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://graphviz.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/xflr6/graphviz/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Coverage",
          "type": "other",
          "url": "https://codecov.io/gh/xflr6/graphviz"
        },
        {
          "comment": "from packaging metadata Project-URL: CI",
          "type": "other",
          "url": "https://github.com/xflr6/graphviz/actions"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://graphviz.readthedocs.io/en/latest/changelog.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/xflr6/graphviz"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "graphviz",
      "purl": "pkg:pypi/graphviz@0.21",
      "type": "library",
      "version": "0.21"
    },
    {
      "bom-ref": "greenlet==3.3.2",
      "description": "Lightweight in-process concurrent programming",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://greenlet.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/python-greenlet/greenlet/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://greenlet.readthedocs.io/en/latest/changes.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/python-greenlet/greenlet"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://greenlet.readthedocs.io"
        }
      ],
      "licenses": [
        {
          "acknowledgement": "declared",
          "expression": "MIT AND PSF-2.0"
        }
      ],
      "name": "greenlet",
      "purl": "pkg:pypi/greenlet@3.3.2",
      "type": "library",
      "version": "3.3.2"
    },
    {
      "bom-ref": "griffe==2.0.2",
      "description": "Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://mkdocstrings.github.io/griffe"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/mkdocstrings/griffe/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Discussions",
          "type": "other",
          "url": "https://github.com/mkdocstrings/griffe/discussions"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/pawamoy"
        },
        {
          "comment": "from packaging metadata Project-URL: Gitter",
          "type": "other",
          "url": "https://gitter.im/mkdocstrings/griffe"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://mkdocstrings.github.io/griffe/changelog"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/mkdocstrings/griffe"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://mkdocstrings.github.io/griffe"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "ISC"
          }
        }
      ],
      "name": "griffe",
      "purl": "pkg:pypi/griffe@2.0.2",
      "type": "library",
      "version": "2.0.2"
    },
    {
      "bom-ref": "griffecli==2.0.2",
      "description": "Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API.",
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "ISC"
          }
        }
      ],
      "name": "griffecli",
      "purl": "pkg:pypi/griffecli@2.0.2",
      "type": "library",
      "version": "2.0.2"
    },
    {
      "bom-ref": "griffelib==2.0.2",
      "description": "Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API.",
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "ISC"
          }
        }
      ],
      "name": "griffelib",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "pypi"
        }
      ],
      "purl": "pkg:pypi/griffelib@2.0.2",
      "type": "library",
      "version": "2.0.2"
    },
    {
      "bom-ref": "h11==0.16.0",
      "description": "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/python-hyper/h11"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "h11",
      "purl": "pkg:pypi/h11@0.16.0",
      "type": "library",
      "version": "0.16.0"
    },
    {
      "bom-ref": "h2==4.3.0",
      "description": "Pure-Python HTTP/2 protocol implementation",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://python-hyper.org/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Reports",
          "type": "issue-tracker",
          "url": "https://github.com/python-hyper/h2/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/python-hyper/h2/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/python-hyper/h2/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "h2",
      "purl": "pkg:pypi/h2@4.3.0",
      "type": "library",
      "version": "4.3.0"
    },
    {
      "bom-ref": "hpack==4.1.0",
      "description": "Pure-Python HPACK header encoding",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://python-hyper.org/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Reports",
          "type": "issue-tracker",
          "url": "https://github.com/python-hyper/hpack/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/python-hyper/hpack/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/python-hyper/hpack/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "hpack",
      "purl": "pkg:pypi/hpack@4.1.0",
      "type": "library",
      "version": "4.1.0"
    },
    {
      "bom-ref": "httpcore==1.0.9",
      "description": "A minimal low-level HTTP client.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://www.encode.io/httpcore"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/encode/httpcore"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://www.encode.io/httpcore/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "httpcore",
      "purl": "pkg:pypi/httpcore@1.0.9",
      "type": "library",
      "version": "1.0.9"
    },
    {
      "bom-ref": "httpx==0.28.1",
      "description": "The next generation HTTP client.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://www.python-httpx.org"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/encode/httpx"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/encode/httpx/blob/master/CHANGELOG.md"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/encode/httpx"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "httpx",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "http2"
        }
      ],
      "purl": "pkg:pypi/httpx@0.28.1",
      "type": "library",
      "version": "0.28.1"
    },
    {
      "bom-ref": "humanize==4.15.0",
      "description": "Python humanize utilities",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://humanize.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue tracker",
          "type": "issue-tracker",
          "url": "https://github.com/python-humanize/humanize/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/python-humanize/humanize"
        },
        {
          "comment": "from packaging metadata Project-URL: Release notes",
          "type": "other",
          "url": "https://github.com/python-humanize/humanize/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://tidelift.com/subscription/pkg/pypi-humanize?utm_source=pypi-humanize&utm_medium=pypi"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/python-humanize/humanize"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "humanize",
      "purl": "pkg:pypi/humanize@4.15.0",
      "type": "library",
      "version": "4.15.0"
    },
    {
      "bom-ref": "hyperframe==6.1.0",
      "description": "Pure-Python HTTP/2 framing",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://python-hyper.org/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Reports",
          "type": "issue-tracker",
          "url": "https://github.com/python-hyper/hyperframe/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/python-hyper/hyperframe/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/python-hyper/hyperframe/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "hyperframe",
      "purl": "pkg:pypi/hyperframe@6.1.0",
      "type": "library",
      "version": "6.1.0"
    },
    {
      "bom-ref": "idna==3.11",
      "description": "Internationalized Domain Names in Applications (IDNA)",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Issue tracker",
          "type": "issue-tracker",
          "url": "https://github.com/kjd/idna/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/kjd/idna"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/kjd/idna/blob/master/HISTORY.rst"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "idna",
      "purl": "pkg:pypi/idna@3.11",
      "type": "library",
      "version": "3.11"
    },
    {
      "bom-ref": "importlib_metadata==8.7.1",
      "description": "Read metadata from Python packages",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/python/importlib_metadata"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "importlib_metadata",
      "purl": "pkg:pypi/importlib-metadata@8.7.1",
      "type": "library",
      "version": "8.7.1"
    },
    {
      "bom-ref": "isoduration==20.11.0",
      "description": "Operations with ISO 8601 durations",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Bug Reports",
          "type": "issue-tracker",
          "url": "https://github.com/bolsote/isoduration/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/bolsote/isoduration/blob/master/CHANGELOG"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/bolsote/isoduration"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/bolsote/isoduration"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "ISC"
          }
        }
      ],
      "name": "isoduration",
      "purl": "pkg:pypi/isoduration@20.11.0",
      "type": "library",
      "version": "20.11.0"
    },
    {
      "bom-ref": "jinja2-humanize-extension==0.4.0",
      "description": "a jinja2 extension to use humanize library inside jinja2 templates",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/metwork-framework/jinja2_humanize_extension"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "jinja2-humanize-extension",
      "purl": "pkg:pypi/jinja2-humanize-extension@0.4.0",
      "type": "library",
      "version": "0.4.0"
    },
    {
      "bom-ref": "jsonpatch==1.33",
      "description": "Apply JSON-Patches (RFC 6902) ",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://python-json-patch.readthedocs.org/"
        },
        {
          "comment": "from packaging metadata Project-URL: Test Coverage",
          "type": "other",
          "url": "https://coveralls.io/r/stefankoegl/python-json-patch"
        },
        {
          "comment": "from packaging metadata Project-URL: Website",
          "type": "other",
          "url": "https://github.com/stefankoegl/python-json-patch"
        },
        {
          "comment": "from packaging metadata Project-URL: PyPI",
          "type": "other",
          "url": "https://pypi.org/pypi/jsonpatch"
        },
        {
          "comment": "from packaging metadata Project-URL: Tests",
          "type": "other",
          "url": "https://travis-ci.org/stefankoegl/python-json-patch"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/stefankoegl/python-json-patch.git"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/stefankoegl/python-json-patch"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "jsonpatch",
      "purl": "pkg:pypi/jsonpatch@1.33",
      "type": "library",
      "version": "1.33"
    },
    {
      "bom-ref": "jsonpointer==3.1.1",
      "description": "Identify specific nodes in a JSON document (RFC 6901) ",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/stefankoegl/python-json-pointer"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "jsonpointer",
      "purl": "pkg:pypi/jsonpointer@3.1.1",
      "type": "library",
      "version": "3.1.1"
    },
    {
      "bom-ref": "jsonschema==4.26.0",
      "description": "An implementation of JSON Schema validation for Python",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://python-jsonschema.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/python-jsonschema/jsonschema/issues/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/python-jsonschema/jsonschema"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/Julian"
        },
        {
          "comment": "from packaging metadata Project-URL: Tidelift",
          "type": "other",
          "url": "https://tidelift.com/subscription/pkg/pypi-jsonschema?utm_source=pypi-jsonschema&utm_medium=referral&utm_campaign=pypi-link"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/python-jsonschema/jsonschema"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "jsonschema",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "format-nongpl"
        }
      ],
      "purl": "pkg:pypi/jsonschema@4.26.0",
      "type": "library",
      "version": "4.26.0"
    },
    {
      "bom-ref": "jsonschema-specifications==2025.9.1",
      "description": "The JSON Schema meta-schemas and vocabularies, exposed as a Registry",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://jsonschema-specifications.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/python-jsonschema/jsonschema-specifications/issues/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/python-jsonschema/jsonschema-specifications"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/Julian"
        },
        {
          "comment": "from packaging metadata Project-URL: Tidelift",
          "type": "other",
          "url": "https://tidelift.com/subscription/pkg/pypi-jsonschema-specifications?utm_source=pypi-jsonschema-specifications&utm_medium=referral&utm_campaign=pypi-link"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/python-jsonschema/jsonschema-specifications"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "jsonschema-specifications",
      "purl": "pkg:pypi/jsonschema-specifications@2025.9.1",
      "type": "library",
      "version": "2025.9.1"
    },
    {
      "bom-ref": "lark==1.3.1",
      "description": "a modern parsing library",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Download",
          "type": "distribution",
          "url": "https://github.com/lark-parser/lark/tarball/master"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/lark-parser/lark"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "lark",
      "purl": "pkg:pypi/lark@1.3.1",
      "type": "library",
      "version": "1.3.1"
    },
    {
      "bom-ref": "license-expression==30.4.4",
      "description": "license-expression is a comprehensive utility library to parse, compare, simplify and normalize license expressions (such as SPDX license expressions) using boolean logic.",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/aboutcode-org/license-expression"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "license-expression",
      "purl": "pkg:pypi/license-expression@30.4.4",
      "type": "library",
      "version": "30.4.4"
    },
    {
      "bom-ref": "lupa==2.6",
      "description": "Python wrapper around Lua and LuaJIT",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/scoder/lupa"
        }
      ],
      "name": "lupa",
      "purl": "pkg:pypi/lupa@2.6",
      "type": "library",
      "version": "2.6"
    },
    {
      "bom-ref": "lxml==6.0.2",
      "description": "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://bugs.launchpad.net/lxml"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/lxml/lxml"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://lxml.de/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "lxml",
      "purl": "pkg:pypi/lxml@6.0.2",
      "type": "library",
      "version": "6.0.2"
    },
    {
      "bom-ref": "markdown-it-py==4.0.0",
      "description": "Python port of markdown-it. Markdown parsing, done right!",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://markdown-it-py.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/executablebooks/markdown-it-py"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "markdown-it-py",
      "purl": "pkg:pypi/markdown-it-py@4.0.0",
      "type": "library",
      "version": "4.0.0"
    },
    {
      "bom-ref": "mdurl==0.1.2",
      "description": "Markdown URL utilities",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/executablebooks/mdurl"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "mdurl",
      "purl": "pkg:pypi/mdurl@0.1.2",
      "type": "library",
      "version": "0.1.2"
    },
    {
      "bom-ref": "msgpack==1.1.2",
      "description": "MessagePack serializer",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://msgpack-python.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/msgpack/msgpack-python/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/msgpack/msgpack-python/blob/main/ChangeLog.rst"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/msgpack/msgpack-python/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://msgpack.org/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "msgpack",
      "purl": "pkg:pypi/msgpack@1.1.2",
      "type": "library",
      "version": "1.1.2"
    },
    {
      "bom-ref": "oauthlib==3.3.1",
      "description": "A generic, spec-compliant, thorough implementation of the OAuth request-signing logic",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/oauthlib/oauthlib"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "oauthlib",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "signedtoken"
        }
      ],
      "purl": "pkg:pypi/oauthlib@3.3.1",
      "type": "library",
      "version": "3.3.1"
    },
    {
      "bom-ref": "opentelemetry-api==1.40.0",
      "description": "OpenTelemetry Python API",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/open-telemetry/opentelemetry-python"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-api"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "opentelemetry-api",
      "purl": "pkg:pypi/opentelemetry-api@1.40.0",
      "type": "library",
      "version": "1.40.0"
    },
    {
      "bom-ref": "orjson==3.11.8",
      "description": "Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: documentation",
          "type": "documentation",
          "url": "https://github.com/ijl/orjson"
        },
        {
          "comment": "from packaging metadata Project-URL: source",
          "type": "other",
          "url": "https://github.com/ijl/orjson"
        },
        {
          "comment": "from packaging metadata Project-URL: changelog",
          "type": "release-notes",
          "url": "https://github.com/ijl/orjson/blob/master/CHANGELOG.md"
        }
      ],
      "licenses": [
        {
          "acknowledgement": "declared",
          "expression": "MPL-2.0 AND (Apache-2.0 OR MIT)"
        }
      ],
      "name": "orjson",
      "purl": "pkg:pypi/orjson@3.11.8",
      "type": "library",
      "version": "3.11.8"
    },
    {
      "bom-ref": "packageurl-python==0.17.6",
      "description": "A purl aka. Package URL parser and builder",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/package-url/packageurl-python"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "packageurl-python",
      "purl": "pkg:pypi/packageurl-python@0.17.6",
      "type": "library",
      "version": "0.17.6"
    },
    {
      "bom-ref": "packaging==26.0",
      "description": "Core utilities for Python packages",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://packaging.pypa.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pypa/packaging"
        }
      ],
      "licenses": [
        {
          "acknowledgement": "declared",
          "expression": "Apache-2.0 OR BSD-2-Clause"
        }
      ],
      "name": "packaging",
      "purl": "pkg:pypi/packaging@26.0",
      "type": "library",
      "version": "26.0"
    },
    {
      "bom-ref": "pathspec==1.0.4",
      "description": "Utility library for gitignore style pattern matching of file paths.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://python-path-specification.readthedocs.io/en/latest/index.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/cpburnz/python-pathspec/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source Code",
          "type": "other",
          "url": "https://github.com/cpburnz/python-pathspec"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)"
          }
        }
      ],
      "name": "pathspec",
      "purl": "pkg:pypi/pathspec@1.0.4",
      "type": "library",
      "version": "1.0.4"
    },
    {
      "bom-ref": "pendulum==3.2.0",
      "description": "Python datetimes made easy",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://pendulum.eustace.io/docs"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/sdispater/pendulum"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://pendulum.eustace.io"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pendulum",
      "purl": "pkg:pypi/pendulum@3.2.0",
      "type": "library",
      "version": "3.2.0"
    },
    {
      "bom-ref": "pip==25.0.1",
      "description": "The PyPA recommended tool for installing Python packages.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://pip.pypa.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pypa/pip"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://pip.pypa.io/en/stable/news/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://pip.pypa.io/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pip",
      "purl": "pkg:pypi/pip@25.0.1",
      "type": "library",
      "version": "25.0.1"
    },
    {
      "bom-ref": "pip-api==0.0.34",
      "description": "An unofficial, importable pip API",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "http://github.com/di/pip-api"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "pip-api",
      "purl": "pkg:pypi/pip-api@0.0.34",
      "type": "library",
      "version": "0.0.34"
    },
    {
      "bom-ref": "pip-requirements-parser==32.0.1",
      "description": "pip requirements parser - a mostly correct pip requirements parsing library because it uses pip's own code.",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/nexB/pip-requirements-parser"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pip-requirements-parser",
      "purl": "pkg:pypi/pip-requirements-parser@32.0.1",
      "type": "library",
      "version": "32.0.1"
    },
    {
      "bom-ref": "pip_audit==2.10.0",
      "description": "A tool for scanning Python environments for known vulnerabilities",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/pypa/pip-audit/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pypa/pip-audit"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://pypi.org/project/pip-audit/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "pip_audit",
      "purl": "pkg:pypi/pip-audit@2.10.0",
      "type": "library",
      "version": "2.10.0"
    },
    {
      "bom-ref": "platformdirs==4.9.4",
      "description": "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://platformdirs.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/tox-dev/platformdirs/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/tox-dev/platformdirs"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://platformdirs.readthedocs.io/en/latest/changelog.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/tox-dev/platformdirs"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "platformdirs",
      "purl": "pkg:pypi/platformdirs@4.9.4",
      "type": "library",
      "version": "4.9.4"
    },
    {
      "bom-ref": "pluggy==1.6.0",
      "description": "plugin and hook calling mechanisms for python",
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pluggy",
      "purl": "pkg:pypi/pluggy@1.6.0",
      "type": "library",
      "version": "1.6.0"
    },
    {
      "bom-ref": "prefect==3.6.25",
      "description": "Workflow orchestration and management.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://docs.prefect.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/PrefectHQ/prefect/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/PrefectHQ/prefect"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/PrefectHQ/prefect/releases"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "prefect",
      "purl": "pkg:pypi/prefect@3.6.25",
      "type": "library",
      "version": "3.6.25"
    },
    {
      "bom-ref": "prefect-shell==0.3.5",
      "description": "Prefect integrations for interacting with shell commands.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/PrefectHQ/prefect/tree/main/src/integrations/prefect-shell"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "prefect-shell",
      "purl": "pkg:pypi/prefect-shell@0.3.5",
      "type": "library",
      "version": "0.3.5"
    },
    {
      "bom-ref": "prometheus_client==0.24.1",
      "description": "Python client for the Prometheus monitoring system.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://prometheus.github.io/client_python/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/prometheus/client_python"
        }
      ],
      "licenses": [
        {
          "acknowledgement": "declared",
          "expression": "Apache-2.0 AND BSD-2-Clause"
        }
      ],
      "name": "prometheus_client",
      "purl": "pkg:pypi/prometheus-client@0.24.1",
      "type": "library",
      "version": "0.24.1"
    },
    {
      "bom-ref": "py-key-value-aio==0.4.4",
      "description": "Async Key-Value Store - A pluggable interface for KV Stores",
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "py-key-value-aio",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "memory"
        },
        {
          "name": "cdx:python:package:required-extra",
          "value": "redis"
        }
      ],
      "purl": "pkg:pypi/py-key-value-aio@0.4.4",
      "type": "library",
      "version": "0.4.4"
    },
    {
      "bom-ref": "py-serializable==2.1.0",
      "description": "Library for serializing and deserializing Python Objects to and from JSON and XML.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://py-serializable.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/madpah/serializable/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/madpah/serializable"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/madpah/serializable#readme"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "py-serializable",
      "purl": "pkg:pypi/py-serializable@2.1.0",
      "type": "library",
      "version": "2.1.0"
    },
    {
      "bom-ref": "pycparser==3.0",
      "description": "C parser in Python",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/eliben/pycparser"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "pycparser",
      "purl": "pkg:pypi/pycparser@3.0",
      "type": "library",
      "version": "3.0"
    },
    {
      "bom-ref": "pydantic==2.12.5",
      "description": "Data validation using Python type hints",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://docs.pydantic.dev"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pydantic/pydantic"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/samuelcolvin"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://docs.pydantic.dev/latest/changelog/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/pydantic/pydantic"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pydantic",
      "purl": "pkg:pypi/pydantic@2.12.5",
      "type": "library",
      "version": "2.12.5"
    },
    {
      "bom-ref": "pydantic-extra-types==2.11.1",
      "description": "Extra Pydantic types.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://docs.pydantic.dev/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pydantic/pydantic-extra-types"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/pydantic/pydantic-extra-types/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/pydantic/pydantic-extra-types"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pydantic-extra-types",
      "purl": "pkg:pypi/pydantic-extra-types@2.11.1",
      "type": "library",
      "version": "2.11.1"
    },
    {
      "bom-ref": "pydantic-settings==2.13.1",
      "description": "Settings management using Pydantic",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://docs.pydantic.dev/dev-v2/concepts/pydantic_settings/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pydantic/pydantic-settings"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/samuelcolvin"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/pydantic/pydantic-settings/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/pydantic/pydantic-settings"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pydantic-settings",
      "purl": "pkg:pypi/pydantic-settings@2.13.1",
      "type": "library",
      "version": "2.13.1"
    },
    {
      "bom-ref": "pydantic_core==2.41.5",
      "description": "Core functionality for Pydantic validation and serialization",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pydantic/pydantic-core"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/samuelcolvin"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/pydantic/pydantic-core"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/pydantic/pydantic-core"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pydantic_core",
      "purl": "pkg:pypi/pydantic-core@2.41.5",
      "type": "library",
      "version": "2.41.5"
    },
    {
      "bom-ref": "pydocket==0.18.2",
      "description": "A distributed background task system for Python functions",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://docket.lol/en/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/chrisguidry/docket/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/chrisguidry/docket"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://docket.lol/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pydocket",
      "purl": "pkg:pypi/pydocket@0.18.2",
      "type": "library",
      "version": "0.18.2"
    },
    {
      "bom-ref": "pyparsing==3.3.2",
      "description": "pyparsing - Classes and methods to define and execute parsing grammars",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://pyparsing-docs.readthedocs.io/en/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pyparsing/pyparsing.git"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/pyparsing/pyparsing/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pyparsing",
      "purl": "pkg:pypi/pyparsing@3.3.2",
      "type": "library",
      "version": "3.3.2"
    },
    {
      "bom-ref": "python-dateutil==2.9.0.post0",
      "description": "Extensions to the standard Python datetime module",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://dateutil.readthedocs.io/en/stable/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/dateutil/dateutil"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/dateutil/dateutil"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "python-dateutil",
      "purl": "pkg:pypi/python-dateutil@2.9.0.post0",
      "type": "library",
      "version": "2.9.0.post0"
    },
    {
      "bom-ref": "python-dotenv==1.2.2",
      "description": "Read key-value pairs from a .env file and set them as environment variables",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/theskumar/python-dotenv"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "python-dotenv",
      "purl": "pkg:pypi/python-dotenv@1.2.2",
      "type": "library",
      "version": "1.2.2"
    },
    {
      "bom-ref": "python-json-logger==4.1.0",
      "description": "JSON Log Formatter for the Python Logging Package",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: GitHub",
          "type": "vcs",
          "url": "https://github.com/nhairs/python-json-logger"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://nhairs.github.io/python-json-logger"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-2-Clause"
          }
        }
      ],
      "name": "python-json-logger",
      "purl": "pkg:pypi/python-json-logger@4.1.0",
      "type": "library",
      "version": "4.1.0"
    },
    {
      "bom-ref": "python-slugify==8.0.4",
      "description": "A Python slugify application that also handles Unicode",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/un33k/python-slugify"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "python-slugify",
      "purl": "pkg:pypi/python-slugify@8.0.4",
      "type": "library",
      "version": "8.0.4"
    },
    {
      "bom-ref": "pytz==2026.1.post1",
      "description": "World timezone definitions, modern and historical",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Download-URL",
          "type": "distribution",
          "url": "https://pypi.org/project/pytz/"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "http://pythonhosted.org/pytz"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "pytz",
      "purl": "pkg:pypi/pytz@2026.1.post1",
      "type": "library",
      "version": "2026.1.post1"
    },
    {
      "bom-ref": "readchar==4.2.1",
      "description": "Library to easily read single chars and key strokes",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/magmax/python-readchar/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/magmax/python-readchar/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/magmax/python-readchar"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://pypi.org/project/readchar"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "readchar",
      "purl": "pkg:pypi/readchar@4.2.1",
      "type": "library",
      "version": "4.2.1"
    },
    {
      "bom-ref": "redis==7.4.0",
      "description": "Python client for Redis database and key-value store",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://redis.readthedocs.io/en/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue tracker",
          "type": "issue-tracker",
          "url": "https://github.com/redis/redis-py/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Code",
          "type": "other",
          "url": "https://github.com/redis/redis-py"
        },
        {
          "comment": "from packaging metadata Project-URL: Changes",
          "type": "release-notes",
          "url": "https://github.com/redis/redis-py/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/redis/redis-py"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "redis",
      "purl": "pkg:pypi/redis@7.4.0",
      "type": "library",
      "version": "7.4.0"
    },
    {
      "bom-ref": "referencing==0.37.0",
      "description": "JSON Referencing + Python",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://referencing.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/python-jsonschema/referencing/issues/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/python-jsonschema/referencing"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/Julian"
        },
        {
          "comment": "from packaging metadata Project-URL: Tidelift",
          "type": "other",
          "url": "https://tidelift.com/subscription/pkg/pypi-referencing?utm_source=pypi-referencing&utm_medium=referral&utm_campaign=pypi-link"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://referencing.readthedocs.io/en/stable/changes/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/python-jsonschema/referencing"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "referencing",
      "purl": "pkg:pypi/referencing@0.37.0",
      "type": "library",
      "version": "0.37.0"
    },
    {
      "bom-ref": "regex==2026.4.4",
      "description": "Alternative regular expression module, to replace re.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/mrabarnett/mrab-regex"
        }
      ],
      "licenses": [
        {
          "acknowledgement": "declared",
          "expression": "Apache-2.0 AND CNRI-Python"
        }
      ],
      "name": "regex",
      "purl": "pkg:pypi/regex@2026.4.4",
      "type": "library",
      "version": "2026.4.4"
    },
    {
      "bom-ref": "requests==2.33.1",
      "description": "Python HTTP for Humans.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://requests.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/psf/requests"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "requests",
      "purl": "pkg:pypi/requests@2.33.1",
      "type": "library",
      "version": "2.33.1"
    },
    {
      "bom-ref": "requests-oauthlib==2.0.0",
      "description": "OAuthlib authentication support for Requests.",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/requests/requests-oauthlib"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "ISC"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "requests-oauthlib",
      "purl": "pkg:pypi/requests-oauthlib@2.0.0",
      "type": "library",
      "version": "2.0.0"
    },
    {
      "bom-ref": "rfc3339-validator==0.1.4",
      "description": "A pure python RFC3339 validator",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/naimetti/rfc3339-validator"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "rfc3339-validator",
      "purl": "pkg:pypi/rfc3339-validator@0.1.4",
      "type": "library",
      "version": "0.1.4"
    },
    {
      "bom-ref": "rfc3986-validator==0.1.1",
      "description": "Pure python rfc3986 validator",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/naimetti/rfc3986-validator"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "rfc3986-validator",
      "purl": "pkg:pypi/rfc3986-validator@0.1.1",
      "type": "library",
      "version": "0.1.1"
    },
    {
      "bom-ref": "rfc3987-syntax==1.1.0",
      "description": "Helper functions to syntactically validate strings according to RFC 3987.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://github.com/willynilly/rfc3987-syntax#readme"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/willynilly/rfc3987-syntax/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/willynilly/rfc3987-syntax"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/willynilly/rfc3987-syntax"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "rfc3987-syntax",
      "purl": "pkg:pypi/rfc3987-syntax@1.1.0",
      "type": "library",
      "version": "1.1.0"
    },
    {
      "bom-ref": "rich==14.3.3",
      "description": "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://rich.readthedocs.io/en/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/Textualize/rich"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "rich",
      "purl": "pkg:pypi/rich@14.3.3",
      "type": "library",
      "version": "14.3.3"
    },
    {
      "bom-ref": "rich-rst==1.3.2",
      "description": "A beautiful reStructuredText renderer for rich",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://rich-rst.readthedocs.io/en/latest/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/wasi-master/rich-rst/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/wasi-master/rich-rst"
        },
        {
          "comment": "from packaging metadata Project-URL: Say Thanks",
          "type": "other",
          "url": "https://saythanks.io/to/wasi-master"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://wasi-master.github.io/rich-rst"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "rich-rst",
      "purl": "pkg:pypi/rich-rst@1.3.2",
      "type": "library",
      "version": "1.3.2"
    },
    {
      "bom-ref": "rpds-py==0.30.0",
      "description": "Python bindings to Rust's persistent data structures (rpds)",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://rpds.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/crate-py/rpds/issues/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/crate-py/rpds"
        },
        {
          "comment": "from packaging metadata Project-URL: Upstream",
          "type": "other",
          "url": "https://github.com/orium/rpds"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/Julian"
        },
        {
          "comment": "from packaging metadata Project-URL: Tidelift",
          "type": "other",
          "url": "https://tidelift.com/subscription/pkg/pypi-rpds-py?utm_source=pypi-rpds-py&utm_medium=referral&utm_campaign=pypi-link"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/crate-py/rpds"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "rpds-py",
      "purl": "pkg:pypi/rpds-py@0.30.0",
      "type": "library",
      "version": "0.30.0"
    },
    {
      "bom-ref": "ruamel.yaml==0.19.1",
      "description": "ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://yaml.dev/doc/ruamel.yaml"
        },
        {
          "comment": "from packaging metadata Project-URL: Tracker",
          "type": "issue-tracker",
          "url": "https://sourceforge.net/p/ruamel-yaml/tickets/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://sourceforge.net/p/ruamel-yaml/code/ci/default/tree/"
        },
        {
          "comment": "from packaging metadata Project-URL: Home",
          "type": "website",
          "url": "https://sourceforge.net/p/ruamel-yaml/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "ruamel.yaml",
      "purl": "pkg:pypi/ruamel.yaml@0.19.1",
      "type": "library",
      "version": "0.19.1"
    },
    {
      "bom-ref": "ruamel.yaml.clib==0.2.15",
      "description": "C version of reader, parser and emitter for ruamel.yaml derived from libyaml",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://yaml.dev/doc/ruamel.yaml.clib/"
        },
        {
          "comment": "from packaging metadata Project-URL: Tracker",
          "type": "issue-tracker",
          "url": "https://sourceforge.net/p/ruamel-yaml-clib/tickets/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://sourceforge.net/p/ruamel-yaml-clib/code/ci/default/tree/"
        },
        {
          "comment": "from packaging metadata Project-URL: Home",
          "type": "website",
          "url": "https://sourceforge.net/p/ruamel-yaml-clib/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "ruamel.yaml.clib",
      "purl": "pkg:pypi/ruamel.yaml.clib@0.2.15",
      "type": "library",
      "version": "0.2.15"
    },
    {
      "bom-ref": "semver==3.0.4",
      "description": "Python helper for Semantic Versioning (https://semver.org)",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://python-semver.rtfd.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/python-semver/python-semver/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: GitHub Homepage",
          "type": "other",
          "url": "https://github.com/python-semver/python-semver"
        },
        {
          "comment": "from packaging metadata Project-URL: Releases",
          "type": "other",
          "url": "https://github.com/python-semver/python-semver/releases"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://python-semver.readthedocs.io/en/latest/changelog.html"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "semver",
      "purl": "pkg:pypi/semver@3.0.4",
      "type": "library",
      "version": "3.0.4"
    },
    {
      "bom-ref": "shellingham==1.5.4",
      "description": "Tool to Detect Surrounding Shell",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/sarugaku/shellingham"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "ISC"
          }
        }
      ],
      "name": "shellingham",
      "purl": "pkg:pypi/shellingham@1.5.4",
      "type": "library",
      "version": "1.5.4"
    },
    {
      "bom-ref": "six==1.17.0",
      "description": "Python 2 and 3 compatibility utilities",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/benjaminp/six"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "six",
      "purl": "pkg:pypi/six@1.17.0",
      "type": "library",
      "version": "1.17.0"
    },
    {
      "bom-ref": "sniffio==1.3.1",
      "description": "Sniff out which async library your code is running under",
      "evidence": {
        "licenses": [
          {
            "license": {
              "acknowledgement": "declared",
              "id": "MIT"
            }
          },
          {
            "license": {
              "acknowledgement": "declared",
              "name": "License :: OSI Approved :: Apache Software License"
            }
          }
        ]
      },
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://sniffio.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://sniffio.readthedocs.io/en/latest/history.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/python-trio/sniffio"
        }
      ],
      "licenses": [
        {
          "acknowledgement": "declared",
          "expression": "MIT OR Apache-2.0"
        }
      ],
      "name": "sniffio",
      "purl": "pkg:pypi/sniffio@1.3.1",
      "type": "library",
      "version": "1.3.1"
    },
    {
      "bom-ref": "sortedcontainers==2.4.0",
      "description": "Sorted Containers -- Sorted List, Sorted Dict, Sorted Set",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "http://www.grantjenks.com/docs/sortedcontainers/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "sortedcontainers",
      "purl": "pkg:pypi/sortedcontainers@2.4.0",
      "type": "library",
      "version": "2.4.0"
    },
    {
      "bom-ref": "starlette==1.0.0",
      "description": "The little ASGI library that shines.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://starlette.dev/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/Kludex/starlette"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/Kludex"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://starlette.dev/release-notes/"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/Kludex/starlette"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "starlette",
      "purl": "pkg:pypi/starlette@1.0.0",
      "type": "library",
      "version": "1.0.0"
    },
    {
      "bom-ref": "stevedore==5.7.0",
      "description": "Manage dynamic plugins for Python applications",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://opendev.org/openstack/stevedore"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://docs.openstack.org/stevedore"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Apache Software License"
          }
        }
      ],
      "name": "stevedore",
      "purl": "pkg:pypi/stevedore@5.7.0",
      "type": "library",
      "version": "5.7.0"
    },
    {
      "bom-ref": "text-unidecode==1.3",
      "description": "The most basic Text::Unidecode port",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/kmike/text-unidecode/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "GPL-2.0-or-later"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: Artistic License"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: GNU General Public License (GPL)"
          }
        }
      ],
      "name": "text-unidecode",
      "purl": "pkg:pypi/text-unidecode@1.3",
      "type": "library",
      "version": "1.3"
    },
    {
      "bom-ref": "toml==0.10.2",
      "description": "Python Library for Tom's Obvious, Minimal Language",
      "externalReferences": [
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/uiri/toml"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "toml",
      "purl": "pkg:pypi/toml@0.10.2",
      "type": "library",
      "version": "0.10.2"
    },
    {
      "bom-ref": "tomli==2.4.1",
      "description": "A lil' TOML parser",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/hukkin/tomli/blob/master/CHANGELOG.md"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/hukkin/tomli"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "tomli",
      "purl": "pkg:pypi/tomli@2.4.1",
      "type": "library",
      "version": "2.4.1"
    },
    {
      "bom-ref": "tomli_w==1.2.0",
      "description": "A lil' TOML writer",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/hukkin/tomli-w/blob/master/CHANGELOG.md"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/hukkin/tomli-w"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "tomli_w",
      "purl": "pkg:pypi/tomli-w@1.2.0",
      "type": "library",
      "version": "1.2.0"
    },
    {
      "bom-ref": "typer==0.24.1",
      "description": "Typer, build great CLIs. Easy to code. Based on Python type hints.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://typer.tiangolo.com"
        },
        {
          "comment": "from packaging metadata Project-URL: Issues",
          "type": "issue-tracker",
          "url": "https://github.com/fastapi/typer/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://typer.tiangolo.com/release-notes/"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/fastapi/typer"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/fastapi/typer"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "typer",
      "purl": "pkg:pypi/typer@0.24.1",
      "type": "library",
      "version": "0.24.1"
    },
    {
      "bom-ref": "typing-inspection==0.4.2",
      "description": "Runtime typing introspection tools",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://pydantic.github.io/typing-inspection/dev/"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/pydantic/typing-inspection"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/pydantic/typing-inspection/blob/main/HISTORY.md"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/pydantic/typing-inspection"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "typing-inspection",
      "purl": "pkg:pypi/typing-inspection@0.4.2",
      "type": "library",
      "version": "0.4.2"
    },
    {
      "bom-ref": "typing_extensions==4.15.0",
      "description": "Backported and Experimental Type Hints for Python 3.9+",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://typing-extensions.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/python/typing_extensions/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Q & A",
          "type": "other",
          "url": "https://github.com/python/typing/discussions"
        },
        {
          "comment": "from packaging metadata Project-URL: Changes",
          "type": "release-notes",
          "url": "https://github.com/python/typing_extensions/blob/main/CHANGELOG.md"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/python/typing_extensions"
        },
        {
          "comment": "from packaging metadata Project-URL: Home",
          "type": "website",
          "url": "https://github.com/python/typing_extensions"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "PSF-2.0"
          }
        }
      ],
      "name": "typing_extensions",
      "purl": "pkg:pypi/typing-extensions@4.15.0",
      "type": "library",
      "version": "4.15.0"
    },
    {
      "bom-ref": "tzdata==2026.1",
      "description": "Provider of IANA time zone data",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://tzdata.python.org"
        },
        {
          "comment": "from packaging metadata Project-URL: Bug Reports",
          "type": "issue-tracker",
          "url": "https://github.com/python/tzdata/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/python/tzdata"
        },
        {
          "comment": "from packaging metadata: Home-page",
          "type": "website",
          "url": "https://github.com/python/tzdata"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "Apache-2.0"
          }
        }
      ],
      "name": "tzdata",
      "purl": "pkg:pypi/tzdata@2026.1",
      "type": "library",
      "version": "2026.1"
    },
    {
      "bom-ref": "tzlocal==5.3.1",
      "description": "tzinfo object for the local timezone",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Issue tracker",
          "type": "issue-tracker",
          "url": "https://github.com/regebro/tzlocal/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Source code",
          "type": "other",
          "url": "https://github.com/regebro/tzlocal"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/regebro/tzlocal/blob/master/CHANGES.txt"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "tzlocal",
      "purl": "pkg:pypi/tzlocal@5.3.1",
      "type": "library",
      "version": "5.3.1"
    },
    {
      "bom-ref": "uncalled-for==0.2.0",
      "description": "Async dependency injection for Python functions",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Bug Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/chrisguidry/uncalled-for/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Repository",
          "type": "vcs",
          "url": "https://github.com/chrisguidry/uncalled-for"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "uncalled-for",
      "purl": "pkg:pypi/uncalled-for@0.2.0",
      "type": "library",
      "version": "0.2.0"
    },
    {
      "bom-ref": "uri-template==1.3.0",
      "description": "RFC 6570 URI Template Processor",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: homepage",
          "type": "website",
          "url": "https://gitlab.linss.com/open-source/python/uri-template"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "uri-template",
      "purl": "pkg:pypi/uri-template@1.3.0",
      "type": "library",
      "version": "1.3.0"
    },
    {
      "bom-ref": "urllib3==2.6.3",
      "description": "HTTP library with thread-safe connection pooling, file post, and more.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://urllib3.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Issue tracker",
          "type": "issue-tracker",
          "url": "https://github.com/urllib3/urllib3/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Code",
          "type": "other",
          "url": "https://github.com/urllib3/urllib3"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://github.com/urllib3/urllib3/blob/main/CHANGES.rst"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "urllib3",
      "purl": "pkg:pypi/urllib3@2.6.3",
      "type": "library",
      "version": "2.6.3"
    },
    {
      "bom-ref": "uvicorn==0.43.0",
      "description": "The lightning-fast ASGI server.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/Kludex/uvicorn"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://github.com/sponsors/encode"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://uvicorn.dev/release-notes"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://uvicorn.dev/"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "uvicorn",
      "properties": [
        {
          "name": "cdx:python:package:required-extra",
          "value": "standard"
        }
      ],
      "purl": "pkg:pypi/uvicorn@0.43.0",
      "type": "library",
      "version": "0.43.0"
    },
    {
      "bom-ref": "webcolors==25.10.0",
      "description": "A library for working with the color formats defined by HTML and CSS.",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://webcolors.readthedocs.io"
        },
        {
          "comment": "from packaging metadata Project-URL: Source Code",
          "type": "other",
          "url": "https://github.com/ubernostrum/webcolors"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        },
        {
          "license": {
            "acknowledgement": "declared",
            "name": "License :: OSI Approved :: BSD License"
          }
        }
      ],
      "name": "webcolors",
      "purl": "pkg:pypi/webcolors@25.10.0",
      "type": "library",
      "version": "25.10.0"
    },
    {
      "bom-ref": "websockets==16.0",
      "description": "An implementation of the WebSocket Protocol (RFC 6455 & 7692)",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Documentation",
          "type": "documentation",
          "url": "https://websockets.readthedocs.io/"
        },
        {
          "comment": "from packaging metadata Project-URL: Tracker",
          "type": "issue-tracker",
          "url": "https://github.com/python-websockets/websockets/issues"
        },
        {
          "comment": "from packaging metadata Project-URL: Funding",
          "type": "other",
          "url": "https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=readme"
        },
        {
          "comment": "from packaging metadata Project-URL: Changelog",
          "type": "release-notes",
          "url": "https://websockets.readthedocs.io/en/stable/project/changelog.html"
        },
        {
          "comment": "from packaging metadata Project-URL: Homepage",
          "type": "website",
          "url": "https://github.com/python-websockets/websockets"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "BSD-3-Clause"
          }
        }
      ],
      "name": "websockets",
      "purl": "pkg:pypi/websockets@16.0",
      "type": "library",
      "version": "16.0"
    },
    {
      "bom-ref": "zipp==3.23.0",
      "description": "Backport of pathlib-compatible object wrapper for zip files",
      "externalReferences": [
        {
          "comment": "from packaging metadata Project-URL: Source",
          "type": "other",
          "url": "https://github.com/jaraco/zipp"
        }
      ],
      "licenses": [
        {
          "license": {
            "acknowledgement": "declared",
            "id": "MIT"
          }
        }
      ],
      "name": "zipp",
      "purl": "pkg:pypi/zipp@3.23.0",
      "type": "library",
      "version": "3.23.0"
    }
  ],
  "dependencies": [
    {
      "dependsOn": [
        "filelock==3.25.2",
        "msgpack==1.1.2",
        "redis==7.4.0",
        "requests==2.33.1"
      ],
      "ref": "CacheControl==0.14.4"
    },
    {
      "dependsOn": [
        "MarkupSafe==3.0.3"
      ],
      "ref": "Jinja2==3.1.6"
    },
    {
      "dependsOn": [
        "MarkupSafe==3.0.3"
      ],
      "ref": "Mako==1.3.10"
    },
    {
      "dependsOn": [
        "PyYAML==6.0.3"
      ],
      "ref": "Markdown==3.10.2"
    },
    {
      "ref": "MarkupSafe==3.0.3"
    },
    {
      "ref": "PyYAML==6.0.3"
    },
    {
      "dependsOn": [
        "colorama==0.4.6"
      ],
      "ref": "Pygments==2.20.0"
    },
    {
      "dependsOn": [
        "aiosqlite==0.22.1",
        "asyncpg==0.31.0",
        "greenlet==3.3.2",
        "importlib_metadata==8.7.1",
        "typing_extensions==4.15.0"
      ],
      "ref": "SQLAlchemy==2.0.49"
    },
    {
      "ref": "aiosqlite==0.22.1"
    },
    {
      "dependsOn": [
        "Mako==1.3.10",
        "SQLAlchemy==2.0.49",
        "tomli==2.4.1",
        "typing_extensions==4.15.0",
        "tzdata==2026.1"
      ],
      "ref": "alembic==1.18.4"
    },
    {
      "ref": "amplitude-analytics==1.2.3"
    },
    {
      "ref": "annotated-doc==0.0.4"
    },
    {
      "dependsOn": [
        "typing_extensions==4.15.0"
      ],
      "ref": "annotated-types==0.7.0"
    },
    {
      "dependsOn": [
        "exceptiongroup==1.3.1",
        "idna==3.11",
        "typing_extensions==4.15.0"
      ],
      "ref": "anyio==4.13.0"
    },
    {
      "dependsOn": [
        "Markdown==3.10.2",
        "PyYAML==6.0.3",
        "certifi==2026.2.25",
        "click==8.3.2",
        "cryptography==46.0.6",
        "requests-oauthlib==2.0.0",
        "requests==2.33.1",
        "tzdata==2026.1"
      ],
      "ref": "apprise==1.9.9"
    },
    {
      "dependsOn": [
        "dateparser==1.4.0",
        "python-dateutil==2.9.0.post0",
        "pytz==2026.1.post1",
        "tzdata==2026.1"
      ],
      "ref": "arrow==1.4.0"
    },
    {
      "dependsOn": [
        "sniffio==1.3.1"
      ],
      "ref": "asgi-lifespan==2.1.0"
    },
    {
      "ref": "asyncpg==0.31.0"
    },
    {
      "ref": "attrs==26.1.0"
    },
    {
      "dependsOn": [
        "PyYAML==6.0.3",
        "colorama==0.4.6",
        "rich==14.3.3",
        "stevedore==5.7.0",
        "tomli==2.4.1"
      ],
      "ref": "bandit==1.9.4"
    },
    {
      "dependsOn": [
        "Pygments==2.20.0",
        "SQLAlchemy==2.0.49",
        "click==8.3.2",
        "docutils==0.22.4",
        "redis==7.4.0",
        "typer==0.24.1",
        "typing_extensions==4.15.0"
      ],
      "ref": "beartype==0.22.9"
    },
    {
      "ref": "boolean.py==5.0"
    },
    {
      "ref": "cachetools==7.0.5"
    },
    {
      "ref": "certifi==2026.2.25"
    },
    {
      "dependsOn": [
        "pycparser==3.0"
      ],
      "ref": "cffi==2.0.0"
    },
    {
      "ref": "chardet==5.2.0"
    },
    {
      "ref": "charset-normalizer==3.4.7"
    },
    {
      "dependsOn": [
        "colorama==0.4.6"
      ],
      "ref": "click==8.3.2"
    },
    {
      "ref": "cloudpickle==3.1.2"
    },
    {
      "ref": "colorama==0.4.6"
    },
    {
      "ref": "coolname==4.1.0"
    },
    {
      "ref": "cronsim==2.7"
    },
    {
      "dependsOn": [
        "certifi==2026.2.25",
        "cffi==2.0.0",
        "click==8.3.2",
        "typing_extensions==4.15.0"
      ],
      "ref": "cryptography==46.0.6"
    },
    {
      "dependsOn": [
        "chardet==5.2.0",
        "cyclonedx-python-lib==11.7.0",
        "packageurl-python==0.17.6",
        "packaging==26.0",
        "pip-requirements-parser==32.0.1",
        "tomli==2.4.1"
      ],
      "ref": "cyclonedx-bom==7.3.0"
    },
    {
      "dependsOn": [
        "cyclonedx-bom==7.3.0"
      ],
      "ref": "cyclonedx-py==1.0.1"
    },
    {
      "dependsOn": [
        "jsonschema==4.26.0",
        "license-expression==30.4.4",
        "lxml==6.0.2",
        "packageurl-python==0.17.6",
        "py-serializable==2.1.0",
        "referencing==0.37.0",
        "sortedcontainers==2.4.0",
        "typing_extensions==4.15.0"
      ],
      "ref": "cyclonedx-python-lib==11.7.0"
    },
    {
      "dependsOn": [
        "Markdown==3.10.2",
        "PyYAML==6.0.3",
        "attrs==26.1.0",
        "docstring_parser==0.17.0",
        "pydantic==2.12.5",
        "rich-rst==1.3.2",
        "rich==14.3.3",
        "toml==0.10.2",
        "tomli==2.4.1",
        "typing_extensions==4.15.0"
      ],
      "ref": "cyclopts==4.10.1"
    },
    {
      "dependsOn": [
        "python-dateutil==2.9.0.post0",
        "pytz==2026.1.post1",
        "regex==2026.4.4",
        "tzlocal==5.3.1"
      ],
      "ref": "dateparser==1.4.0"
    },
    {
      "ref": "defusedxml==0.7.1"
    },
    {
      "dependsOn": [
        "requests==2.33.1",
        "urllib3==2.6.3"
      ],
      "ref": "docker==7.1.0"
    },
    {
      "ref": "docstring_parser==0.17.0"
    },
    {
      "ref": "docutils==0.22.4"
    },
    {
      "dependsOn": [
        "typing_extensions==4.15.0"
      ],
      "ref": "exceptiongroup==1.3.1"
    },
    {
      "dependsOn": [
        "lupa==2.6",
        "redis==7.4.0",
        "sortedcontainers==2.4.0",
        "typing_extensions==4.15.0"
      ],
      "ref": "fakeredis==2.34.1"
    },
    {
      "dependsOn": [
        "Jinja2==3.1.6",
        "PyYAML==6.0.3",
        "annotated-doc==0.0.4",
        "httpx==0.28.1",
        "pydantic-extra-types==2.11.1",
        "pydantic-settings==2.13.1",
        "pydantic==2.12.5",
        "starlette==1.0.0",
        "typing-inspection==0.4.2",
        "typing_extensions==4.15.0",
        "uvicorn==0.43.0"
      ],
      "ref": "fastapi==0.135.3"
    },
    {
      "ref": "filelock==3.25.2"
    },
    {
      "ref": "fqdn==1.5.1"
    },
    {
      "dependsOn": [
        "Jinja2==3.1.6",
        "cloudpickle==3.1.2",
        "requests==2.33.1",
        "urllib3==2.6.3"
      ],
      "ref": "fsspec==2026.3.0"
    },
    {
      "ref": "graphviz==0.21"
    },
    {
      "ref": "greenlet==3.3.2"
    },
    {
      "dependsOn": [
        "griffecli==2.0.2",
        "griffelib==2.0.2"
      ],
      "ref": "griffe==2.0.2"
    },
    {
      "dependsOn": [
        "colorama==0.4.6",
        "griffelib==2.0.2"
      ],
      "ref": "griffecli==2.0.2"
    },
    {
      "dependsOn": [
        "pip==25.0.1",
        "platformdirs==4.9.4"
      ],
      "ref": "griffelib==2.0.2"
    },
    {
      "ref": "h11==0.16.0"
    },
    {
      "dependsOn": [
        "hpack==4.1.0",
        "hyperframe==6.1.0"
      ],
      "ref": "h2==4.3.0"
    },
    {
      "ref": "hpack==4.1.0"
    },
    {
      "dependsOn": [
        "anyio==4.13.0",
        "certifi==2026.2.25",
        "h11==0.16.0",
        "h2==4.3.0"
      ],
      "ref": "httpcore==1.0.9"
    },
    {
      "dependsOn": [
        "Pygments==2.20.0",
        "anyio==4.13.0",
        "certifi==2026.2.25",
        "click==8.3.2",
        "h2==4.3.0",
        "httpcore==1.0.9",
        "idna==3.11",
        "rich==14.3.3"
      ],
      "ref": "httpx==0.28.1"
    },
    {
      "ref": "humanize==4.15.0"
    },
    {
      "ref": "hyperframe==6.1.0"
    },
    {
      "ref": "idna==3.11"
    },
    {
      "dependsOn": [
        "packaging==26.0",
        "zipp==3.23.0"
      ],
      "ref": "importlib_metadata==8.7.1"
    },
    {
      "dependsOn": [
        "arrow==1.4.0"
      ],
      "ref": "isoduration==20.11.0"
    },
    {
      "dependsOn": [
        "Jinja2==3.1.6",
        "humanize==4.15.0"
      ],
      "ref": "jinja2-humanize-extension==0.4.0"
    },
    {
      "dependsOn": [
        "jsonpointer==3.1.1"
      ],
      "ref": "jsonpatch==1.33"
    },
    {
      "ref": "jsonpointer==3.1.1"
    },
    {
      "dependsOn": [
        "referencing==0.37.0"
      ],
      "ref": "jsonschema-specifications==2025.9.1"
    },
    {
      "dependsOn": [
        "attrs==26.1.0",
        "fqdn==1.5.1",
        "idna==3.11",
        "isoduration==20.11.0",
        "jsonpointer==3.1.1",
        "jsonschema-specifications==2025.9.1",
        "referencing==0.37.0",
        "rfc3339-validator==0.1.4",
        "rfc3986-validator==0.1.1",
        "rfc3987-syntax==1.1.0",
        "rpds-py==0.30.0",
        "uri-template==1.3.0",
        "webcolors==25.10.0"
      ],
      "ref": "jsonschema==4.26.0"
    },
    {
      "dependsOn": [
        "regex==2026.4.4"
      ],
      "ref": "lark==1.3.1"
    },
    {
      "dependsOn": [
        "boolean.py==5.0"
      ],
      "ref": "license-expression==30.4.4"
    },
    {
      "ref": "lupa==2.6"
    },
    {
      "ref": "lxml==6.0.2"
    },
    {
      "dependsOn": [
        "Markdown==3.10.2",
        "PyYAML==6.0.3",
        "mdurl==0.1.2",
        "requests==2.33.1"
      ],
      "ref": "markdown-it-py==4.0.0"
    },
    {
      "ref": "mdurl==0.1.2"
    },
    {
      "ref": "msgpack==1.1.2"
    },
    {
      "dependsOn": [
        "cryptography==46.0.6"
      ],
      "ref": "oauthlib==3.3.1"
    },
    {
      "dependsOn": [
        "importlib_metadata==8.7.1",
        "typing_extensions==4.15.0"
      ],
      "ref": "opentelemetry-api==1.40.0"
    },
    {
      "ref": "orjson==3.11.8"
    },
    {
      "dependsOn": [
        "SQLAlchemy==2.0.49"
      ],
      "ref": "packageurl-python==0.17.6"
    },
    {
      "ref": "packaging==26.0"
    },
    {
      "dependsOn": [
        "typing_extensions==4.15.0"
      ],
      "ref": "pathspec==1.0.4"
    },
    {
      "dependsOn": [
        "python-dateutil==2.9.0.post0",
        "tzdata==2026.1"
      ],
      "ref": "pendulum==3.2.0"
    },
    {
      "dependsOn": [
        "pip==25.0.1"
      ],
      "ref": "pip-api==0.0.34"
    },
    {
      "dependsOn": [
        "packaging==26.0",
        "pyparsing==3.3.2"
      ],
      "ref": "pip-requirements-parser==32.0.1"
    },
    {
      "ref": "pip==25.0.1"
    },
    {
      "dependsOn": [
        "CacheControl==0.14.4",
        "cyclonedx-python-lib==11.7.0",
        "packaging==26.0",
        "pip-api==0.0.34",
        "pip-requirements-parser==32.0.1",
        "platformdirs==4.9.4",
        "requests==2.33.1",
        "rich==14.3.3",
        "tomli==2.4.1",
        "tomli_w==1.2.0"
      ],
      "ref": "pip_audit==2.10.0"
    },
    {
      "ref": "platformdirs==4.9.4"
    },
    {
      "ref": "pluggy==1.6.0"
    },
    {
      "dependsOn": [
        "prefect==3.6.25"
      ],
      "ref": "prefect-shell==0.3.5"
    },
    {
      "dependsOn": [
        "Jinja2==3.1.6",
        "PyYAML==6.0.3",
        "SQLAlchemy==2.0.49",
        "aiosqlite==0.22.1",
        "alembic==1.18.4",
        "amplitude-analytics==1.2.3",
        "anyio==4.13.0",
        "apprise==1.9.9",
        "asgi-lifespan==2.1.0",
        "asyncpg==0.31.0",
        "cachetools==7.0.5",
        "click==8.3.2",
        "cloudpickle==3.1.2",
        "coolname==4.1.0",
        "cryptography==46.0.6",
        "cyclopts==4.10.1",
        "dateparser==1.4.0",
        "docker==7.1.0",
        "exceptiongroup==1.3.1",
        "fastapi==0.135.3",
        "fsspec==2026.3.0",
        "graphviz==0.21",
        "griffe==2.0.2",
        "httpcore==1.0.9",
        "httpx==0.28.1",
        "humanize==4.15.0",
        "jinja2-humanize-extension==0.4.0",
        "jsonpatch==1.33",
        "jsonschema==4.26.0",
        "opentelemetry-api==1.40.0",
        "orjson==3.11.8",
        "packaging==26.0",
        "pathspec==1.0.4",
        "pendulum==3.2.0",
        "pluggy==1.6.0",
        "prefect-shell==0.3.5",
        "prometheus_client==0.24.1",
        "pydantic-extra-types==2.11.1",
        "pydantic-settings==2.13.1",
        "pydantic==2.12.5",
        "pydantic_core==2.41.5",
        "pydocket==0.18.2",
        "python-dateutil==2.9.0.post0",
        "python-slugify==8.0.4",
        "pytz==2026.1.post1",
        "readchar==4.2.1",
        "rfc3339-validator==0.1.4",
        "rich==14.3.3",
        "ruamel.yaml.clib==0.2.15",
        "ruamel.yaml==0.19.1",
        "semver==3.0.4",
        "sniffio==1.3.1",
        "toml==0.10.2",
        "typing_extensions==4.15.0",
        "uvicorn==0.43.0",
        "websockets==16.0"
      ],
      "ref": "prefect==3.6.25"
    },
    {
      "ref": "prometheus_client==0.24.1"
    },
    {
      "dependsOn": [
        "anyio==4.13.0",
        "asyncpg==0.31.0",
        "beartype==0.22.9",
        "cachetools==7.0.5",
        "cryptography==46.0.6",
        "pydantic==2.12.5",
        "pytz==2026.1.post1",
        "redis==7.4.0",
        "typing_extensions==4.15.0"
      ],
      "ref": "py-key-value-aio==0.4.4"
    },
    {
      "dependsOn": [
        "defusedxml==0.7.1"
      ],
      "ref": "py-serializable==2.1.0"
    },
    {
      "ref": "pycparser==3.0"
    },
    {
      "dependsOn": [
        "pendulum==3.2.0",
        "pydantic==2.12.5",
        "pytz==2026.1.post1",
        "semver==3.0.4",
        "typing_extensions==4.15.0",
        "tzdata==2026.1"
      ],
      "ref": "pydantic-extra-types==2.11.1"
    },
    {
      "dependsOn": [
        "PyYAML==6.0.3",
        "pydantic==2.12.5",
        "python-dotenv==1.2.2",
        "tomli==2.4.1",
        "typing-inspection==0.4.2"
      ],
      "ref": "pydantic-settings==2.13.1"
    },
    {
      "dependsOn": [
        "annotated-types==0.7.0",
        "pydantic_core==2.41.5",
        "typing-inspection==0.4.2",
        "typing_extensions==4.15.0",
        "tzdata==2026.1"
      ],
      "ref": "pydantic==2.12.5"
    },
    {
      "dependsOn": [
        "typing_extensions==4.15.0"
      ],
      "ref": "pydantic_core==2.41.5"
    },
    {
      "dependsOn": [
        "cloudpickle==3.1.2",
        "cronsim==2.7",
        "exceptiongroup==1.3.1",
        "fakeredis==2.34.1",
        "opentelemetry-api==1.40.0",
        "prometheus_client==0.24.1",
        "py-key-value-aio==0.4.4",
        "python-json-logger==4.1.0",
        "redis==7.4.0",
        "rich==14.3.3",
        "typer==0.24.1",
        "typing_extensions==4.15.0",
        "tzdata==2026.1",
        "uncalled-for==0.2.0"
      ],
      "ref": "pydocket==0.18.2"
    },
    {
      "dependsOn": [
        "Jinja2==3.1.6"
      ],
      "ref": "pyparsing==3.3.2"
    },
    {
      "dependsOn": [
        "six==1.17.0"
      ],
      "ref": "python-dateutil==2.9.0.post0"
    },
    {
      "dependsOn": [
        "click==8.3.2"
      ],
      "ref": "python-dotenv==1.2.2"
    },
    {
      "dependsOn": [
        "orjson==3.11.8",
        "tzdata==2026.1"
      ],
      "ref": "python-json-logger==4.1.0"
    },
    {
      "dependsOn": [
        "text-unidecode==1.3"
      ],
      "ref": "python-slugify==8.0.4"
    },
    {
      "ref": "pytz==2026.1.post1"
    },
    {
      "ref": "readchar==4.2.1"
    },
    {
      "dependsOn": [
        "cryptography==46.0.6",
        "opentelemetry-api==1.40.0",
        "requests==2.33.1"
      ],
      "ref": "redis==7.4.0"
    },
    {
      "dependsOn": [
        "attrs==26.1.0",
        "rpds-py==0.30.0",
        "typing_extensions==4.15.0"
      ],
      "ref": "referencing==0.37.0"
    },
    {
      "ref": "regex==2026.4.4"
    },
    {
      "dependsOn": [
        "oauthlib==3.3.1",
        "requests==2.33.1"
      ],
      "ref": "requests-oauthlib==2.0.0"
    },
    {
      "dependsOn": [
        "certifi==2026.2.25",
        "chardet==5.2.0",
        "charset-normalizer==3.4.7",
        "idna==3.11",
        "urllib3==2.6.3"
      ],
      "ref": "requests==2.33.1"
    },
    {
      "dependsOn": [
        "six==1.17.0"
      ],
      "ref": "rfc3339-validator==0.1.4"
    },
    {
      "ref": "rfc3986-validator==0.1.1"
    },
    {
      "dependsOn": [
        "lark==1.3.1"
      ],
      "ref": "rfc3987-syntax==1.1.0"
    },
    {
      "dependsOn": [
        "docutils==0.22.4",
        "rich==14.3.3"
      ],
      "ref": "rich-rst==1.3.2"
    },
    {
      "dependsOn": [
        "Pygments==2.20.0",
        "markdown-it-py==4.0.0"
      ],
      "ref": "rich==14.3.3"
    },
    {
      "ref": "rpds-py==0.30.0"
    },
    {
      "ref": "ruamel.yaml.clib==0.2.15"
    },
    {
      "dependsOn": [
        "ruamel.yaml.clib==0.2.15"
      ],
      "ref": "ruamel.yaml==0.19.1"
    },
    {
      "ref": "semver==3.0.4"
    },
    {
      "ref": "shellingham==1.5.4"
    },
    {
      "ref": "six==1.17.0"
    },
    {
      "ref": "sniffio==1.3.1"
    },
    {
      "ref": "sortedcontainers==2.4.0"
    },
    {
      "dependsOn": [
        "Jinja2==3.1.6",
        "PyYAML==6.0.3",
        "anyio==4.13.0",
        "httpx==0.28.1",
        "typing_extensions==4.15.0"
      ],
      "ref": "starlette==1.0.0"
    },
    {
      "ref": "stevedore==5.7.0"
    },
    {
      "ref": "text-unidecode==1.3"
    },
    {
      "ref": "toml==0.10.2"
    },
    {
      "ref": "tomli==2.4.1"
    },
    {
      "ref": "tomli_w==1.2.0"
    },
    {
      "dependsOn": [
        "annotated-doc==0.0.4",
        "click==8.3.2",
        "rich==14.3.3",
        "shellingham==1.5.4"
      ],
      "ref": "typer==0.24.1"
    },
    {
      "dependsOn": [
        "typing_extensions==4.15.0"
      ],
      "ref": "typing-inspection==0.4.2"
    },
    {
      "ref": "typing_extensions==4.15.0"
    },
    {
      "ref": "tzdata==2026.1"
    },
    {
      "dependsOn": [
        "tzdata==2026.1"
      ],
      "ref": "tzlocal==5.3.1"
    },
    {
      "ref": "uncalled-for==0.2.0"
    },
    {
      "ref": "uri-template==1.3.0"
    },
    {
      "dependsOn": [
        "h2==4.3.0"
      ],
      "ref": "urllib3==2.6.3"
    },
    {
      "dependsOn": [
        "PyYAML==6.0.3",
        "click==8.3.2",
        "colorama==0.4.6",
        "h11==0.16.0",
        "python-dotenv==1.2.2",
        "typing_extensions==4.15.0",
        "websockets==16.0"
      ],
      "ref": "uvicorn==0.43.0"
    },
    {
      "ref": "webcolors==25.10.0"
    },
    {
      "ref": "websockets==16.0"
    },
    {
      "ref": "zipp==3.23.0"
    }
  ],
  "metadata": {
    "timestamp": "2026-04-04T20:03:47.629934+00:00",
    "tools": {
      "components": [
        {
          "description": "CycloneDX Software Bill of Materials (SBOM) generator for Python projects and environments",
          "externalReferences": [
            {
              "type": "build-system",
              "url": "https://github.com/CycloneDX/cyclonedx-python/actions"
            },
            {
              "type": "distribution",
              "url": "https://pypi.org/project/cyclonedx-bom/"
            },
            {
              "type": "documentation",
              "url": "https://cyclonedx-bom-tool.readthedocs.io/"
            },
            {
              "type": "issue-tracker",
              "url": "https://github.com/CycloneDX/cyclonedx-python/issues"
            },
            {
              "type": "license",
              "url": "https://github.com/CycloneDX/cyclonedx-python/blob/main/LICENSE"
            },
            {
              "type": "release-notes",
              "url": "https://github.com/CycloneDX/cyclonedx-python/blob/main/CHANGELOG.md"
            },
            {
              "type": "vcs",
              "url": "https://github.com/CycloneDX/cyclonedx-python/"
            },
            {
              "type": "website",
              "url": "https://github.com/CycloneDX/cyclonedx-python/#readme"
            }
          ],
          "group": "CycloneDX",
          "licenses": [
            {
              "license": {
                "acknowledgement": "declared",
                "id": "Apache-2.0"
              }
            }
          ],
          "name": "cyclonedx-py",
          "type": "application",
          "version": "7.3.0"
        },
        {
          "description": "Python library for CycloneDX",
          "externalReferences": [
            {
              "type": "build-system",
              "url": "https://github.com/CycloneDX/cyclonedx-python-lib/actions"
            },
            {
              "type": "distribution",
              "url": "https://pypi.org/project/cyclonedx-python-lib/"
            },
            {
              "type": "documentation",
              "url": "https://cyclonedx-python-library.readthedocs.io/"
            },
            {
              "type": "issue-tracker",
              "url": "https://github.com/CycloneDX/cyclonedx-python-lib/issues"
            },
            {
              "type": "license",
              "url": "https://github.com/CycloneDX/cyclonedx-python-lib/blob/main/LICENSE"
            },
            {
              "type": "release-notes",
              "url": "https://github.com/CycloneDX/cyclonedx-python-lib/blob/main/CHANGELOG.md"
            },
            {
              "type": "vcs",
              "url": "https://github.com/CycloneDX/cyclonedx-python-lib"
            },
            {
              "type": "website",
              "url": "https://github.com/CycloneDX/cyclonedx-python-lib/#readme"
            }
          ],
          "group": "CycloneDX",
          "licenses": [
            {
              "license": {
                "acknowledgement": "declared",
                "id": "Apache-2.0"
              }
            }
          ],
          "name": "cyclonedx-python-lib",
          "type": "library",
          "version": "11.7.0"
        }
      ]
    }
  },
  "serialNumber": "urn:uuid:2415563e-fc19-41a2-922c-2afd19609fdf",
  "version": 1,
  "$schema": "http://cyclonedx.org/schema/bom-1.6.schema.json",
  "bomFormat": "CycloneDX",
  "specVersion": "1.6"
}