{"bomFormat":"CycloneDX","specVersion":"1.5","version":1,"serialNumber":"urn:uuid:e1ef1234-76fb-4688-af67-d7c06d597519","metadata":{"timestamp":"2026-10-04T18:52:43Z","tools":[{"vendor":"Ecosystems","name":"Ecosystems SBOM Generator"}],"component":{"type":"application","name":"CovenantSQL/python-demos"}},"components":[{"type":"library","name":"pycovenantsql","version":"*","purl":"pkg:pypi/pycovenantsql","properties":[{"name":"filePath","value":"Pipfile"}]},{"type":"library","name":"pylint","version":"*","purl":"pkg:pypi/pylint","properties":[{"name":"filePath","value":"Pipfile"}]},{"type":"library","name":"yapf","version":"*","purl":"pkg:pypi/yapf","properties":[{"name":"filePath","value":"Pipfile"}]},{"type":"library","name":"certifi","version":"==2018.10.15","purl":"pkg:pypi/certifi","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"chardet","version":"==3.0.4","purl":"pkg:pypi/chardet","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"idna","version":"==2.7","purl":"pkg:pypi/idna","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"pycovenantsql","version":"==0.0.4","purl":"pkg:pypi/pycovenantsql","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"requests","version":"==2.20.0","purl":"pkg:pypi/requests","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"urllib3","version":"==1.24.1","purl":"pkg:pypi/urllib3","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"astroid","version":"==2.0.4","purl":"pkg:pypi/astroid","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"isort","version":"==4.3.4","purl":"pkg:pypi/isort","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"lazy-object-proxy","version":"==1.3.1","purl":"pkg:pypi/lazy-object-proxy","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"mccabe","version":"==0.6.1","purl":"pkg:pypi/mccabe","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"pylint","version":"==2.1.1","purl":"pkg:pypi/pylint","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"six","version":"==1.11.0","purl":"pkg:pypi/six","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"typed-ast","version":"==1.1.0","purl":"pkg:pypi/typed-ast","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"wrapt","version":"==1.10.11","purl":"pkg:pypi/wrapt","properties":[{"name":"filePath","value":"Pipfile.lock"}]},{"type":"library","name":"yapf","version":"==0.24.0","purl":"pkg:pypi/yapf","properties":[{"name":"filePath","value":"Pipfile.lock"}]}]}