4b04aaf3b2
This removes the assert to ensure a value for service_type is set. The keyword style of calling can still be used, so microversion_parse.get_version(headers, service_type='compute') will remain working. Using an assert for this is probably inadvisable, since it will be stripped away if python is run with -O. Change-Id: I9775c5d87890c8ff4a6072c600d54fa47264fa9f |
||
---|---|---|
doc/source | ||
microversion_parse | ||
.gitignore | ||
.gitreview | ||
.testr.conf | ||
LICENSE | ||
Makefile | ||
README.rst | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
microversion_parse
A simple parser for OpenStack microversion headers:
import microversion_parse
# headers is a dict of headers with folded (comma-separated
# values) or a list of header, value tuples
version = microversion_parse.get_version(
headers, service_type='compute',
legacy_headers=['x-openstack-nova-api-version'])
It processes microversion headers with the standard form:
OpenStack-API-Version: compute 2.1
If provided with a legacy_headers
argument, this is
treated as a list of headers to check for microversions. Some examples
of headers include:
OpenStack-telemetry-api-version: 2.1
OpenStack-nova-api-version: 2.1
X-OpenStack-nova-api-version: 2.1
If a version string cannot be found, None
will be
returned. If the input is incorrect usual Python exceptions (ValueError,
TypeError) are allowed to raise to the caller.