{"bomFormat":"CycloneDX","specVersion":"1.5","version":1,"serialNumber":"urn:uuid:0645d334-cd8f-4b7c-bea3-8f85f52dfeb0","metadata":{"timestamp":"2026-10-19T13:39:01Z","tools":[{"vendor":"Ecosystems","name":"Ecosystems SBOM Generator"}],"component":{"type":"application","name":"softlayer/softlayer-python"}},"components":[{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/codeql-analysis.yml"}]},{"type":"library","name":"github/codeql-action/init","version":"v1","purl":"pkg:githubactions/github/codeql-action/init","properties":[{"name":"filePath","value":".github/workflows/codeql-analysis.yml"}]},{"type":"library","name":"github/codeql-action/autobuild","version":"v1","purl":"pkg:githubactions/github/codeql-action/autobuild","properties":[{"name":"filePath","value":".github/workflows/codeql-analysis.yml"}]},{"type":"library","name":"github/codeql-action/analyze","version":"v1","purl":"pkg:githubactions/github/codeql-action/analyze","properties":[{"name":"filePath","value":".github/workflows/codeql-analysis.yml"}]},{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/documentation.yml"}]},{"type":"library","name":"actions/setup-python","version":"v1","purl":"pkg:githubactions/actions/setup-python","properties":[{"name":"filePath","value":".github/workflows/documentation.yml"}]},{"type":"library","name":"samuelmeuli/action-snapcraft","version":"v1.2.0","purl":"pkg:githubactions/samuelmeuli/action-snapcraft","properties":[{"name":"filePath","value":".github/workflows/release.yml"}]},{"type":"library","name":"actions/checkout","version":"master","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/release.yml"}]},{"type":"library","name":"actions/setup-python","version":"v2","purl":"pkg:githubactions/actions/setup-python","properties":[{"name":"filePath","value":".github/workflows/release.yml"}]},{"type":"library","name":"pypa/gh-action-pypi-publish","version":"release/v1","purl":"pkg:githubactions/pypa/gh-action-pypi-publish","properties":[{"name":"filePath","value":".github/workflows/release.yml"}]},{"type":"library","name":"actions/checkout","version":"master","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/test_pypi_release.yml"}]},{"type":"library","name":"actions/setup-python","version":"v2","purl":"pkg:githubactions/actions/setup-python","properties":[{"name":"filePath","value":".github/workflows/test_pypi_release.yml"}]},{"type":"library","name":"pypa/gh-action-pypi-publish","version":"master","purl":"pkg:githubactions/pypa/gh-action-pypi-publish","properties":[{"name":"filePath","value":".github/workflows/test_pypi_release.yml"}]},{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/tests.yml"}]},{"type":"library","name":"actions/setup-python","version":"v1","purl":"pkg:githubactions/actions/setup-python","properties":[{"name":"filePath","value":".github/workflows/tests.yml"}]},{"type":"library","name":"sphinx","version":"*","purl":"pkg:pypi/sphinx","properties":[{"name":"filePath","value":"docs/requirements.txt"}]},{"type":"library","name":"sphinx-click","version":"*","purl":"pkg:pypi/sphinx-click","properties":[{"name":"filePath","value":"docs/requirements.txt"}]},{"type":"library","name":"click","version":"*","purl":"pkg:pypi/click","properties":[{"name":"filePath","value":"docs/requirements.txt"}]},{"type":"library","name":"prettytable","version":"*","purl":"pkg:pypi/prettytable","properties":[{"name":"filePath","value":"docs/requirements.txt"}]},{"type":"library","name":"rich","version":"*","purl":"pkg:pypi/rich","properties":[{"name":"filePath","value":"docs/requirements.txt"}]},{"type":"library","name":"prettytable","version":"*","purl":"pkg:pypi/prettytable","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"click","version":"*","purl":"pkg:pypi/click","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"requests","version":"*","purl":"pkg:pypi/requests","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"prompt_toolkit","version":"*","purl":"pkg:pypi/prompt_toolkit","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"pygments","version":"*","purl":"pkg:pypi/pygments","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"urllib3","version":"*","purl":"pkg:pypi/urllib3","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"rich","version":"*","purl":"pkg:pypi/rich","properties":[{"name":"filePath","value":"setup.py"}]},{"type":"library","name":"prettytable","version":"\u003e=2.5.0","purl":"pkg:pypi/prettytable","properties":[{"name":"filePath","value":"tools/requirements.txt"}]},{"type":"library","name":"click","version":"\u003e=8.0.4","purl":"pkg:pypi/click","properties":[{"name":"filePath","value":"tools/requirements.txt"}]},{"type":"library","name":"requests","version":"\u003e=2.20.0","purl":"pkg:pypi/requests","properties":[{"name":"filePath","value":"tools/requirements.txt"}]},{"type":"library","name":"prompt_toolkit","version":"\u003e=2","purl":"pkg:pypi/prompt_toolkit","properties":[{"name":"filePath","value":"tools/requirements.txt"}]},{"type":"library","name":"pygments","version":"\u003e=2.0.0","purl":"pkg:pypi/pygments","properties":[{"name":"filePath","value":"tools/requirements.txt"}]},{"type":"library","name":"urllib3","version":"\u003e=1.24","purl":"pkg:pypi/urllib3","properties":[{"name":"filePath","value":"tools/requirements.txt"}]},{"type":"library","name":"rich","version":"==13.3.1","purl":"pkg:pypi/rich","properties":[{"name":"filePath","value":"tools/requirements.txt"}]},{"type":"library","name":"sphinx","version":"*","purl":"pkg:pypi/sphinx","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"prettytable","version":"\u003e=2.5.0","purl":"pkg:pypi/prettytable","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"click","version":"\u003e=8.0.4","purl":"pkg:pypi/click","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"requests","version":"\u003e=2.20.0","purl":"pkg:pypi/requests","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"prompt_toolkit","version":"\u003e=2","purl":"pkg:pypi/prompt_toolkit","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"pygments","version":"\u003e=2.0.0","purl":"pkg:pypi/pygments","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"urllib3","version":"\u003e=1.24","purl":"pkg:pypi/urllib3","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"rich","version":"\u003e=12.3.0","purl":"pkg:pypi/rich","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"tox","version":"*","purl":"pkg:pypi/tox","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"coveralls","version":"*","purl":"pkg:pypi/coveralls","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"pytest","version":"*","purl":"pkg:pypi/pytest","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"pytest-cov","version":"*","purl":"pkg:pypi/pytest-cov","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"mock","version":"*","purl":"pkg:pypi/mock","properties":[{"name":"filePath","value":"tools/test-requirements.txt"}]},{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/test-snap-can-build.yml"}]},{"type":"library","name":"snapcore/action-build","version":"v1","purl":"pkg:githubactions/snapcore/action-build","properties":[{"name":"filePath","value":".github/workflows/test-snap-can-build.yml"}]},{"type":"library","name":"diddlesnaps/snapcraft-review-action","version":"v1","purl":"pkg:githubactions/diddlesnaps/snapcraft-review-action","properties":[{"name":"filePath","value":".github/workflows/test-snap-can-build.yml"}]},{"type":"library","name":"python-devel","version":"*","purl":"pkg:rpm/python-devel","properties":[{"name":"filePath","value":"pkg/softlayer-python.spec"}]},{"type":"library","name":"python-setuptools","version":"*","purl":"pkg:rpm/python-setuptools","properties":[{"name":"filePath","value":"pkg/softlayer-python.spec"}]},{"type":"library","name":"python-requests","version":"*","purl":"pkg:rpm/python-requests","properties":[{"name":"filePath","value":"pkg/softlayer-python.spec"}]},{"type":"library","name":"python-click","version":"*","purl":"pkg:rpm/python-click","properties":[{"name":"filePath","value":"pkg/softlayer-python.spec"}]},{"type":"library","name":"python-prettytable","version":"\u003e= 0.7.0","purl":"pkg:rpm/python-prettytable","properties":[{"name":"filePath","value":"pkg/softlayer-python.spec"}]},{"type":"library","name":"python-importlib","version":"*","purl":"pkg:rpm/python-importlib","properties":[{"name":"filePath","value":"pkg/softlayer-python.spec"}]},{"type":"library","name":"python-six","version":"\u003e= 1.6.1","purl":"pkg:rpm/python-six","properties":[{"name":"filePath","value":"pkg/softlayer-python.spec"}]}]}