{ "components": [ { "bom-ref": "requirements-L24", "description": "requirements line 24: aioimaplib>=1.0", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/aioimaplib/" } ], "name": "aioimaplib", "purl": "pkg:pypi/aioimaplib", "type": "library" }, { "bom-ref": "requirements-L9", "description": "requirements line 9: anthropic==0.40.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/anthropic/" } ], "name": "anthropic", "purl": "pkg:pypi/anthropic@0.40.%2A", "type": "library", "version": "0.40.*" }, { "bom-ref": "requirements-L33", "description": "requirements line 33: apscheduler==3.10.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/apscheduler/" } ], "name": "apscheduler", "purl": "pkg:pypi/apscheduler@3.10.%2A", "type": "library", "version": "3.10.*" }, { "bom-ref": "requirements-L36", "description": "requirements line 36: argon2-cffi==23.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/argon2-cffi/" } ], "name": "argon2-cffi", "purl": "pkg:pypi/argon2-cffi@23.%2A", "type": "library", "version": "23.*" }, { "bom-ref": "requirements-L41", "description": "requirements line 41: asyncpg==0.31.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/asyncpg/" } ], "name": "asyncpg", "purl": "pkg:pypi/asyncpg@0.31.%2A", "type": "library", "version": "0.31.*" }, { "bom-ref": "requirements-L28", "description": "requirements line 28: beautifulsoup4==4.12.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/beautifulsoup4/" } ], "name": "beautifulsoup4", "purl": "pkg:pypi/beautifulsoup4@4.12.%2A", "type": "library", "version": "4.12.*" }, { "bom-ref": "requirements-L19", "description": "requirements line 19: caldav==1.3.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/caldav/" } ], "name": "caldav", "purl": "pkg:pypi/caldav@1.3.%2A", "type": "library", "version": "1.3.*" }, { "bom-ref": "requirements-L13", "description": "requirements line 13: cryptography==43.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/cryptography/" } ], "name": "cryptography", "purl": "pkg:pypi/cryptography@43.%2A", "type": "library", "version": "43.*" }, { "bom-ref": "requirements-L2", "description": "requirements line 2: fastapi==0.115.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/fastapi/" } ], "name": "fastapi", "purl": "pkg:pypi/fastapi@0.115.%2A", "type": "library", "version": "0.115.*" }, { "bom-ref": "requirements-L29", "description": "requirements line 29: feedparser==6.0.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/feedparser/" } ], "name": "feedparser", "purl": "pkg:pypi/feedparser@6.0.%2A", "type": "library", "version": "6.0.*" }, { "bom-ref": "requirements-L27", "description": "requirements line 27: httpx==0.27.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/httpx/" } ], "name": "httpx", "purl": "pkg:pypi/httpx@0.27.%2A", "type": "library", "version": "0.27.*" }, { "bom-ref": "requirements-L23", "description": "requirements line 23: imapclient==3.0.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/imapclient/" } ], "name": "imapclient", "purl": "pkg:pypi/imapclient@3.0.%2A", "type": "library", "version": "3.0.*" }, { "bom-ref": "requirements-L4", "description": "requirements line 4: jinja2==3.1.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/jinja2/" } ], "name": "jinja2", "purl": "pkg:pypi/jinja2@3.1.%2A", "type": "library", "version": "3.1.*" }, { "bom-ref": "requirements-L42", "description": "requirements line 42: mcp==1.26.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/mcp/" } ], "name": "mcp", "purl": "pkg:pypi/mcp@1.26.%2A", "type": "library", "version": "1.26.*" }, { "bom-ref": "requirements-L10", "description": "requirements line 10: openai==1.57.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/openai/" } ], "name": "openai", "purl": "pkg:pypi/openai@1.57.%2A", "type": "library", "version": "1.57.*" }, { "bom-ref": "requirements-L30", "description": "requirements line 30: playwright>=1.40", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/playwright/" } ], "name": "playwright", "purl": "pkg:pypi/playwright", "type": "library" }, { "bom-ref": "requirements-L37", "description": "requirements line 37: pyotp>=2.9", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/pyotp/" } ], "name": "pyotp", "purl": "pkg:pypi/pyotp", "type": "library" }, { "bom-ref": "requirements-L45", "description": "requirements line 45: python-dateutil==2.9.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/python-dateutil/" } ], "name": "python-dateutil", "purl": "pkg:pypi/python-dateutil@2.9.%2A", "type": "library", "version": "2.9.*" }, { "bom-ref": "requirements-L16", "description": "requirements line 16: python-dotenv==1.0.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/python-dotenv/" } ], "name": "python-dotenv", "purl": "pkg:pypi/python-dotenv@1.0.%2A", "type": "library", "version": "1.0.*" }, { "bom-ref": "requirements-L5", "description": "requirements line 5: python-multipart==0.0.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/python-multipart/" } ], "name": "python-multipart", "purl": "pkg:pypi/python-multipart@0.0.%2A", "type": "library", "version": "0.0.*" }, { "bom-ref": "requirements-L46", "description": "requirements line 46: pytz==2024.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/pytz/" } ], "name": "pytz", "purl": "pkg:pypi/pytz@2024.%2A", "type": "library", "version": "2024.*" }, { "bom-ref": "requirements-L38", "description": "requirements line 38: qrcode[pil]>=7.4", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/qrcode/" } ], "name": "qrcode", "properties": [ { "name": "cdx:python:package:required-extra", "value": "pil" } ], "purl": "pkg:pypi/qrcode", "type": "library" }, { "bom-ref": "requirements-L3", "description": "requirements line 3: uvicorn[standard]==0.32.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/uvicorn/" } ], "name": "uvicorn", "properties": [ { "name": "cdx:python:package:required-extra", "value": "standard" } ], "purl": "pkg:pypi/uvicorn@0.32.%2A", "type": "library", "version": "0.32.*" }, { "bom-ref": "requirements-L20", "description": "requirements line 20: vobject==0.9.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/vobject/" } ], "name": "vobject", "purl": "pkg:pypi/vobject@0.9.%2A", "type": "library", "version": "0.9.*" }, { "bom-ref": "requirements-L6", "description": "requirements line 6: websockets==13.*", "externalReferences": [ { "comment": "implicit dist url", "type": "distribution", "url": "https://pypi.org/simple/websockets/" } ], "name": "websockets", "purl": "pkg:pypi/websockets@13.%2A", "type": "library", "version": "13.*" } ], "dependencies": [ { "ref": "requirements-L10" }, { "ref": "requirements-L13" }, { "ref": "requirements-L16" }, { "ref": "requirements-L19" }, { "ref": "requirements-L2" }, { "ref": "requirements-L20" }, { "ref": "requirements-L23" }, { "ref": "requirements-L24" }, { "ref": "requirements-L27" }, { "ref": "requirements-L28" }, { "ref": "requirements-L29" }, { "ref": "requirements-L3" }, { "ref": "requirements-L30" }, { "ref": "requirements-L33" }, { "ref": "requirements-L36" }, { "ref": "requirements-L37" }, { "ref": "requirements-L38" }, { "ref": "requirements-L4" }, { "ref": "requirements-L41" }, { "ref": "requirements-L42" }, { "ref": "requirements-L45" }, { "ref": "requirements-L46" }, { "ref": "requirements-L5" }, { "ref": "requirements-L6" }, { "ref": "requirements-L9" } ], "metadata": { "timestamp": "2026-04-15T07:29:58.838584+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:2d68f514-7d51-45bc-957f-4df5affd9778", "version": 1, "$schema": "http://cyclonedx.org/schema/bom-1.6.schema.json", "bomFormat": "CycloneDX", "specVersion": "1.6" }