tags: log events related to tags cache

We now log when .hg/cache/tags data is built from scratch by reading
manifests and when the file is written.

--HG--
extra : rebase_source : 02e7121d195510a88c3916466f76c66980d2a771
branchmap: log events related to branch cache

The blackblox log will now contain log events when the branch caches are
updated and written.

--HG--
extra : rebase_source : b5a922d4cdc34fc96b06a8e9423fabb5cfe5441e
debugrevlog: format columns (more) nicely when dumping index data

--HG--
extra : rebase_source : 9695441f16cd7ea3ff0fb5e201690c530d6f3100
debugrevlog: use unfiltered view for changelog

--HG--
extra : rebase_source : b6b0fd2b1e6b81ad8202cfe3e35b2287ffb7675a
subrepo: return non-zero exit code when a subrepo push doesn't succeed

--HG--
extra : rebase_source : 876cf062b8cca61cdf2816901cad79fe8b2f5455
commit: abolish useless "--force-editor" internal option for "hg commit"

"--force-editor" option for "hg commit" has been useless since
12721a20ed30, which makes "commands.tag()" invoke "cmdutil.commit()"
directly instead of "commands.commit()" with "--force-editor" internal
option.

This patch abolishes useless "--force-editor" internal option for "hg
commit".

--HG--
extra : rebase_source : fa1b9d4c876918ec457ecbb3d1fe01092d2443b0
amend: invoke editor forcibly when "--edit" option is specified

422981492ace introduces "--edit" option into "hg commit", but it
doesn't work for "hg commit --amend", because 422981492ace prepares
for editor invocation only around "commitfunc()" internal function,
which is used only for temporary amend commit by "cmdutil.amend()".

Actual commit message editing is executed in "cmdutil.amend()".

This patch invokes editor forcibly when "--edit" option is specified
for "hg commit --amend", even if commit message is specified
explicitly by "--message" or "--logfile".

This patch also removes useless handling for commit message and editor
invocation around "commitfunc()" internal function.

--HG--
extra : rebase_source : 0b5e57ddd7d95911c34ff0d3afb19359e0b45288
color: add effect to the template symbol table

Previously, words like 'red' had to be protected by quotes before passing to
the label template function. Now, we add color effects to the symbol table so
that commands like,

$ hg log -r . -T "{label(red, node|short)}\n"

can work without the need for quoting.

--HG--
extra : rebase_source : 9622f275ae39c0a9c86b3608e9d3135146a6787c
setup.py: fix C extension compilation issue with OS X 10.9 and Xcode 5.1
tests: mark test in tests/test-help.t as contingent on gettext being available