Modules `strutils`, `timeutils` and `network_utils` from common code are
graduated in `oslo.utils`, so we can:
1. remove `novaclient.openstack.common.network_utils` and use
2. use `oslo.utils.encodeutils` and `oslo.utils.strutils` instead of
3. use `oslo.utils.timeutils` instead of
- modules `importutils`, `strutils` and `timeutils` from
`novaclient.openstack.common` cannot be removed, because:
- importutils is used by apiclient and jsonutils;
- strutils is used by apiclient, cliutils and jsonutils;
- timeutils is used by jsonutils
- additional check for `safe_encode` in Py3 is required, since
If91a866d864a22d28a352152beff4c7406a27b7b was merged.
Switch to using network_utils for splitting the URL. The code
in oslo-incubator supports ipv6 urls
HEAD of oslo-incubator is bb52a3fc49f033b9f36238231ca56e754a78cf4b
Updated openstack-common.conf to pick up the new dependency from
Python3 reorganized the standard library and moved several
functions to different modules and combined modules. Six
provides a consistent interface to the module through
However urllib/urlparse is not covered by six.moves so
py3kcompat adds python2/python3 compatibility layer for
Signed-off-by: Chuck Short <email@example.com>
The current version of install_venv_common uses the --distribute flag
in its creation of the virtualenv. This causes some upgrade problems
with the new versions of distribute and setuptools. The solution to
those problems is to get off of the distribute bandwagon.
In the original code, isalnum() in is_uuid_like() doesn't allow "-",
while for UUID, format like aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa should be
allowed. This patch is to reuse uuidutils's API in oslo.
Signed-off-by: Shane Wang <firstname.lastname@example.org>
openstack.common.setup and openstack.common.version are now in the
standalone library pbr, so all projects using those two should
Fixes bug 1179007.
Currently novaclient doesn't handle properly incoming and outgoing
encode / decode process. As a solution for this, this patch implements a
decoding process for all data incoming from the user side and decodes
everything going out of the client, i.e: http requests, prints, etc.
This patch introduces a new module (strutils.py) taken from
oslo-incubator in order to use 2 of the functions present in it:
Both functions try to encode / decode the incoming text using the
stdin encoding, fallback to python's default encoding if that
returns None or to UTF-8 as the last option.
In both functions only basestring objects are accepted and they both
raise TypeError if an object of another type is passed.
About the general novaclient changes:
In order to better support non-ASCII characters, it is a good
practice to use unicode interanlly and encode everything that has to
go out. This patch aims to do that and introduces this behaviour in
A good test (besides using tox) is to use nova client with and
without setting any locale (export LANG=).
Fixes bug: 1061156
Fixes bug #1045456
The date range in Nova's os-simple-tenant-usage is expected to be in UTC
time since launch/termination dates are stored in the DB in UTC time and
we use the client supplied parameters to query DB without conversion.
Switch from using datetime.today() to datetime.utcnow() to fix the issue.
Add a test for the default date range.
Import timeutils from openstack-common so we can control the return value
of utcnow() in the tests.