{"bomFormat":"CycloneDX","specVersion":"1.5","version":1,"serialNumber":"urn:uuid:ab7d18e4-c301-441f-b9c3-f522394a9c72","metadata":{"timestamp":"2026-06-16T13:03:38Z","tools":[{"vendor":"Ecosystems","name":"Ecosystems SBOM Generator"}],"component":{"type":"application","name":"PythonCoderAS/AsyncDex"}},"components":[{"type":"library","name":"pytest","version":"*","purl":"pkg:pypi/pytest","properties":[{"name":"filePath","value":"dev-requirements.txt"}]},{"type":"library","name":"asynctest","version":"*","purl":"pkg:pypi/asynctest","properties":[{"name":"filePath","value":"dev-requirements.txt"}]},{"type":"library","name":"pytest-asyncio","version":"*","purl":"pkg:pypi/pytest-asyncio","properties":[{"name":"filePath","value":"dev-requirements.txt"}]},{"type":"library","name":"pytest-recording","version":"*","purl":"pkg:pypi/pytest-recording","properties":[{"name":"filePath","value":"dev-requirements.txt"}]},{"type":"library","name":"vcrpy","version":"master","purl":"pkg:pypi/vcrpy","properties":[{"name":"filePath","value":"dev-requirements.txt"}]},{"type":"library","name":"aiohttp","version":"*","purl":"pkg:pypi/aiohttp","properties":[{"name":"filePath","value":"docs/readthedocs-requirements.txt"}]},{"type":"library","name":"natsort","version":"*","purl":"pkg:pypi/natsort","properties":[{"name":"filePath","value":"docs/readthedocs-requirements.txt"}]},{"type":"library","name":"sphinx-rtd-theme","version":"*","purl":"pkg:pypi/sphinx-rtd-theme","properties":[{"name":"filePath","value":"docs/readthedocs-requirements.txt"}]},{"type":"library","name":"aiohttp","version":"*","purl":"pkg:pypi/aiohttp","properties":[{"name":"filePath","value":"requirements.txt"}]},{"type":"library","name":"natsort","version":"*","purl":"pkg:pypi/natsort","properties":[{"name":"filePath","value":"requirements.txt"}]},{"type":"library","name":"aiohttp","version":"*","purl":"pkg:pypi/aiohttp","properties":[{"name":"filePath","value":"setup.py"}]}]}