diff options
author | Anthony Martin <ality@pbrane.org> | 2013-06-04 15:02:28 -0700 |
---|---|---|
committer | Anthony Martin <ality@pbrane.org> | 2013-06-04 15:02:28 -0700 |
commit | da6bbf92ca18ac1d37afd1277d90c7cbc5e2e73f (patch) | |
tree | 92869e55fd0d5f063d759dfe0aeef6d80ea44bb3 /lib | |
parent | c4cec59f45f5ab62b662fb6bbe32fbf610bc6958 (diff) | |
download | go-da6bbf92ca18ac1d37afd1277d90c7cbc5e2e73f.tar.gz |
codereview: don't warn about secret commits
Normally the codereview plugin disables adding new commits
when not using the submit command. Unfortunately this makes
it impossible to use the Mercurial Queues extension at the
same time.
A feature called "Phases" was introduced in Mercurial 2.1
that allows marking commits as being secret; this means
they will never be pushed to the upstream repository.
We can take advantage of this feature to allow the use of
Mercurial Queues if the mq.secret option has been set in
hgrc(5) and a recent version of Mercurial is used.
R=golang-dev, rsc, minux.ma
CC=golang-dev
https://codereview.appspot.com/7398055
Committer: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/codereview/codereview.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/codereview/codereview.py b/lib/codereview/codereview.py index f8edbcde0..6cf99d8a3 100644 --- a/lib/codereview/codereview.py +++ b/lib/codereview/codereview.py @@ -1028,12 +1028,12 @@ def FindContributor(ui, repo, user=None, warn=True): hgversion = hg_util.version() -# We require Mercurial 1.9 and suggest Mercurial 2.0. +# We require Mercurial 1.9 and suggest Mercurial 2.1. # The details of the scmutil package changed then, # so allowing earlier versions would require extra band-aids below. # Ubuntu 11.10 ships with Mercurial 1.9.1 as the default version. hg_required = "1.9" -hg_suggested = "2.0" +hg_suggested = "2.1" old_message = """ @@ -1187,6 +1187,10 @@ def hg_commit(ui, repo, *pats, **opts): commit_okay = False def precommithook(ui, repo, **opts): + if hgversion >= "2.1": + from mercurial import phases + if repo.ui.config('phases', 'new-commit') >= phases.secret: + return False if commit_okay: return False # False means okay. ui.write("\ncodereview extension enabled; use mail, upload, or submit instead of commit\n\n") |