Add the semver documentation

This is a fork of the upstream semver documentation with an aim towards
being a PEP440 compliant implementation of the ideas.

Change-Id: I66a543fc08e0c1148a6db02dce207deabafed664
Fixed pbr install to not error out and fail if git is not installed

Fixed the issue where pbr was erroring out (file not found) when
running 'python setup.py egg_info' since it was trying to get the
.git directory even if git was not installed.

Closes bug 1245676

Change-Id: I31e1f86f10f18897774b49eb293aede31641db31
Use pypi-mirror instead of jeepyb

Change-Id: I56dffb73526bd56ac544d320d9d6f2baa6175a2a
Remove pip as an argument from mkvenv

We no longer care about or support old pip, because it turns out that
evil happens. Remove it from the mkvenv function.

Change-Id: I27dbef7816eaac856e97ec5a036f6d5ca9b183af
Add wheel mirror structure awareness

We are going to start having wheels in the gate. Having them there
should not break folks who are not using wheels.  Don't start actually
consuming wheels yet, but add awareness about the wheel structure to the
pypi config.

Change-Id: Id29bb1bb31fc1647f8e1ea00bab487e447ba2838
Avoid using 'which' executable for finding git

Just use 'git --version' to check if the git executable is present

Change-Id: Ib5c11060fa7d9b7d9741dd88fc3430237f0bc1a0
Closes-Bug: #1248447
Link to the documentation in the readme

Change-Id: Ib4ddd8bcb749e21615c856026d10df16be3923f9
Merge "Avoid using 'which' executable for finding git"
Merge "Add the semver documentation"
Base python 2.7 skip list on parsed names

We keep a list of libraries that should only be installed on python 2.6,
but the check to see if a requirement matches that list was only doing
a simple string equality, which would miss attempts to install version
specified instances of one of them.

Instead, use pkg_resources to parse the potential requirements line and
operate on the parsed project name.

Change-Id: If64e4b2ee6696a0531e3ed6099e63372d47bc851
Communicate to user when we skip a requirement

We skip several requirements on python >= 2.6 because they
are only needed on 2.6 but there is no good way to express that in
requirements.txt. This can be confusing to users, because they may
not be expecting such a thing and may think something broke.

Print a message to the info log to that the user can see that we
chose to not install their non-needed requirement.

Change-Id: I11de12351123bbf406f77cf402feeab0e5dff26b
Ignore jenkins@openstack.org in authors building

this email used for posting requirements updates

Change-Id: I30e2e68cb6b5e8c2bcbc972a632ac2a1254f5fe4
Merge "Use pypi-mirror instead of jeepyb"
Merge "Remove pip as an argument from mkvenv"
Merge "Add wheel mirror structure awareness"
Support building wheels (PEP-427)

With that, building and uploading wheels to PyPI is only one "python
setup.py bdist_wheel" away.

Change-Id: Idfc291f496a81498df6408f189854f49eca496d3
Bump the development status classifier.

Change-Id: Ib64c45080ad256fd0019072deef19fb76516486c
Merge "Ignore jenkins@openstack.org in authors building"
Serve local mirror using apache

There are enough behavioral differences between http and file urls
for pypi mirrors that we should do the local mirror via apache. That
way we're testing what we care about - consumption of changes in the
mirror context - and not what we don't - how well pip deals with file
urls.

Change-Id: Icb16e8bbe77c03f224d06010eeb6bd0877b0d6ca
Merge "Base python 2.7 skip list on parsed names"