Finished release 1.0.1.
release start: Fail if 'point me' label present

Change-Id: I059cdac76a33405aa99e26bbc66ac8def47c7c7a
Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
Finished feature 53695305/release-start-point-me-label.
release finish: Pass if zero-point not qa'd

If a story has 0 points, in other words it is a refactoring story, don't
fail on release finish if there is no qa+ label present.

On the other hand, fail release finish if there is a 'point me' label
present.

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
Finished feature 53695127/release-finish-skip-zero-points.
release finish: Submit reviews after merging ok

There was a single step to check and then submit all the code reviews,
and the another step to merge branches. But what if the reviews are ok,
they are submitted, and then we fail to merge?

That single Review Board step is now split, so we

    1) Check that all relevant review requests are there.
    2) Merge.
    3) Submit all relevant review requests.

We cannot get into an inconsistent state with this sequence of steps
unless we get an internal server error from Review Board.

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
Finished feature 53458579/release-finish-checking-master-too-late.
Fix typo

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
Finished feature 53458579/release-finish-checking-master-too-late.
release finish: Fix broken if condition

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
Finished feature 53695127/release-finish-skip-zero-points.
git fetch: Monkey patch GitPython bug

There is an assertion inside of GitPython that is causing false
negatives, so the plugin occasionally fails without any reason.

This patch simply filters out the false negative exception. It's not an
optimal solution, since it also filters out the right occurences of
failed assertion.

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
feature finish: Fix broken diff generation

When --for-release is used during feature start, feature finish then
generated a wrong diff since it's always generating it against develop,
hence including the whole release branch in every feature diff.

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
Finished feature 54189048/for-release-wrong-diff.
Finished feature 54182062/invalid-assertion.
Remove unused import

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
Finished feature 54182062/invalid-assertion.
Parse story ID from branch name correctly

There was an edge case with feature branches having description in the
branch name starting with a digit. Then the regexp to parse story id would
fail.

This patch makes the thing a bit more explicit and more robust, handling
the edge case correctly.

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>
Finished feature 54595696/feature-finish-throws-404.
RemoteWrapper: Add magic methods

__str__ and/or __repr__ are being used in the code, but they were not
implemented on RemoteWrapper, which broke stuff.

Now there are a few magic methods added which just pass the request to
the inner Remote object.

Signed-off-by: Ondrej Kupka <ondra.cap@gmail.com>