Use oslo.sphinx and remove local copy of doc theme

Use the new oslo.sphinx version of the OpenStack doc
theme instead of copying it into this repo.

blueprint oslo.sphinx

Change-Id: I0bd91f7bb43f97b99051fed65b75fc05d5149cc8
Hook docstrings into the published docs

Fixes bug #1182842

We've always had pretty decent documentation coverage in the docstrings
but have never taken the time to hook them into the published docs.

This is a first-cut at doing that. There's plenty of rough edges, but
it's a good start.

Change-Id: I62a509e7d6e156e9b67e75bef9da68fbfc4601ac
Raise an exception when _oparser is not initialized

Throw an exception when print_help and print_usage
are called before __call__() is invoked on ConfigOpts
object

Fixes LP# 1196601

Change-Id: I2c3b412c5aa9adef87a92103b9749cc66158a3e4
Merge "Raise an exception when _oparser is not initialized"
Add Python 3 support

These are the final changes needed to have the full py33 tox environment
running and passing all tests.

Change-Id: I3ac149345561a5bb99e017022ba2e2be10154584
Add eclipse project files to .gitignore

Like some of the other projects (nova, heat) ignore eclipse
project files, for those people that work with eclipse (yuck :)

Change-Id: I803a5a9a4bf30dc053b3f3a260a69ce19f3a6c9b
Allow use of hacking 0.6.0 and fix min version

Change-Id: Iaf75b8991c6a7c79a22651ca15867adda4dac2b1
Fix python 3.3 test configuration

It is no longer necessary to install testrepository from bzr,
so don't. That means we no longer need a separate py33
environment definition, or the special requirements file.

Do not use distribute in the test virtualenvs.

Change-Id: I1c0002d3992e25e7e0927eca85ccd5e4d57ee7d1
Merge "Allow use of hacking 0.6.0 and fix min version"
Fixes six imports

Change-Id: I4ee63d990bf95d74cadd1d65ad75f7fe26cc8fbd
NoSuchOptError should be used not AttributeError

Switch back to previous behavior. Looks like we are missing a test to
enforce the old behavior that everyone depends on

Fixes LP# 1207541

Change-Id: I79c58cfcf619a461f6a42a4dccfa9141bc1033a0
Add auto-create support for OptGroup instances

Currently, it is possible to auto-create groups by passing a group name
to register_opt or register_opts. However, it is not possible to
auto-register groups when a OptGroup instance is passed instead.

This patch adds support for that to the _get_group method. There are
some advantages introduced by this patch:

    * It keeps consistency of oslo.config's public API.
    * It allow users to auto-register a group a group and
    re-use the instance:
        group = cfg.OptGroup("test")
        cfg.register_opts(..., group=group)
        # do something with the group
    * It allows users to auto-register groups with descriptions.

DocImpact

Change-Id: I9b9a74688c906d6bdea9c42044b47dc52e48c19d
Bump hacking to 0.7.0

Change-Id: I4414f4b8f82bdb3df3fc9c1e9de675e1994aed05
Fix first param in  __eq__ impl to be self

first parameter of a method should be named 'self'. Added a
test case as well

Change-Id: I03a993a9f84af354dcf7e358ed0e5e126eda48af
Remove explicit version from setup.cfg

With the explicit "pre version" in setup.cfg, PBR generates our
version as 1.2.0.a1.g2748574 and, without it, it generates
1.2.0a4.1.g2748574.

which in turn causes nova to complain about:

 VersionConflict: (oslo.config 1.2.0.a1.g2748574
 (/opt/stack/new/oslo.config),
 Requirement.parse('oslo.config>=1.2.0a3'))

when trying to load extensions with stevedore.

I'm not sure why this is suddenly an issue after 1.2.0a4 has been
tagged, but removing this version is the right thing to do anyway
since we want to rely on tags for all versioning info.

Change-Id: I9090b8401a43befd73a82f9bb78e0b6165619c7c
Release notes for 1.2.0a4

Change-Id: Iff43254317071b863d1ccd50eef4d71fb85240a7
Update requirements

This is the fabulous result of running the update.py script from
openstack/requirements with this repository as the target. It therefore
updates all dependencies, with nice version numbers that this repository
have to use to work. It also fixes case on some dependencies.
This update also brings a brand shiny new setup.py automatically handled
and generate by this same openstack/requirements repository.

Change-Id: I22ec396e5fa802c1617514aa6df3ed82f05271b0
Merge "Update requirements"
Fix DictOpt to split only the first colon

I've encountered a ValueError when adapting DictOpt to
neutron's network_vlan_ranges.
https://github.com/openstack/neutron/blob/master/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini#L23

This patch makes dictopt to split only the first colon for every value

Fixes bug #1223667

Change-Id: Iee4011f2a45be933dad393c72df099d6a8116849
Raises error if duplicate keys found in DictOpt

DictOpt didn't report when the input values had duplicate keys.
This would be a problem if the user had put in duplicate keys in
the conf file and the service didn't work as expected.
(c.f) Neutrons provider network mapping options
This patch raises a ConfigFileValueError when duplicate keys are found.

Fixes bug #1228995

Change-Id: I91e1bd0eda4ed4fd6c7eb6ea5d4a89d583d1305e