D11956: exchange: add fast path for subrepo check on push

2022-01-02 Thread joerg.sonnenberger (Joerg Sonnenberger)
joerg.sonnenberger created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  Try to check if .hgsub and .hgsubstate exist at all before looking
  for them in every changeset to be pushed. The latter can be quite
  expensive for large repositories and the existance check is almost free.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D11956

AFFECTED FILES
  mercurial/exchange.py

CHANGE DETAILS

diff --git a/mercurial/exchange.py b/mercurial/exchange.py
--- a/mercurial/exchange.py
+++ b/mercurial/exchange.py
@@ -522,8 +522,21 @@
 
 def _checksubrepostate(pushop):
 """Ensure all outgoing referenced subrepo revisions are present locally"""
+
+repo = pushop.repo
+
+# If the repository does not use subrepos, skip the expensive
+# manifest checks.
+try:
+if not len(repo.file(b'.hgsub')) or not len(repo.file(b'.hgsubstate')):
+return
+except RuntimeError:
+# Alternative filelog implementations might not implement this,
+# so just fallback to the generic implementation.
+pass
+
 for n in pushop.outgoing.missing:
-ctx = pushop.repo[n]
+ctx = repo[n]
 
 if b'.hgsub' in ctx.manifest() and b'.hgsubstate' in ctx.files():
 for subpath in sorted(ctx.substate):



To: joerg.sonnenberger, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


bugzilla weekly report (2022-01-03)

2022-01-02 Thread Octobot
Bug activity report, between 2021-12-27 and 2022-01-03
 * urgent+: 4 bugs
 * unconfirmed: 78 bugs (1 added)
 * new: 1 bugs
 * closed: 4 bugs
 * need example: 0 bugs
 * new details: 0 bugs
 * active: 19 bugs
 * long inactive: 3 bugs

urgent+
---

Open of urgent or critical bugs.
Found 4 bugs with our query.

 id  summary
--- 
(#6219) mercurial can generate incomplete bundle, corrupting the reposit
(#6220) [hg/python3] pre-tag hook can't fixup arguments anymore 
(#6536) test-chg.t is flaky 
(#6537) frequent time-out during `test-py2-chg` CI  

unconfirmed
---

Bugs with status 'unconfirmed'.
Found 78 bugs with our query (1 added).

 id  summary
--- 
(#5836) import of a git patch containing 'From' in the commit message co
(#6049) `hg split` fails on long paths  
(#6075) explicit GC on every request make repositories with thousands of
(#6212) monoblue: many help pages illegible due to layout problems  
(#6309) Exception while pushing 
(#6337) Raising Abort from hook running server-side breaks protocol if m
(#6340) Occasional "IndexError: revlog out of range" on amends  
(#6345) Rebasing adds unrelated file changes
(#6348) Occasional "depthcache must be warmed before use" errors on push
(#6355) Comparision with None problem in mercurial.obsolete 
(#6377) hg split failure
(#6386) metaedit should trigger evolve --all
(#6387) topic - merge - rebase  
(#6397) Th prompt 'password:' is written to STDERR stream.  
(#6402) test-stdio.py flakiness 
(#6406) Picking a commit with a topic to a wdir without a topic neither 
(#6408) hggit incoming: 'overlaymanifestlog' object has no attribute '_r
(#6414) In-memory rebase does not reactivate bookmark after falling back
(#6417) --per-file does not work when only one file has changed 
(#6420) need ability to use non-native eols in work-files, besides nativ
(#6421) Missing but unneeded merge-tool entries too noisy even for verbo
(#6433) duplicated output for `hg next` when ambiguous changesets   
(#6435) In memory rebase drops the topic
(#6441) Rename topics more easily   
(#6442) prune: add -t --topic   
(#6453) Unknown exception on execute the command "hg pull -u"   
(#6454) Rebase w/ dirty wdir + in-memory merge can lead to data loss
(#6457) Integrity Check Failed  
(#6462) Add support for lightweight, unversioned tags   
(#6463) hg commit --amend crashes if committemplate contains "{revset(..
(#6464) largefiles.usercache configuration option is not documented 
(#6465) Provide option to not use largefiles usercache  
(#6467) purge remove files following directory junctions, included desti
(#6468) test-sqlitestore.t is flaky 
(#6470) test-wireproto-exchangev2-shallow.t is flaky
(#6473) __index__.py is generated with str instead of bytes 
(#6474) narrow extention loose it`s page
(#6490) hgweb error on /archive/ without node   
(#6491) Repository in a state where files are erroneously identified as 
(#6495) utf-8 encoding error in hg log --style changelog
(#6497) RFE: hg which command, that identifies where a subcommand is def
(#6498) [evolve] user/username confusion
(#6501) Rebase switches parent order of merge   
(#6502) Hg archive download in a slow manner.   
(#6507) share can't work with repo at samba-path
(#6509) Mercurial rust extensions crash 
(#6511) git repo stuck in an ODB type mismatch state
(#6522) strip seems to confuse commandserver about where topics are appl
(#6525) push with local subrepo infer subrepo content to remote-repo
(#6527) Incorrect error message shown when aborting a merge with an ongo
(#6531) Working directory has uncommitted changes after merge   
(#6534) Crash on hg rebase  
(#6535) hg prints nothing in win8 cmd console   
(#6539) possible dirstate corruption combining commit and revert -ri
(#6543) Does 123.hp.com/setup site provide authentic guides 

[Bug 6628] New: test-run-tests fails with pygments 2.11.1

2022-01-02 Thread mercurial-bugs
https://bz.mercurial-scm.org/show_bug.cgi?id=6628

Bug ID: 6628
   Summary: test-run-tests fails with pygments 2.11.1
   Product: Mercurial
   Version: unspecified
  Hardware: PC
OS: Linux
Status: UNCONFIRMED
  Severity: bug
  Priority: wish
 Component: Mercurial
  Assignee: bugzi...@mercurial-scm.org
  Reporter: cedric.kr...@b2ck.com
CC: mercurial-devel@mercurial-scm.org
Python Version: ---

The output is different with this version of the library
(https://bugs.gentoo.org/830430):

---
/var/tmp/portage/dev-vcs/mercurial-6.0/work/mercurial-6.0/tests/test-run-tests.t
+++
/var/tmp/portage/dev-vcs/mercurial-6.0/work/mercurial-6.0/tests/test-run-tests.t.err
@@ -176,14 +176,14 @@
   running 1 tests using 1 parallel processes 

   \x1b[38;5;124m--- $TESTTMP/test-failure.t\x1b[39m (esc)
-  \x1b[38;5;34m+++ $TESTTMP/test-failure.t.err\x1b[39m (esc)
+  \x1b[38;5;28m+++ $TESTTMP/test-failure.t.err\x1b[39m (esc)
   \x1b[38;5;90;01m@@ -1,4 +1,4 @@\x1b[39;00m (esc)
- $ echo "bar-baz"; echo "bar-bad"; echo foo
-  \x1b[38;5;34m+  bar*baz (glob)\x1b[39m (esc)
- bar*bad (glob)
+  \x1b[38;5;250m \x1b[39m  $ echo "bar-baz"; echo "bar-bad"; echo foo (esc)
+  \x1b[38;5;28m+  bar*baz (glob)\x1b[39m (esc)
+  \x1b[38;5;250m \x1b[39m  bar*bad (glob) (esc)
   \x1b[38;5;124m-  bar*baz (glob)\x1b[39m (esc)
   \x1b[38;5;124m-  | fo (re)\x1b[39m (esc)
-  \x1b[38;5;34m+  foo\x1b[39m (esc)
+  \x1b[38;5;28m+  foo\x1b[39m (esc)

   \x1b[38;5;88mERROR: \x1b[39m\x1b[38;5;9mtest-failure.t\x1b[39m\x1b[38;5;88m
output changed\x1b[39m (esc)
   !

ERROR: test-run-tests.t output changed

-- 
You are receiving this mail because:
You are on the CC list for the bug.
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel