Wed, 29 Dec 2010 15:31:25 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 29 Dec 2010 15:31:25 -0600] rev 13215
merge with stable
Wed, 29 Dec 2010 15:23:16 -0600 hgweb: abort if config file isn't found stable
Matt Mackall <mpm@selenic.com> [Wed, 29 Dec 2010 15:23:16 -0600] rev 13214
hgweb: abort if config file isn't found
Wed, 29 Dec 2010 14:19:44 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 29 Dec 2010 14:19:44 -0600] rev 13213
merge with stable
Wed, 29 Dec 2010 14:19:31 -0600 date: fix matching of underspecified date ranges stable
Matt Mackall <mpm@selenic.com> [Wed, 29 Dec 2010 14:19:31 -0600] rev 13212
date: fix matching of underspecified date ranges (backport of 91bc001a592f to stable)
Wed, 29 Dec 2010 14:04:47 -0600 date: fix matching of underspecified date ranges
Matt Mackall <mpm@selenic.com> [Wed, 29 Dec 2010 14:04:47 -0600] rev 13211
date: fix matching of underspecified date ranges In a date like 10:30, there are two underspecified ends: the specific end (seconds) and the broad end (day, month, year). When matching "10:30", we need to allow the specific end to go from 0 to 59 seconds, while the broad end is assumed to be today's date. Similar handling applies for a date range like "Mar 1": year is fixed to today, any time matches.
Wed, 29 Dec 2010 11:18:27 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 29 Dec 2010 11:18:27 -0600] rev 13210
merge with stable
Sun, 26 Dec 2010 12:08:20 +0100 test-static-http.t: increase test coverage on filenames
Adrian Buehlmann <adrian@cadifra.com> [Sun, 26 Dec 2010 12:08:20 +0100] rev 13209
test-static-http.t: increase test coverage on filenames Tracked files starting with a period in the name begin with '~2e' in the store for the dotencode repository format, which is encoded as '%7E2e' in URLs when accessing the repo over static-http. The spaces in filenames are encoded with %20 in URLs. See also issue 2566.
Sun, 26 Dec 2010 11:59:07 +0100 test-static-http.t: get kill actually working
Adrian Buehlmann <adrian@cadifra.com> [Sun, 26 Dec 2010 11:59:07 +0100] rev 13208
test-static-http.t: get kill actually working - signal handlers take two arguments, not one - add missing import sys Before this patch, the $ kill $! at the end of the test just caused a hidden traceback, sys.exit(0) was not executed. The swallowed traceback was: Traceback (most recent call last): File "dumb.py", line 10, in <module> run() File "dumb.py", line 7, in run httpd.serve_forever() File "/usr/lib/python2.6/SocketServer.py", line 224, in serve_forever r, w, e = select.select([self], [], [], poll_interval) TypeError: <lambda>() takes exactly 1 argument (2 given)
Fri, 24 Dec 2010 15:22:00 +0100 hooks: sort any dictionaries set in the environment
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Fri, 24 Dec 2010 15:22:00 +0100] rev 13207
hooks: sort any dictionaries set in the environment The actual order of dictionary items is implementation-defined in Python, and differs between CPython and PyPy. With this change, test-hooks.t passes with PyPy.
Mon, 27 Dec 2010 01:12:31 +0100 windows.rename: eliminate temp name race (issue2571) stable
Adrian Buehlmann <adrian@cadifra.com> [Mon, 27 Dec 2010 01:12:31 +0100] rev 13206
windows.rename: eliminate temp name race (issue2571) On Windows, os.rename reliably raises OSError with errno.EEXIST if the destination already exists (even on shares served by Samba). Windows does *not* silently overwrite the destination of a rename. So there is no need to first call os.path.exists on the chosen temp path. Trusting os.path.exists is actually harmful, since using it enables the following racy sequence of actions: 1) os.path.exists(temp) returns False 2) some evil other process creates a file with name temp 3) os.rename(dst, temp) now fails because temp has been taken Not using os.path.exists and directly trying os.rename(dst, temp) eliminates this race.
Tue, 28 Dec 2010 13:31:30 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Tue, 28 Dec 2010 13:31:30 -0600] rev 13205
merge with stable
Mon, 13 Dec 2010 22:38:06 +0100 checknlink: use two testfiles (issue2543) stable
Adrian Buehlmann <adrian@cadifra.com> [Mon, 13 Dec 2010 22:38:06 +0100] rev 13204
checknlink: use two testfiles (issue2543) Preventing file loss repository corruption (e.g. vanished changelog.i) when Mercurial pushes to repositories on Windows shares served by Samba. This is a workaround for Samba bug 7863, which is present in current latest stable Samba 3.5.6 and various prior versions down to 3.0.26a (the oldest one I tested). Of course this should be fixed in Samba, but there probably aren't that many other applications who use hardlinks that extensively and keep files open like Mercurial, so the pressure to fix this on Samba is probably not that high. And even if the Samba project should be able to fix their bug within a month or two, it will take quite some time until users upgrade their Samba installs.
Sun, 19 Dec 2010 21:49:54 -0500 help: correct documentation for branches keyword stable
John Peberdy <john@peberdy.ca> [Sun, 19 Dec 2010 21:49:54 -0500] rev 13203
help: correct documentation for branches keyword
Fri, 24 Dec 2010 01:17:18 +0900 notify: use util.ellipsis() to truncate long subject stable
Yuya Nishihara <yuya@tcha.org> [Fri, 24 Dec 2010 01:17:18 +0900] rev 13202
notify: use util.ellipsis() to truncate long subject
Mon, 20 Dec 2010 16:56:54 +0800 smtp: fix for server doesn't support starttls extension
Zhigang Wang <zhigang.x.wang@oracle.com> [Mon, 20 Dec 2010 16:56:54 +0800] rev 13201
smtp: fix for server doesn't support starttls extension Currently we only support enabling TLS by using SMTP STARTTLS extension. But not all the servers support it. With this patch, user can choose which way to enable TLS: * Default: tls = none port = 25 * To use STARTTLS: tls = starttls port = 465 * To use SMTP over SSL: tls = smtps port = 465 To keep backward compatibility, when tls = true, we use STARTTLS to enable TLS. Signed-off-by: Zhigang Wang <w1z2g3@gmail.com>
Thu, 02 Dec 2010 03:43:06 +0100 avoid .split() in for loops and use tuples instead
David Soria Parra <dsp@php.net> [Thu, 02 Dec 2010 03:43:06 +0100] rev 13200
avoid .split() in for loops and use tuples instead split can be more readable for longer lists like the list in dirstate.invalidate. As dirstate.invalidate is used in wlock() and therefoe used heavily, I think it's worth avoiding a split there too.
Mon, 06 Dec 2010 16:56:06 +0100 hgweb: added revision date to annotate line data
Oli Thissen <oli@tonick.net> [Mon, 06 Dec 2010 16:56:06 +0100] rev 13199
hgweb: added revision date to annotate line data The only revision information yielded by the annotate view was the revision number itself. The patch allows the use of per-line revision dates in the corresponding templates.
Tue, 21 Dec 2010 19:44:28 +0900 patchbomb: save introductory message in .hg/last-email.txt
Nicolas Dumazet <nicdumz.commits@gmail.com> [Tue, 21 Dec 2010 19:44:28 +0900] rev 13198
patchbomb: save introductory message in .hg/last-email.txt
Fri, 17 Dec 2010 12:05:45 +0000 opener: forbid paths ending with directory separator (issue2507)
Jim Hague <jim.hague@acm.org> [Fri, 17 Dec 2010 12:05:45 +0000] rev 13197
opener: forbid paths ending with directory separator (issue2507) If Linux is asked to open a filename with a trailing directory separator, e.g. "foo/", the open fails with EISDIR. On AIX, the open succeeds, opening file "foo". This causes test-mq-qnew to fail on AIX. Fix by adding 'ends with directory separator' to the conditions checked by the path auditor. Change test to expect auditor fail message.
Tue, 21 Dec 2010 15:27:58 -0600 record: clean up command table
Kevin Bullock <kbullock@ringworld.org> [Tue, 21 Dec 2010 15:27:58 -0600] rev 13196
record: clean up command table The --force option to qnew has become a no-op, so qrecord doesn't need to use it. This allows record's command table to be simplified; in the process of doing so, this patch also cleans up the cmdtable visually.
Tue, 21 Dec 2010 15:23:48 -0600 record: clean up comments and docstrings
Kevin Bullock <kbullock@ringworld.org> [Tue, 21 Dec 2010 15:23:48 -0600] rev 13195
record: clean up comments and docstrings Rewrap comments and docstrings to a width of 72 chars and copy-edit.
Tue, 28 Dec 2010 14:53:08 +0100 test-doctest: test url.py again, removed by 7cc4263e07a9
Patrick Mezard <pmezard@gmail.com> [Tue, 28 Dec 2010 14:53:08 +0100] rev 13194
test-doctest: test url.py again, removed by 7cc4263e07a9
Mon, 27 Dec 2010 17:54:45 +0100 merge with stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 27 Dec 2010 17:54:45 +0100] rev 13193
merge with stable
Mon, 27 Dec 2010 17:49:58 +0100 https: use web.cacerts configuration from local repo to validate remote repo stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 27 Dec 2010 17:49:58 +0100] rev 13192
https: use web.cacerts configuration from local repo to validate remote repo
Sun, 26 Dec 2010 00:43:49 +0100 extensions: warn about invalid extensions when listing disabled commands
Mads Kiilerich <mads@kiilerich.com> [Sun, 26 Dec 2010 00:43:49 +0100] rev 13191
extensions: warn about invalid extensions when listing disabled commands Invalid extensions in hgext/ could in some cases cause a crash when searching for unknown commands in disabled extensions. With this change we issue a warning if extracting commands from the extensions fails. Traceback is available on request. Reported on https://bugzilla.redhat.com/show_bug.cgi?id=663183 with forest.py.
Wed, 22 Dec 2010 13:25:00 -0600 convert: subversion should use util.quotecommand to wrap args to popen2
Steve Borho <steve@borho.org> [Wed, 22 Dec 2010 13:25:00 -0600] rev 13190
convert: subversion should use util.quotecommand to wrap args to popen2 All other callers of util.popen2 and util.popen3 do this, as well as direct callers of subprocess.Popen.
Thu, 23 Dec 2010 13:23:20 -0600 merge with stable
Steve Borho <steve@borho.org> [Thu, 23 Dec 2010 13:23:20 -0600] rev 13189
merge with stable
Wed, 22 Dec 2010 13:25:00 -0600 util: concentrate quoting knowledge to windows.py quotecommand() stable
Steve Borho <steve@borho.org> [Wed, 22 Dec 2010 13:25:00 -0600] rev 13188
util: concentrate quoting knowledge to windows.py quotecommand() This fixes all callers of util.quotecommand() and place special knowledge of the bugfix in 2.7.1 in a single platform specific place.
Wed, 22 Dec 2010 13:16:03 -0600 templater: clarify engine caching
Matt Mackall <mpm@selenic.com> [Wed, 22 Dec 2010 13:16:03 -0600] rev 13187
templater: clarify engine caching
Wed, 22 Dec 2010 13:16:00 -0600 merge with crew
Matt Mackall <mpm@selenic.com> [Wed, 22 Dec 2010 13:16:00 -0600] rev 13186
merge with crew
Tue, 21 Dec 2010 19:47:36 +0900 tests: clean up test-rollback.t
Nicolas Dumazet <nicdumz.commits@gmail.com> [Tue, 21 Dec 2010 19:47:36 +0900] rev 13185
tests: clean up test-rollback.t The last comment is on the last file line and is useless, seems like it was introduced in 8fdc11fec6ae during unification.
Mon, 20 Dec 2010 15:27:15 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 20 Dec 2010 15:27:15 -0600] rev 13184
merge with stable
Mon, 20 Dec 2010 15:26:36 -0600 url: fix trailing whitespace stable
Matt Mackall <mpm@selenic.com> [Mon, 20 Dec 2010 15:26:36 -0600] rev 13183
url: fix trailing whitespace
Mon, 20 Dec 2010 13:59:33 -0500 subrepo: basic support for status of git subrepos
Eric Eisner <ede@mit.edu> [Mon, 20 Dec 2010 13:59:33 -0500] rev 13182
subrepo: basic support for status of git subrepos
Mon, 20 Dec 2010 13:59:33 -0500 subrepo: fix subrelpath for git subrepos
Eric Eisner <ede@mit.edu> [Mon, 20 Dec 2010 13:59:33 -0500] rev 13181
subrepo: fix subrelpath for git subrepos This patch conforms gitsubrepo code to the variable naming scheme of the other subrepo implementations. All user-facing path references should be relative to the root repository.
Mon, 20 Dec 2010 13:59:33 -0500 subrepo: fix git archive parsing of directories and symfiles
Eric Eisner <ede@mit.edu> [Mon, 20 Dec 2010 13:59:33 -0500] rev 13180
subrepo: fix git archive parsing of directories and symfiles
Mon, 20 Dec 2010 13:59:33 -0500 subrepo: support ignoreupdate in gitsubrepo's dirty()
Eric Eisner <ede@mit.edu> [Mon, 20 Dec 2010 13:59:33 -0500] rev 13179
subrepo: support ignoreupdate in gitsubrepo's dirty()
Mon, 20 Dec 2010 13:59:19 -0500 subrepo: backout 519ac79d680b
Eric Eisner <ede@mit.edu> [Mon, 20 Dec 2010 13:59:19 -0500] rev 13178
subrepo: backout 519ac79d680b Unfortunately git 1.6 does not support the upstream parameter in for-each-ref.
Mon, 20 Dec 2010 12:12:18 -0600 url: fix check-code whitespace complaint
Matt Mackall <mpm@selenic.com> [Mon, 20 Dec 2010 12:12:18 -0600] rev 13177
url: fix check-code whitespace complaint
Mon, 20 Dec 2010 12:09:00 -0600 templater: use the parser.py parser to extend the templater syntax
Matt Mackall <mpm@selenic.com> [Mon, 20 Dec 2010 12:09:00 -0600] rev 13176
templater: use the parser.py parser to extend the templater syntax
Mon, 20 Dec 2010 12:09:00 -0600 templater: give slightly nicer error for unknown map entries
Matt Mackall <mpm@selenic.com> [Mon, 20 Dec 2010 12:09:00 -0600] rev 13175
templater: give slightly nicer error for unknown map entries
Tue, 07 Dec 2010 22:14:43 -0600 mq: update .hgsubstate if subrepos are clean (issue2499)
Kevin Bullock <kbullock@ringworld.org> [Tue, 07 Dec 2010 22:14:43 -0600] rev 13174
mq: update .hgsubstate if subrepos are clean (issue2499) This patch prevents MQ from creating an inconsistent subrepo state. If the .hgsub file has been changed, and none of the subrepos have uncommitted changes, creating or updating a patch (using qnew, qrefresh, or qrecord) will update .hgsubstate accordingly. If any subrepos _do_ have uncommitted changes, qnew/qrefresh/qrecord will abort. Thanks to pmezard for proposing this solution.
Tue, 07 Dec 2010 22:14:43 -0600 backout f08df4d38442
Kevin Bullock <kbullock@ringworld.org> [Tue, 07 Dec 2010 22:14:43 -0600] rev 13173
backout f08df4d38442
Fri, 17 Dec 2010 13:38:15 +0100 subrepo: backout f02d7a562a21
Erik Zielke <ez@aragost.com> [Fri, 17 Dec 2010 13:38:15 +0100] rev 13172
subrepo: backout f02d7a562a21 backing out f02d7a562a21 because it introduced a bug in .hgsubstate handling.
Mon, 20 Dec 2010 12:08:56 -0600 merge with i18n
Matt Mackall <mpm@selenic.com> [Mon, 20 Dec 2010 12:08:56 -0600] rev 13171
merge with i18n
Mon, 20 Dec 2010 12:08:50 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 20 Dec 2010 12:08:50 -0600] rev 13170
merge with stable
Fri, 17 Dec 2010 10:40:26 +0100 fncachestore: copy dh directory before the manifest stable
Adrian Buehlmann <adrian@cadifra.com> [Fri, 17 Dec 2010 10:40:26 +0100] rev 13169
fncachestore: copy dh directory before the manifest Before this patch, the copy order on clone was: requires 00changelog.i store\data store\00manifest.d store\00manifest.i store\00changelog.d store\00changelog.i store\dh store\fncache Which provides a theoretical non-zero probability of a race during clone where a very early reader might see a repository with missing revlog files if it sees 00changelog.i before all files inside dh have been copied. The dh directory is similar to the data directory -- just for files with long names (which are hashed). The manifest refers to files in data *and* dh, so dh should be copied before the manifest. This patch improves the copy order to: requires 00changelog.i store\data store\dh store\fncache store\00manifest.d store\00manifest.i store\00changelog.d store\00changelog.i I'm putting fncache to before the manifest while I'm at it, since fncache provides a mechanism to enumerate all repository files without visiting the manifest revisions. fncache depends only on data and dh. Note that data must be copied first, since copying data triggers the creation of the repository write lock in the destination repo (see hg.clone).
Mon, 20 Dec 2010 12:05:50 -0600 merge with i18n stable
Matt Mackall <mpm@selenic.com> [Mon, 20 Dec 2010 12:05:50 -0600] rev 13168
merge with i18n
Fri, 10 Dec 2010 12:51:37 +0100 i18n: merge with stable
Martin Geisler <mg@aragost.com> [Fri, 10 Dec 2010 12:51:37 +0100] rev 13167
i18n: merge with stable
Fri, 10 Dec 2010 12:48:57 +0100 i18n-da: synchronize with 5dac0d04b838 stable
Martin Geisler <mg@aragost.com> [Fri, 10 Dec 2010 12:48:57 +0100] rev 13166
i18n-da: synchronize with 5dac0d04b838
Sat, 04 Dec 2010 19:28:15 +0100 i18n-de: translated strings for the purge extension stable
Arne Babenhauserheide <arne@draketo.de> [Sat, 04 Dec 2010 19:28:15 +0100] rev 13165
i18n-de: translated strings for the purge extension
Sat, 18 Dec 2010 22:06:11 +0100 merge with stable
Mads Kiilerich <mads@kiilerich.com> [Sat, 18 Dec 2010 22:06:11 +0100] rev 13164
merge with stable
Sat, 18 Dec 2010 21:58:52 +0100 https: warn when server certificate isn't verified stable
Mads Kiilerich <mads@kiilerich.com> [Sat, 18 Dec 2010 21:58:52 +0100] rev 13163
https: warn when server certificate isn't verified Mercurial will verify HTTPS server certificates if web.cacerts is configured, but it will by default silently not verify any certificates. We now warn the user that when the certificate isn't verified she won't get the security she might expect from https: warning: localhost certificate not verified (check web.cacerts config setting) Self-signed certificates can be accepted silently by configuring web.cacerts to point to a suitable certificate file.
Mon, 13 Dec 2010 11:46:31 -0500 merge: document some internal return values.
Greg Ward <greg-hg@gerg.ca> [Mon, 13 Dec 2010 11:46:31 -0500] rev 13162
merge: document some internal return values.
Thu, 16 Dec 2010 14:50:37 -0600 check-code: catch os.path.relpath
Matt Mackall <mpm@selenic.com> [Thu, 16 Dec 2010 14:50:37 -0600] rev 13161
check-code: catch os.path.relpath
Thu, 16 Dec 2010 14:50:36 -0600 check-code: catch "except as"
Matt Mackall <mpm@selenic.com> [Thu, 16 Dec 2010 14:50:36 -0600] rev 13160
check-code: catch "except as"
Thu, 16 Dec 2010 14:50:27 -0600 tests: eliminate fast-forward merge in test-tag
Matt Mackall <mpm@selenic.com> [Thu, 16 Dec 2010 14:50:27 -0600] rev 13159
tests: eliminate fast-forward merge in test-tag
Tue, 07 Dec 2010 03:29:21 +0100 merge: fast-forward merge with descendant
Mads Kiilerich <mads@kiilerich.com> [Tue, 07 Dec 2010 03:29:21 +0100] rev 13158
merge: fast-forward merge with descendant issue2538 gives a case where a changeset is merged with its child (which is on another branch), and to my surprise the result is a real merge with two parents, not just a "fast forward" "merge" with only the child as parent. That is essentially the same as issue619. Is the existing behaviour as intended and correct? Or is the following fix correct? Some extra "created new head" pops up with this fix, but it seems to me like they could be considered correct. The old branch head has been superseeded by changes on the other branch, and when the changes on the other branch is merged back to the branch it will introduce a new head not directly related to the previous branch head. (I guess the intention with existing behaviour could be to ensure that the changesets on the branch are directly connected and that no new heads pops up on merges.)
Wed, 08 Dec 2010 22:14:18 -0600 record: teach parsepatch() about non-git style headers
Steve Borho <steve@borho.org> [Wed, 08 Dec 2010 22:14:18 -0600] rev 13157
record: teach parsepatch() about non-git style headers These changes are not useful to record itself, since it is hard coded to always generate git style diffs. But it makes parsepatch() more generally useful for parsing normal patch files.
Mon, 13 Dec 2010 10:30:15 -0500 template: add showbranch template for {branch}
Eric Eisner <ede@mit.edu> [Mon, 13 Dec 2010 10:30:15 -0500] rev 13156
template: add showbranch template for {branch} Like showbranches, but always yields exactly one branch. Replaces the less correct {branches|nonempty}.
(0) -10000 -3000 -1000 -300 -100 -60 +60 +100 +300 +1000 +3000 +10000 +30000 tip