merge with i18n stable 2.5.1
authorMatt Mackall <mpm@selenic.com>
Fri, 08 Feb 2013 22:58:58 +0000
branchstable
changeset 18578 7511d4df752e
parent 18568 cd403d6d96ef (diff)
parent 18577 0e7b072d58ed (current diff)
child 18579 34c021d8dff6
merge with i18n
--- a/contrib/hgk	Tue Feb 05 22:02:11 2013 +0100
+++ b/contrib/hgk	Fri Feb 08 22:58:58 2013 +0000
@@ -109,7 +109,12 @@
 # end of win32 section
 } else {
 
-if {[ttk::style theme use] eq "default"} {
+if {[catch {
+    set theme [ttk::style theme use]
+}]} {
+    set theme $::ttk::currentTheme
+}
+if {$theme eq "default"} {
     ttk::style theme use clam
 }
 
--- a/mercurial/bundlerepo.py	Tue Feb 05 22:02:11 2013 +0100
+++ b/mercurial/bundlerepo.py	Fri Feb 08 22:58:58 2013 +0000
@@ -367,6 +367,11 @@
             localrepo = bundlerepo = bundlerepository(ui, repo.root, fname)
             # this repo contains local and other now, so filter out local again
             common = repo.heads()
+    if localrepo:
+        # Part of common may be remotely filtered
+        # So use an unfiltered version
+        # The discovery process probably need cleanup to avoid that
+        localrepo = localrepo.unfiltered()
 
     csets = localrepo.changelog.findmissing(common, rheads)
 
--- a/mercurial/hgweb/webcommands.py	Tue Feb 05 22:02:11 2013 +0100
+++ b/mercurial/hgweb/webcommands.py	Fri Feb 08 22:58:58 2013 +0000
@@ -497,8 +497,8 @@
 
     def bookmarks(**map):
         parity = paritygen(web.stripecount)
-        b = web.repo._bookmarks.items()
-        for k, n in sorted(b)[:10]:  # limit to 10 bookmarks
+        marks = [b for b in web.repo._bookmarks.items() if b[1] in web.repo]
+        for k, n in sorted(marks)[:10]:  # limit to 10 bookmarks
             yield {'parity': parity.next(),
                    'bookmark': k,
                    'date': web.repo[n].date(),
@@ -518,7 +518,10 @@
     def changelist(**map):
         parity = paritygen(web.stripecount, offset=start - end)
         l = [] # build a list in forward order for efficiency
-        for i in xrange(start, end):
+        revs = []
+        if start < end:
+            revs = web.repo.changelog.revs(start, end - 1)
+        for i in revs:
             ctx = web.repo[i]
             n = ctx.node()
             hn = hex(n)
--- a/tests/test-hgweb-commands.t	Tue Feb 05 22:02:11 2013 +0100
+++ b/tests/test-hgweb-commands.t	Fri Feb 08 22:58:58 2013 +0000
@@ -1399,6 +1399,14 @@
   $ grep Status search
   Status: 200 Script output follows\r (esc)
 
+summary works with filtering (issue3810)
+
+  $ PATH_INFO=/summary; export PATH_INFO
+  $ QUERY_STRING='style=monoblue'; export QUERY_STRING
+  $ python hgweb.cgi > summary.out
+  $ grep "^Status" summary.out
+  Status: 200 Script output follows\r (esc)
+
 proper status for filtered revision
 
 
--- a/tests/test-obsolete.t	Tue Feb 05 22:02:11 2013 +0100
+++ b/tests/test-obsolete.t	Fri Feb 08 22:58:58 2013 +0000
@@ -776,4 +776,92 @@
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     add celestine
   
+
+reenable for later test
+
+  $ echo '[extensions]' >> $HGRCPATH
+  $ echo "obs=${TESTTMP}/obs.py" >> $HGRCPATH
+
 #endif
+
+Test incoming/outcoming with changesets obsoleted remotely, known locally
+===============================================================================
+
+This test issue 3805
+
+  $ hg init repo-issue3805
+  $ cd repo-issue3805
+  $ echo "foo" > foo
+  $ hg ci -Am "A"
+  adding foo
+  $ hg clone . ../other-issue3805
+  updating to branch default
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  $ echo "bar" >> foo
+  $ hg ci --amend
+  $ cd ../other-issue3805
+  $ hg log -G
+  @  changeset:   0:193e9254ce7e
+     tag:         tip
+     user:        test
+     date:        Thu Jan 01 00:00:00 1970 +0000
+     summary:     A
+  
+  $ hg log -G -R ../repo-issue3805
+  @  changeset:   2:3816541e5485
+     tag:         tip
+     parent:      -1:000000000000
+     user:        test
+     date:        Thu Jan 01 00:00:00 1970 +0000
+     summary:     A
+  
+  $ hg incoming
+  comparing with $TESTTMP/tmpe/repo-issue3805
+  searching for changes
+  changeset:   2:3816541e5485
+  tag:         tip
+  parent:      -1:000000000000
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     A
+  
+  $ hg incoming --bundle ../issue3805.hg
+  comparing with $TESTTMP/tmpe/repo-issue3805
+  searching for changes
+  changeset:   2:3816541e5485
+  tag:         tip
+  parent:      -1:000000000000
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     A
+  
+  $ hg outgoing
+  comparing with $TESTTMP/tmpe/repo-issue3805
+  searching for changes
+  no changes found
+  [1]
+
+#if serve
+
+  $ hg serve -R ../repo-issue3805 -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
+  $ cat hg.pid >> $DAEMON_PIDS
+
+  $ hg incoming http://localhost:$HGPORT
+  comparing with http://localhost:$HGPORT/
+  searching for changes
+  changeset:   1:3816541e5485
+  tag:         tip
+  parent:      -1:000000000000
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     A
+  
+  $ hg outgoing http://localhost:$HGPORT
+  comparing with http://localhost:$HGPORT/
+  searching for changes
+  no changes found
+  [1]
+
+  $ "$TESTDIR/killdaemons.py" $DAEMON_PIDS
+
+#endif
--- a/tests/test-subrepo.t	Tue Feb 05 22:02:11 2013 +0100
+++ b/tests/test-subrepo.t	Fri Feb 08 22:58:58 2013 +0000
@@ -1078,7 +1078,7 @@
   > default=../issue3781-dest/
   > EOF
   $ hg push
-  pushing to $TESTTMP/issue3781-dest
+  pushing to $TESTTMP/issue3781-dest (glob)
   pushing subrepo s to $TESTTMP/issue3781-dest/s
   searching for changes
   no changes found