{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"com.github.openstack/python-keystoneclient","documentNamespace":"https://spdx.org/spdxdocs/protobom/cba3151d-e6b0-4e21-85d1-4b25e6c7e8d9","comment":"Exact versions could not be resolved for some packages. For more information: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#dependencies-included.","creationInfo":{"creators":["Tool: protobom-v0.0.0-20251216165153-1f3f3060931e+dirty","Tool: GitHub.com-Dependency-Graph"],"created":"2025-12-29T18:09:35Z"},"packages":[{"name":"stevedore","SPDXID":"SPDXRef-pypi-stevedore-75c946","versionInfo":"\u003e= 1.20.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/stevedore"}]},{"name":"oslo-i18n","SPDXID":"SPDXRef-pypi-oslo-i18n-75c946","versionInfo":"\u003e= 3.15.3","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/oslo-i18n"}]},{"name":"oslo-config","SPDXID":"SPDXRef-pypi-oslo-config-75c946","versionInfo":"\u003e= 5.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/oslo-config"}]},{"name":"keystoneauth1","SPDXID":"SPDXRef-pypi-keystoneauth1-75c946","versionInfo":"\u003e= 3.4.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/keystoneauth1"}]},{"name":"requests","SPDXID":"SPDXRef-pypi-requests-75c946","versionInfo":"\u003e= 2.14.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/requests"}]},{"name":"debtcollector","SPDXID":"SPDXRef-pypi-debtcollector-75c946","versionInfo":"\u003e= 1.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/debtcollector"}]},{"name":"oslo-utils","SPDXID":"SPDXRef-pypi-oslo-utils-75c946","versionInfo":"\u003e= 3.33.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/oslo-utils"}]},{"name":"pbr","SPDXID":"SPDXRef-pypi-pbr-75c946","versionInfo":"\u003e= 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pbr"}]},{"name":"oslo-serialization","SPDXID":"SPDXRef-pypi-oslo-serialization-75c946","versionInfo":"\u003e= 2.18.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/oslo-serialization"}]},{"name":"packaging","SPDXID":"SPDXRef-pypi-packaging-75c946","versionInfo":"\u003e= 20.4","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/packaging"}]},{"name":"coverage","SPDXID":"SPDXRef-pypi-coverage-75c946","versionInfo":"\u003e= 4.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/coverage"}]},{"name":"testtools","SPDXID":"SPDXRef-pypi-testtools-75c946","versionInfo":"\u003e= 2.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/testtools"}]},{"name":"bandit","SPDXID":"SPDXRef-pypi-bandit-75c946","versionInfo":"\u003e= 1.1.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/bandit"}]},{"name":"lxml","SPDXID":"SPDXRef-pypi-lxml-75c946","versionInfo":"\u003e= 4.5.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/lxml"}]},{"name":"oauthlib","SPDXID":"SPDXRef-pypi-oauthlib-75c946","versionInfo":"\u003e= 0.6.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/oauthlib"}]},{"name":"tempest","SPDXID":"SPDXRef-pypi-tempest-75c946","versionInfo":"\u003e= 17.1.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/tempest"}]},{"name":"stestr","SPDXID":"SPDXRef-pypi-stestr-75c946","versionInfo":"\u003e= 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/stestr"}]},{"name":"oslotest","SPDXID":"SPDXRef-pypi-oslotest-75c946","versionInfo":"\u003e= 3.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/oslotest"}]},{"name":"requests-mock","SPDXID":"SPDXRef-pypi-requests-mock-75c946","versionInfo":"\u003e= 1.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/requests-mock"}]},{"name":"hacking","SPDXID":"SPDXRef-pypi-hacking-75c946","versionInfo":"\u003e= 6.1.0,\u003c 6.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/hacking"}]},{"name":"openstacksdk","SPDXID":"SPDXRef-pypi-openstacksdk-75c946","versionInfo":"\u003e= 0.10.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/openstacksdk"}]},{"name":"flake8-docstrings","SPDXID":"SPDXRef-pypi-flake8-docstrings-1.7.0-75c946","versionInfo":"1.7.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2013 Simon Andre, Ian Cordasco","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flake8-docstrings@1.7.0"}]},{"name":"reno","SPDXID":"SPDXRef-pypi-reno-75c946","versionInfo":"\u003e= 3.1.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/reno"}]},{"name":"lxml","SPDXID":"SPDXRef-pypi-lxml-75c946","versionInfo":"\u003e= 3.4.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/lxml"}]},{"name":"sphinx","SPDXID":"SPDXRef-pypi-sphinx-75c946","versionInfo":"\u003e= 2.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/sphinx"}]},{"name":"openstackdocstheme","SPDXID":"SPDXRef-pypi-openstackdocstheme-75c946","versionInfo":"\u003e= 2.2.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/openstackdocstheme"}]},{"name":"sphinxcontrib-apidoc","SPDXID":"SPDXRef-pypi-sphinxcontrib-apidoc-75c946","versionInfo":"\u003e= 0.2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/sphinxcontrib-apidoc"}]},{"name":"com.github.openstack/python-keystoneclient","SPDXID":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","versionInfo":"master","downloadLocation":"git+https://github.com/openstack/python-keystoneclient","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:github/openstack/python-keystoneclient@master"}]}],"relationships":[{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-lxml-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-oauthlib-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-stestr-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-sphinx-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-openstackdocstheme-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-oslo-i18n-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-packaging-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-testtools-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-oslotest-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-hacking-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-reno-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-oslo-utils-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-pbr-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-tempest-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-openstacksdk-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-sphinxcontrib-apidoc-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-bandit-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-oslo-config-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-keystoneauth1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-requests-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-oslo-serialization-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-coverage-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-requests-mock-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-flake8-docstrings-1.7.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-stevedore-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relatedSpdxElement":"SPDXRef-pypi-debtcollector-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-github-openstack-python-keystoneclient-master-f62b94","relationshipType":"DESCRIBES"}]}