[openstack-dev] [new][openstack] osc-lib 1.0.0 release (newton)

no-reply at openstack.org no-reply at openstack.org
Thu Aug 11 10:38:16 UTC 2016


We are joyful to announce the release of:

osc-lib 1.0.0: OpenStackClient Library

This release is part of the newton release series.

With source available at:

    https://git.openstack.org/cgit/openstack/osc-lib

With package available at:

    https://pypi.python.org/pypi/osc-lib

Please report issues through launchpad:

    https://bugs.launchpad.net/python-openstackclient

For more details, please see below.

1.0.0
^^^^^

"osc-lib" was extracted from the main OpenStackClient repo after the
OSC 2.4.0 release.  A number of the lower-layer modules were simply
renamed into the osc_lib namespace:

   * openstackclient.api.api -> osc_lib.api.api
   * openstackclient.api.auth -> osc_lib.api.auth
   * openstackclient.api.utils -> osc_lib.api.utils
   * openstackclient.common.command -> osc_lib.command.command
   * openstackclient.common.exceptions -> osc_lib.exceptions
   * openstackclient.common.logs -> osc_lib.logs
   * openstackclient.common.parseractions -> osc_lib.cli.parseractions
   * openstackclient.common.session -> osc_lib.session
   * openstackclient.common.utils -> osc_lib.utils
   * openstackclient.i18n -> osc_lib.i18n

The higher-layer components, such as the OpenStackShell and
ClientManager objects, have had significant changes made to them to
streamline interaction with "os-client-config" and "keystoneauth" in
addition to the rename:

   * openstackclient.common.commandmanager -> osc_lib.command.commandmanager
   * openstackclient.shell -> osc_lib.shell


New Features
************

* Add "utils.find_min_match()" function to filter a list based on a
  set of minimum values of attributes.  For example, selecting all
  compute flavors that have a minimum amount of RAM and disk and
  VCPUs.

* Add "cli.client_config.OSC_Config" as a subclass of
  "os_client_config.config.OpenStackConfig" to collect all of the
  configuration option special cases in OSC into one place and insert
  into the "os-client-config" handling.


Bug Fixes
*********

* The "parseractions.KeyValueAction" class now raises a
  "argparse.ArgumentTypeError" exception when the argument is not in
  the form "<key>=<value>".

* Change "utils.find_resource()" to handle client managers that lack
  a "find()" method. Raise an "exceptions.CommandError" exception when
  multiple matches are found.

* Change "utils.find_resource()" to handle glanceclient's
  "HTTPNotFound" exception.

* Change "utils.find_resource()" to attempt lookups as IDs first,
  falling back to "find()" methods when available.

* Refactor "ClientManager" class to remove OSC-specific logic and
  move all option special-cases into "cli.client_config.OSC_Config".
  Also change some private attributes to public ("region_name",
  "interface", "cacert", "verify" and remove "_insecure").

* Refactor "OpenStackShell" to handle only global argument
  processing and setting up the ClientManager with configuration from
  "os-client- config".  Command and plugin loading remain in OSC.

* Prevent null key setting for key-value pairs in the
  "KeyValueAction" and "MultiKeyValueAction" parser actions. [Bug
  1558690 (https://bugs.launchpad.net/bugs/1558690)]

* Decode argv into Unicode on Python 2 in "OpenStackShell.main()"
  [OSC Bug 1603494 (https://bugs.launchpad.net/bugs/1603494)]

Changes in osc-lib 0.4.1..1.0.0
-------------------------------

da73792 Fix arguemnt precedence issues with os-client-config
a4d952c Do not add user domain options if not needed
d31ad54 Updated from global requirements
ed96632 Decode argv to Unicode on py2
7dbc92b Prevent null key setting for property
56f614b Add release notes for 1.0 release
a0c520b Updated from global requirements
703dc2f Updated from global requirements
40e1536 Add reno for osc-lib release notes management
908b4a9 Updated from global requirements


Diffstat (except docs and test files)
-------------------------------------

README.rst                                         |   1 +
osc_lib/cli/client_config.py                       |  54 ++++
osc_lib/cli/parseractions.py                       |  16 +-
osc_lib/shell.py                                   |  13 +-
releasenotes/notes/.placeholder                    |   0
.../notes/1.0-summary-47dcce446d6a512b.yaml        |  53 ++++
.../notes/bug-1558690-1528b637f2c0a449.yaml        |   6 +
.../notes/shell-argv-decode-cdc13dc0c4ec07af.yaml  |   5 +
releasenotes/source/_static/.placeholder           |   0
releasenotes/source/_templates/.placeholder        |   0
releasenotes/source/conf.py                        | 345 +++++++++++++++++++++
releasenotes/source/index.rst                      |  14 +
releasenotes/source/unreleased.rst                 |   5 +
requirements.txt                                   |   6 +-
test-requirements.txt                              |   5 +-
tox.ini                                            |   3 +
19 files changed, 586 insertions(+), 21 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index b3760b4..c80a504 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -9,2 +9,2 @@ cliff!=1.16.0,!=1.17.0,>=1.15.0 # Apache-2.0
-keystoneauth1>=2.7.0 # Apache-2.0
-os-client-config>=1.13.1 # Apache-2.0
+keystoneauth1>=2.10.0 # Apache-2.0
+os-client-config!=1.19.0,>=1.13.1 # Apache-2.0
@@ -12 +12 @@ oslo.i18n>=2.1.0 # Apache-2.0
-oslo.utils>=3.15.0 # Apache-2.0
+oslo.utils>=3.16.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 42bca99..136e574 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -9 +8,0 @@ mock>=2.0 # BSD
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
@@ -17,0 +17,4 @@ bandit>=1.0.1 # Apache-2.0
+
+# Documentation
+oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
+reno>=1.8.0 # Apache2





More information about the OpenStack-dev mailing list