add docs env to tox

Change-Id: I2d987e15ce7c61ed32a5f5178130f3654d71a938
cleanup tox.ini

remove unnecessary dependency declarations

Change-Id: If2f3c7fcabe474902cdb18cd6890a49144266690
Introduce a SemanticVersion object

This object represents a single semver version and provides serialisation
into different forms (dpkg/rpm/pep-440).

implements: blueprint pbr-semver
sem-ver: feature
Change-Id: I482e07cce9b65df452d5b9af4c73960df68a141e
Merge "add docs env to tox"
Merge "cleanup tox.ini"
Handle more local dev version cases

Due to an oversight in testing (the tests for local dev versions were
all running with PBR_VERSION in the environment) we did not handle
enough variety of local development versions.

Specific new cases we now handle:
 - untagged trees - where git describe returns just the sha
 - tags with versions with less than two components (e.g. 1)

Change-Id: Ieaeca592b6ba26c5da50dcad3fb6e7551431d50e
Co-Authored-By: Robert Collins <rbtcollins@hp.com>
Teach pbr about post versioned dev versions.

Untagged versions should not be presented as final versions, which is
what was happening. The rules for dev versions are that they lead up
to the next release, so to emit a dev version we have to increment
the current version, then we can emit a dev version number.

implements: blueprint pbr-semver
sem-ver: feature
Change-Id: Icf2f1999613e0d26424798697de34811b9cfc4ab