merge with i18n stable 4.1.1
authorAugie Fackler <raf@durin42.com>
Thu, 02 Mar 2017 20:07:35 -0500
branchstable
changeset 31137 25703b624d27
parent 31118 a91c62752d08 (diff)
parent 31136 899dca48531b (current diff)
child 31138 0c57328af1bf
merge with i18n
--- a/mercurial/worker.py	Thu Mar 02 11:08:20 2017 -0300
+++ b/mercurial/worker.py	Thu Mar 02 20:07:35 2017 -0500
@@ -148,12 +148,16 @@
             # may do some clean-ups which could cause surprises like deadlock.
             # see sshpeer.cleanup for example.
             try:
-                scmutil.callcatch(ui, workerfunc)
+                try:
+                    scmutil.callcatch(ui, workerfunc)
+                finally:
+                    ui.flush()
             except KeyboardInterrupt:
                 os._exit(255)
             except: # never return, therefore no re-raises
                 try:
                     ui.traceback()
+                    ui.flush()
                 finally:
                     os._exit(255)
             else:
--- a/tests/test-simple-update.t	Thu Mar 02 11:08:20 2017 -0300
+++ b/tests/test-simple-update.t	Thu Mar 02 20:07:35 2017 -0500
@@ -56,3 +56,38 @@
   [255]
 
   $ cd ..
+
+update with worker processes
+
+#if no-windows
+
+  $ cat <<EOF > forceworker.py
+  > from mercurial import extensions, worker
+  > def nocost(orig, ui, costperop, nops):
+  >     return worker._numworkers(ui) > 1
+  > def uisetup(ui):
+  >     extensions.wrapfunction(worker, 'worthwhile', nocost)
+  > EOF
+
+  $ hg init worker
+  $ cd worker
+  $ cat <<EOF >> .hg/hgrc
+  > [extensions]
+  > forceworker = $TESTTMP/forceworker.py
+  > [worker]
+  > numcpus = 4
+  > EOF
+  $ for i in `python $TESTDIR/seq.py 1 100`; do
+  >   echo $i > $i
+  > done
+  $ hg ci -qAm 'add 100 files'
+
+  $ hg update null
+  0 files updated, 0 files merged, 100 files removed, 0 files unresolved
+  $ hg update -v | grep 100
+  getting 100
+  100 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+  $ cd ..
+
+#endif