# HG changeset patch # User Chris Mason # Date 1144541446 14400 # Node ID 345107e167a05b972682d07234900c5172552f85 # Parent 856f0ba200bc59c05e304cc1aca2865e0e831870# Parent c0b945c5df0872bc07a33f2acf0b001a03bc58f9 merge 0.8.1 with revlogng diff -r 856f0ba200bc -r 345107e167a0 .hgtags --- a/.hgtags Sat Apr 08 20:08:06 2006 -0400 +++ b/.hgtags Sat Apr 08 20:10:46 2006 -0400 @@ -9,3 +9,4 @@ eac9c8efcd9bd8244e72fb6821f769f450457a32 0.6c 979c049974485125e1f9357f6bbe9c1b548a64c3 0.7 3a56574f329a368d645853e0f9e09472aee62349 0.8 +6a03cff2b0f5d30281e6addefe96b993582f2eac 0.8.1 diff -r 856f0ba200bc -r 345107e167a0 hgext/mq.py --- a/hgext/mq.py Sat Apr 08 20:08:06 2006 -0400 +++ b/hgext/mq.py Sat Apr 08 20:10:46 2006 -0400 @@ -14,6 +14,7 @@ repomap = {} +commands.norepo += " qversion" class queue: def __init__(self, ui, path, patchdir=None): self.basepath = path diff -r 856f0ba200bc -r 345107e167a0 hgmerge --- a/hgmerge Sat Apr 08 20:08:06 2006 -0400 +++ b/hgmerge Sat Apr 08 20:10:46 2006 -0400 @@ -47,6 +47,11 @@ type "$TKDIFF" >/dev/null 2>&1 || TKDIFF= type "$MELD" >/dev/null 2>&1 || MELD= +# Hack for Solaris +TEST="/usr/bin/test" +type "$TEST" >/dev/null 2>&1 || TEST="/bin/test" +type "$TEST" >/dev/null 2>&1 || TEST="test" + # random part of names RAND="$RANDOM$RANDOM" @@ -118,7 +123,7 @@ # filemerge prefers the right by default $FILEMERGE -left "$OTHER" -right "$LOCAL" -ancestor "$BASE" -merge "$LOCAL" [ $? -ne 0 ] && echo "FileMerge failed to launch" && failure - test "$LOCAL" -nt "$CHGTEST" && success || ask_if_merged + $TEST "$LOCAL" -nt "$CHGTEST" && success || ask_if_merged fi if [ -n "$DISPLAY" ]; then @@ -142,7 +147,7 @@ # use the file with conflicts $MELD "$LOCAL.tmp.$RAND" "$LOCAL" "$OTHER" || failure # Also it doesn't return good error code - test "$LOCAL" -nt "$CHGTEST" && success || ask_if_merged + $TEST "$LOCAL" -nt "$CHGTEST" && success || ask_if_merged fi fi @@ -153,7 +158,7 @@ $EDITOR "$LOCAL" || failure # Some editors do not return meaningful error codes # Do not take any chances - test "$LOCAL" -nt "$CHGTEST" && success || ask_if_merged + $TEST "$LOCAL" -nt "$CHGTEST" && success || ask_if_merged fi # attempt to manually merge with diff and patch @@ -170,7 +175,7 @@ else # If rejects are empty after using the editor, merge was ok $EDITOR "$LOCAL" "$LOCAL.rej" || failure - test -s "$LOCAL.rej" || success + $TEST -s "$LOCAL.rej" || success fi failure fi diff -r 856f0ba200bc -r 345107e167a0 mercurial/commands.py --- a/mercurial/commands.py Sat Apr 08 20:08:06 2006 -0400 +++ b/mercurial/commands.py Sat Apr 08 20:10:46 2006 -0400 @@ -2390,7 +2390,7 @@ # make backup if in target manifest # make backup if not in target manifest (modified, revert, remove, True, True), - (added, revert, forget, True, True), + (added, revert, forget, True, False), (removed, undelete, None, False, False), (deleted, revert, remove, False, False), (unknown, add, None, True, False), @@ -2757,7 +2757,9 @@ This command is not intended for use on public repositories. Once a change is visible for pull by other users, undoing it locally is - ineffective. + ineffective. Furthemore a race is possible with readers of the + repository, for example an ongoing pull from the repository will + fail and rollback. """ repo.undo() @@ -2992,12 +2994,10 @@ _('hg log [OPTION]... [FILE]')), "manifest": (manifest, [], _('hg manifest [REV]')), "merge": - (merge, - [('b', 'branch', '', _('merge with head of a specific branch')), - ('', 'style', '', _('display using template map file')), - ('f', 'force', None, _('force a merge with outstanding changes')), - ('', 'template', '', _('display with template'))], - _('hg merge [-b TAG] [-f] [REV]')), + (merge, + [('b', 'branch', '', _('merge with head of a specific branch')), + ('f', 'force', None, _('force a merge with outstanding changes'))], + _('hg merge [-b TAG] [-f] [REV]')), "outgoing|out": (outgoing, [('M', 'no-merges', None, _('do not show merges')), ('f', 'force', None, @@ -3123,11 +3123,9 @@ "^update|up|checkout|co": (update, [('b', 'branch', '', _('checkout the head of a specific branch')), - ('', 'style', '', _('display using template map file')), ('m', 'merge', None, _('allow merging of branches')), ('C', 'clean', None, _('overwrite locally modified files')), - ('f', 'force', None, _('force a merge with outstanding changes')), - ('', 'template', '', _('display with template'))], + ('f', 'force', None, _('force a merge with outstanding changes'))], _('hg update [-b TAG] [-m] [-C] [-f] [REV]')), "verify": (verify, [], _('hg verify')), "version": (show_version, [], _('hg version')), @@ -3157,22 +3155,26 @@ def findpossible(cmd): """ Return cmd -> (aliases, command table entry) - for each matching command + for each matching command. + Return debug commands (or their aliases) only if no normal command matches. """ choice = {} debugchoice = {} for e in table.keys(): aliases = e.lstrip("^").split("|") + found = None if cmd in aliases: - choice[cmd] = (aliases, table[e]) - continue - for a in aliases: - if a.startswith(cmd): - if aliases[0].startswith("debug"): - debugchoice[a] = (aliases, table[e]) - else: - choice[a] = (aliases, table[e]) - break + found = cmd + else: + for a in aliases: + if a.startswith(cmd): + found = a + break + if found is not None: + if aliases[0].startswith("debug"): + debugchoice[found] = (aliases, table[e]) + else: + choice[found] = (aliases, table[e]) if not choice and debugchoice: choice = debugchoice diff -r 856f0ba200bc -r 345107e167a0 mercurial/mpatch.c --- a/mercurial/mpatch.c Sat Apr 08 20:08:06 2006 -0400 +++ b/mercurial/mpatch.c Sat Apr 08 20:10:46 2006 -0400 @@ -61,12 +61,12 @@ a = (struct flist *)malloc(sizeof(struct flist)); if (a) { a->base = (struct frag *)malloc(sizeof(struct frag) * size); - if (!a->base) { - free(a); - a = NULL; - } else + if (a->base) { a->head = a->tail = a->base; - return a; + return a; + } + free(a); + a = NULL; } if (!PyErr_Occurred()) PyErr_NoMemory(); diff -r 856f0ba200bc -r 345107e167a0 mercurial/sshrepo.py --- a/mercurial/sshrepo.py Sat Apr 08 20:08:06 2006 -0400 +++ b/mercurial/sshrepo.py Sat Apr 08 20:10:46 2006 -0400 @@ -40,19 +40,19 @@ r = self.do_cmd("between", pairs=("%s-%s" % ("0"*40, "0"*40))) l1 = "" l2 = "dummy" - max_noise = 100 + max_noise = 500 while l2 and max_noise: l2 = r.readline() self.readerr() if l1 == "1\n" and l2 == "\n": break if l1: - ui.status(_("remote: %s") % l1) + ui.debug(_("remote: "), l1) l1 = l2 max_noise -= 1 else: if l1: - ui.status(_("remote: %s") % l1) + ui.debug(_("remote: "), l1) raise hg.RepoError(_("no response from remote hg")) def readerr(self): diff -r 856f0ba200bc -r 345107e167a0 mercurial/util.py --- a/mercurial/util.py Sat Apr 08 20:08:06 2006 -0400 +++ b/mercurial/util.py Sat Apr 08 20:10:46 2006 -0400 @@ -393,7 +393,7 @@ if hardlink: try: os_link(src, dst) - except: + except (IOError, OSError): hardlink = False shutil.copy(src, dst) else: diff -r 856f0ba200bc -r 345107e167a0 tests/test-confused-revert.out --- a/tests/test-confused-revert.out Sat Apr 08 20:08:06 2006 -0400 +++ b/tests/test-confused-revert.out Sat Apr 08 20:10:46 2006 -0400 @@ -6,19 +6,16 @@ forgetting b %%% should show b unknown and a back to normal ? b -? b.orig merging a %%% should show foo-b foo-b %%% should show a removed and b added A b R a -? b.orig reverting... undeleting a forgetting b %%% should show b unknown and a marked modified (merged) ? b -? b.orig %%% should show foo-b foo-b diff -r 856f0ba200bc -r 345107e167a0 tests/test-revert --- a/tests/test-revert Sat Apr 08 20:08:06 2006 -0400 +++ b/tests/test-revert Sat Apr 08 20:10:46 2006 -0400 @@ -22,12 +22,12 @@ echo %% should show b added, copy saved, and c modified hg status hg revert b -echo %% should show b unknown, b.orig unknown, and c modified +echo %% should show b unknown, and c modified hg status hg revert --no-backup c -echo %% should show unknown: b b.orig +echo %% should show unknown: b hg status -echo %% should show a b b.orig c e +echo %% should show a b c e ls echo %% should verbosely save backup to e.orig echo z > e diff -r 856f0ba200bc -r 345107e167a0 tests/test-revert.out --- a/tests/test-revert.out Sat Apr 08 20:08:06 2006 -0400 +++ b/tests/test-revert.out Sat Apr 08 20:10:46 2006 -0400 @@ -13,17 +13,14 @@ %% should show b added, copy saved, and c modified M c A b -%% should show b unknown, b.orig unknown, and c modified +%% should show b unknown, and c modified M c ? b -? b.orig -%% should show unknown: b b.orig +%% should show unknown: b ? b -? b.orig -%% should show a b b.orig c e +%% should show a b c e a b -b.orig c e %% should verbosely save backup to e.orig @@ -40,7 +37,6 @@ notfound: No such file in rev 095eacd0c0d7 A z ? b -? b.orig ? e.orig %% should add a, forget z adding a