util.h: declare dirstateTupleType variable instead of defining it

The definition is already in parsers.c

This patch avoids, at least on Mac OS X 10.6.8, build issue since e250b8300e6e
Merge with stable.
Merge with crew.
memctx: explicitly set substate to None

In d2743be1bb06, memctx was changed to inherit from committablectx, this in
turn added the 'substate' property to memctx. It turns out that the
newcommitphase method tested for this property:

  def newcommitphase(ui, ctx):
      commitphase = phases.newcommitphase(ui)
      substate = getattr(ctx, "substate", None)
      if not substate:
          return commitphase

Currently, memctx isn't ready to handle substates, nor removed files, so we
explicitly must set substate=None to get the old behavior back. In the future,
we can decide how memctx should play with substate. For now, this fixes
third-party extensions and some internal code dealing with subrepos.
committablectx: move __contains__ into workingctx

This was mistakenly moved from workingctx to committablectx in
9d56a3359011. Since the method is querying the dirstate, the only logical place
is for it to reside is in workingctx.

--HG--
extra : rebase_source : d8369147772d092a35777c06a0157ba561026c3c
templater: introduce word function

This function allows returning only the nth "word" from a string. By default
a string is split as by Python's split() function default, but an optional
third parameter can also override what string the string is split by.

--HG--
extra : rebase_source : 1f87655627d3268c2141cb285d946f61136e78a2
strip: remove bookmarks after strip succeed (issue4295)

In case we have revs to strip, delete the bookmark after the strip succeeds, not
beforehand as we might still abort due to dirty working directory, etc.

--HG--
extra : rebase_source : 3278818912ea64cdc206a686688da692921ce6e1
version: show enabled extensions (issue4209)

This code is based by hg-versions extension (GPLv2)
by Markus Zapke-Gruendemann <info@keimlink.de>


http://mercurial.selenic.com/wiki/VersionsExtension

--HG--
extra : rebase_source : 48e26de917f3eec886e83b95fbf400f219e9ecfe
setup: fixed for Pythons which don't have a CFLAGS

Specifically this is observed to happen on the PyPy one gets from homebrew

--HG--
branch : stable
extra : amend_source : d8bd2e6b6e80498ac2ccfe57980a4744bde50913
bugzilla: correct config documentation error

The config documentation specifies the wrong access method in the XMLRPC+email
configuration.

--HG--
branch : stable
extra : rebase_source : 3110f5f4f94a27034d0eed98589bbfdf5d44fbe8
bookmarks: avoid deleting primary bookmarks on rebase

Prior to this, doing "hg rebase -s @foo -d @" would delete @, which is
obviously wrong: a primary bookmark should never be automatically deleted.

This change blocks the deletion, but doesn't yet properly clean up the
divergence: @ should replace @foo.

--HG--
branch : stable
test-extension: add check for 'hg version -v' listing enabled extensions

--HG--
extra : rebase_source : 5b8d2ba8dbdf8ef2aac257d28002ad1bcc4920f9
merge with stable

--HG--
extra : amend_source : 2eeff6c6b7ca892a00122fc44460b0a8cb1c39bc