Using a mutable type implies that it's acceptable for the set of
publicly-accessible attributes to be mutated at runtime, which defeats
their intended purpose of documenting the public interface. Tuples are
immutable.
Change-Id: Ib3ab93224ba240040b08ece481ef5ba620c3f658
6659902a731767b3405d68e515c8edcc3af81119 caused a lot of importing a
lot of things in __init__ which makes loading anything, say session,
really slow. The load time for keystoneclient is really critical since
every client uses it. And having a CLI take several seconds to do
nothing is really bad user experience.
This drops the hot cache import time of keystoneclient.session down to
160ms which is about 60ms faster (down from 220ms without this patch)
for me.
Change-Id: I917503ae54c9abcff417f0a0368abb765a847b6e
Partial-Bug: #1431649
Co-Authored-By: Robert Collins <rbtcollins@hp.com>
The generated docs didn't provide enough information for a developer
to get started using the API. This change enhances the documentation
for the module so that a developer knows where to go to start (create
a Client).
Partial-Bug: #1330769
Change-Id: I907187d34ebf2c2e662ff7b9547b0ecaef008414
The keystoneclient docstrings should give guidance for an
application developer to actually use the library. Here's a start.
Partial-Bug: #1330769
Change-Id: I1a9434704d0cd6b58de76933ff78c8d5c0aa3e3b
There were warnings generated during the build due to missing
attributes, like this:
keystoneclient.rst:7: WARNING: missing attribute mentioned in
:members: or __all__: module keystoneclient.__init__, attribute
v2_0
This is fixed by importing the symbol in __init__.
Closes-Bug: #1315523
Change-Id: I565c78ef8910353c4e1ce1641b42fba7cdbd77d8
Some files still use trademark OpenStack LLC in header, which
should be changed to OpenStack Foundation.
NOTE: tools/install_venv.py is not touched, should sync with oslo
Change-Id: I01d4f6b64cf1a152c4e190407799ce7d53de845f
Fixes-Bug: #1214176