------------------
- [IMP] colored logging
- [IMP] major change to acsoo tag and tag_editable_requirements. These changes
make it easier to work with a CI-driven release process that is triggered on
new tags. The usual manual ``acsoo release`` process should be mostly unimpacted by
these changes.
- ``tag_editable_requirements`` is now ``tag_requirements``.
- the tags structure has changed from ``{series}-{trigram}_{version}`` to
``{series}-{trigram}-{req_sha}-{egg}``, where ``{req_sha}`` is the sha of the
last change to ``requirements.txt``.
- ``tag_requirements`` includes the egg name in the tag so different commits
in the same repo can be tagged (before, all addons in a given dependency repo had
to be on the same commit).
- when a tag for the given series, trigram and egg already exists on the
dependency commit, ``tag_requirements`` does not attempt to create another
tag (this avoids creating useless tags or forced tags) and
this is sufficient because the sole purpose of these dependency tags is
to avoid commits to be garbage collected.
- ``acsoo tag`` now invokes ``tag_requirements``. In most cases however this
will not place additional tags on dependencies, because the normal workflow
is to invoke ``tag_requirements`` as soon as ``requirements.txt`` is updated.
- ``tag_requirements`` automatically transforms http(s) urls into ssh urls
for the purpose of pushing tags. This allows to maximize the use of http(s)
urls in requirements so CI and scripts do not require ssh access
to the public dependencies. This currently only works for the acsone organization
on github but the mechanism is easy to extend, should the need arise.