We exuberantly announce the release of: keystoneauth1 3.0.0: Authentication Library for OpenStack Identity This release is part of the pike release series. The source is available from: https://git.openstack.org/cgit/openstack/keystoneauth Download the package from: https://pypi.python.org/pypi/keystoneauth1 Please report issues through launchpad: https://bugs.launchpad.net/keystoneauth For more details, please see below. 3.0.0 ^^^^^ New Features * Added support for specifying a microversion to use on a given REST request. The microversion can be specified on session request calls and a default can be set on Adapter construction. * Added support for the API Working Group recommendations on service and version discovery. New methods on Session and Adapter, "get_endpoint_data" will return endpoint metadata including microversion information. Additionally, versions can be requested with a range and with the string "latest", and interface values can be given as a list in case a user wants to express a 'best available' set of preferences. Changes in keystoneauth1 2.21.0..3.0.0 -------------------------------------- 5058d40 Fixed minor review comments and updated docs e2d4c30 Make discover.version_between private 699fac1 Discourage 'version' and accept 'M.latest' 218adc3 Add ability to specify a microversion in a request 4dc2a40 Remove deprecated_since for interface and fix text 0948e5e Enable sphinx todo extension 24b09f4 Add support for next_min_version and not_before de41fec Remove kwargs from adapter.get_endpoint_data 98b7292 Expose valid_interfaces as a ListOpt for config files 8161ed8 Add min_version and max_version to adapter constructors 0007f37 Minor cleanup 05c3a47 Add paragraph clarifying major and micro versions 416675f Update docs and add a release note 885acfe Update URLs in documents according to document migration 4e4a1a8 Make Discover.version_data accept null max_version 7293a7b Miscellaneous cleanup in discover.py 1415a94 normalize_version_number([1]) => (1, 0) and docs d644977 Fix _run_discovery caching 498320a Nix EndpointData.get_versioned_data(authenticated) 3ae350b Expand some discover.py docstrings 5e3758a Change locations of docs for intersphinx 26f9345 Clean up a few review nits d8f1027 Switch from oslosphinx to openstackdocstheme 429b19c Ensure we discover only when we should d061a61 Refactor volume mock urls in identity_common tests 2b949de Support a list of interface values 46054f4 Optimize matching version no microversion needed d2ef028 Plumb endpoint_override through get_endpoint_data dfba9c4 Expose getting EndpointData on adapter and session d658f84 Add support for version ranges 432f177 Support explicitly requesting the 'latest' version cdc10d8 Add flags to turn discovery on and off cd7aa77 Updated from global requirements a4066a8 Add url manipulation and microversion collection e89e354 Move version discovery logic to keystoneauth1.discover 68e0fe5 Rework discovery cache b0dcfa8 Using assertFalse(A) instead of assertEqual(False, A) 0a62f6a Updated from global requirements 5ec72ea Updated from global requirements b73711a Optimize the link address 62c83a0 Pass kwargs to the plugin getter c6b9153 Rework EndpointData construction to normalize catalog first 337e5af Add returning EndpointData objects from discovery 1352e5a Port the missing version data discovery tests from ksc 070f8fd Add 'none' identity plugin Diffstat (except docs and test files) ------------------------------------- HACKING.rst | 2 +- README.rst | 2 +- bindep.txt | 2 +- keystoneauth1/access/service_catalog.py | 393 ++++++--- keystoneauth1/adapter.py | 58 +- keystoneauth1/discover.py | 909 +++++++++++++++++++- keystoneauth1/fixture/__init__.py | 1 + keystoneauth1/fixture/discovery.py | 116 +++ keystoneauth1/identity/base.py | 269 ++++-- keystoneauth1/loading/_plugins/noauth.py | 33 + keystoneauth1/loading/adapter.py | 82 +- keystoneauth1/loading/cli.py | 2 +- keystoneauth1/noauth.py | 24 + keystoneauth1/session.py | 114 ++- ...croversion-header-support-901acd820a21d788.yaml | 6 + .../support-api-wg-discovery-2cb4b0186619e124.yaml | 10 + releasenotes/source/conf.py | 10 +- requirements.txt | 2 +- setup.cfg | 3 +- test-requirements.txt | 6 +- 30 files changed, 3984 insertions(+), 306 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index db884a4..083ceb0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8 +8 @@ positional>=1.1.1 # Apache-2.0 -requests!=2.12.2,!=2.13.0,>=2.10.0 # Apache-2.0 +requests>=2.14.2 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index 87cdd84..e78b494 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -12,2 +12,2 @@ mock>=2.0 # BSD -oslo.config>=4.0.0 # Apache-2.0 -oslosphinx>=4.7.0 # Apache-2.0 +oslo.config!=4.3.0,!=4.4.0,>=4.0.0 # Apache-2.0 +openstackdocstheme>=1.11.0 # Apache-2.0 @@ -20 +20 @@ requests-mock>=1.1 # Apache-2.0 -sphinx!=1.6.1,>=1.5.1 # BSD +sphinx>=1.6.2 # BSD