dummyssh: fix check-code nit

--HG--
extra : histedit_source : 35fd1c218909425328e9f0b9da586a281ee43167
tests: check-code more python files without py extension

files found by running
  $ hg manifest | grep -v "\." | xargs file | grep python

--HG--
extra : histedit_source : 6a1245385b1a15d16ba1899552488c0e42a49278
cleanup: remove unused imports

detected by pyflakes

--HG--
extra : rebase_source : f141741bc454ee8d86dfedbf7538d149bc442a75
contrib: delete setup3k in favor of setup --c2to3

setup3k was merged into setup in 7a7a1c594d. Now finally get rid of it.

--HG--
extra : rebase_source : d9b8c7e77f4da5d9334a9322669d0603bae684c9
tests: do not print hgrc in test

This lets test-rebase-cache.t pass also when --inotify or --extra-config-opt is
specified.

--HG--
extra : rebase_source : 789622cb74749999848cc13f5c49aa7b0ad804c6
changegroup: fix fastpath during commit

Change 627cd7842e5d dropped the 'revset' variable which kept track of
which changesets were being bundled. Instead, it used "not in
commonset" to decide which changesets were outgoing.. which ran into
trouble when a commit was in progress.

--HG--
extra : rebase_source : b851ae08f25c724e95ed28cd86ae8766da646fe0
revlog: add exception when linkrev == nullrev

When we deployed the latest crew mercurial to our users, a few of them
had issues where a filelog would have an entry with a -1 linkrev. This
caused operations like rebase and amend to create a bundle containing the
entire repository, which took a long time.

I don't know what the issue is, but adding this check should prevent repos
from getting in this state, and should help us pinpoint the issue next time
it happens.

--HG--
extra : rebase_source : 4302a69f089ce4a9780aefb94d9203debf4643c3
docs: change description to synopsis in hgrc.5

Spotted by Eric S. Raymond.

--HG--
branch : stable
pathencode: fix hashmangle short dir limit (issue3958)

The Python version of this (see mercurial/store.py:_hashencode) copies path
components up to a limit of maxshortdirslen bytes. The Python version does not
consider the initial "dh/" to be part of the this, though, while the C version
currently does. Adding len("dh/") == 3 to the limit for the C version brings it
in line with the Python version.

This was not caught by the randomized testing scheme in test-pathencode.py
because of a couple of flaws with the test. Upcoming patches will fix those
problems.

--HG--
branch : stable
test-pathencode: reduce makepart length requirement by 1

This allows path components of length 1 to be generated.

--HG--
branch : stable
test-pathencode: randomize length of each path component

This makes it possible for long and short components to exist in the same path.
This also makes shorter path components more likely. For
randint(1, randint(1, n)), the likelihood that one sees a number k
(1 <= k <= n) is 1/n * (\sum_{k=i}^n 1/i). This decreases with k, much like in
the real world where shorter paths are more common than longer ones.

The previous fix and this one together cause issue3958 to be detected by this
test with reasonable frequency. When this test was run 100 times in a loop, the
issue was detected 30 of those times.

--HG--
branch : stable
merge with stable