Sun, 10 Feb 2013 04:04:22 -0600 Merge crew and main.
Augie Fackler <raf@durin42.com> [Sun, 10 Feb 2013 04:04:22 -0600] rev 18641
Merge crew and main.
Sat, 09 Feb 2013 15:51:32 -0800 merge: don't fiddle with name lookups or i18n in hot loops
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:51:32 -0800] rev 18640
merge: don't fiddle with name lookups or i18n in hot loops We perform attribute dereferences and i18n lookups before looping.
Sat, 09 Feb 2013 15:51:32 -0800 merge: apply non-interactive working dir updates in parallel
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:51:32 -0800] rev 18639
merge: apply non-interactive working dir updates in parallel This has a big effect on the performance of working dir updates. Here are the results of update from null to the given rev in several repos, on a Linux 3.2 system with 32 cores running ext4, with the progress extension enabled. repo rev plain parallel speedup hg 7068089c95a2 0.9 0.3 3 mozilla-central fe1600b22c77 42.8 7.7 5.5 linux-2.6 9ef4b770e069 31.4 4.9 6.4
Sat, 09 Feb 2013 15:51:32 -0800 worker: allow a function to be run in multiple worker processes
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:51:32 -0800] rev 18638
worker: allow a function to be run in multiple worker processes If we estimate that it will be worth the cost, we run the function in multiple processes. Otherwise, we run it in-process. Children report progress to the parent through a pipe. Not yet implemented on Windows.
Sat, 09 Feb 2013 15:51:32 -0800 worker: partition a list (of tasks) into equal-sized chunks
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:51:32 -0800] rev 18637
worker: partition a list (of tasks) into equal-sized chunks
Sat, 09 Feb 2013 15:51:26 -0800 worker: estimate whether it's worth running a task in parallel
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:51:26 -0800] rev 18636
worker: estimate whether it's worth running a task in parallel Not implemented for Windows yet.
Sat, 09 Feb 2013 15:22:12 -0800 worker: count the number of CPUs
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:22:12 -0800] rev 18635
worker: count the number of CPUs This works on the major platforms, and falls back to a safe guess of 1 elsewhere.
Sat, 09 Feb 2013 15:22:10 -0800 tests: getremove test output changes (fold into previous patch)
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:22:10 -0800] rev 18634
tests: getremove test output changes (fold into previous patch)
Sat, 09 Feb 2013 15:22:09 -0800 merge: report non-interactive progress in chunks
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:22:09 -0800] rev 18633
merge: report non-interactive progress in chunks Instead of a monotonic count, getupdates yields the number of files it has updated since it last reported, and its caller sums the numbers when updating progress. Once we run these updates in parallel, this will allow worker processes to report progress less often, reducing overhead.
Sat, 09 Feb 2013 15:22:08 -0800 merge: handle subrepo merges and .hgsubstate specially
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:22:08 -0800] rev 18632
merge: handle subrepo merges and .hgsubstate specially In an upcoming patch, we will update .hgsubstate in a non-interactive worker process. Merges of subrepo contents will still need to occur in the master process (since they may be interactive), so we move that code into a place where it will always run in what will become the master process.
Sat, 09 Feb 2013 15:22:04 -0800 tests: update test output (will be folded into parent)
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:22:04 -0800] rev 18631
tests: update test output (will be folded into parent)
Sat, 09 Feb 2013 15:21:58 -0800 merge: split out mostly-non-interactive working dir updates
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:21:58 -0800] rev 18630
merge: split out mostly-non-interactive working dir updates In a later patch, we'll run these updates in parallel.
Sat, 09 Feb 2013 11:00:42 +0100 extensions: obsolete and remove interhg extension
Angel Ezquerra <angel.ezquerra@gmail.com> [Sat, 09 Feb 2013 11:00:42 +0100] rev 18629
extensions: obsolete and remove interhg extension With the addition of the websub filter extension this extension is no longer needed. We maintain a sort of backwards compatibility by reading the [interhg] section and using it as we would use the [websub] section.
Sat, 09 Feb 2013 16:48:21 +0100 hgweb: apply the websub filter to revision descriptions
Angel Ezquerra <angel.ezquerra@gmail.com> [Sat, 09 Feb 2013 16:48:21 +0100] rev 18628
hgweb: apply the websub filter to revision descriptions In order to use this, add a [websub] section to your configuration and add websub expressions such as: italic = s/\b_(\S+)_\b/<i>\1<\/i>/ bold = s/\*\b(\S+)\b\*/<b>\1<\/b>/ issues = s|issue(\d+)|<a href="http://bts.example.org/issue\1">issue\1</a>|i bugzilla = s!((?:bug|b=|(?=#?\d{4,}))(?:\s*#?)(\d+))!<a href="http://bz.selenic.com/\2">\1</a>!i This also adds documentation (proofed by Kevin!) to the config help section.
Fri, 08 Feb 2013 18:05:32 +0100 hgweb: add websub template filter
Angel Ezquerra <angel.ezquerra@gmail.com> [Fri, 08 Feb 2013 18:05:32 +0100] rev 18627
hgweb: add websub template filter The purpose of this new filter is to make it possible to partially replace the functionality of the interhg extension. The idea is to be able to define regular expression based substitutions on a new "websub" config section. hgweb will then be able to apply these substitutions wherever the "websub" filter is used on a template. This first revision just adds the code necessary to load the websub expressions and adds the websub filter, but it does not add any calls to the websub filter itself on any of the templates. That will be done on the following revisions.
Tue, 05 Feb 2013 14:36:19 -0800 addremove: don't audit the path for paths already in the dirstate
Durham Goode <durham@fb.com> [Tue, 05 Feb 2013 14:36:19 -0800] rev 18626
addremove: don't audit the path for paths already in the dirstate Now that dirstate.walk returns None for paths under symlink directories, addremove doesn't need to validate each path it sees to look for files under symlinks. On a large repository this brings addremove from 6.3 seconds down to 3.65 (42%) since addremove no longer has to stat every directory of every file to determine if the file is inside a symlink directory. I put it through our benchmark and see no perf hit to any other commands.
Mon, 04 Feb 2013 14:27:15 -0800 dirstate: walk returns None for files that have a symlink in their path
Durham Goode <durham@fb.com> [Mon, 04 Feb 2013 14:27:15 -0800] rev 18625
dirstate: walk returns None for files that have a symlink in their path Previously dirstate.walk would return a stat object for files in the dmap that have a symlink to a directory in their path. Now it will return None to indicate that they are no longer considered part of the repository. This currently only affects walks that traverse the entire directory tree (ex: hg status) and not walks that only list the contents of the dmap (ex: hg diff). In a situation like this: mkdir foo && touch foo/a && hg commit -Am "a" mv foo bar ln -s bar foo 'hg status' will now show '! foo/a', whereas before it incorrectly considered 'foo/a' to be unchanged. In addition to making 'hg status' report the correct information, this will allow callers to dirstate.walk to not have to detect symlinks themselves, which can be very expensive.
Tue, 05 Feb 2013 14:24:14 -0800 pathauditor: add check() method
Durham Goode <durham@fb.com> [Tue, 05 Feb 2013 14:24:14 -0800] rev 18624
pathauditor: add check() method The pathauditor currently throws exceptions when it encounters an invalid path. This change adds a method to allow people to treat it as a boolean. This is currently used by scmutil.addremove and in a subsequent patch it will be used by dirstate.walk
Sat, 09 Feb 2013 22:54:34 +0000 summary: add missing space for updated active bookmark display
Matt Mackall <mpm@selenic.com> [Sat, 09 Feb 2013 22:54:34 +0000] rev 18623
summary: add missing space for updated active bookmark display
Fri, 08 Feb 2013 21:47:22 +0000 summary: show active bookmark even if not at current changeset
Kevin Bullock <kbullock@ringworld.org> [Fri, 08 Feb 2013 21:47:22 +0000] rev 18622
summary: show active bookmark even if not at current changeset Before this change, 'hg summary' would not show the active bookmark unless it pointed to the working directory parent. After this change, it will show it in parentheses, like so: parent: 18581:f0ff45fe6700 tip summary: simplify handling of active bookmark branch: default bookmarks: [crew] commit: (clean) update: (current)
Sun, 27 Jan 2013 11:53:46 -0600 summary: simplify handling of active bookmark
Kevin Bullock <kbullock@ringworld.org> [Sun, 27 Jan 2013 11:53:46 -0600] rev 18621
summary: simplify handling of active bookmark
Fri, 08 Feb 2013 21:32:43 +0000 summary: test that current bookmark isn't shown
Kevin Bullock <kbullock@ringworld.org> [Fri, 08 Feb 2013 21:32:43 +0000] rev 18620
summary: test that current bookmark isn't shown This exposes the current behavior in a test. A later change will make summary show when the active bookmark has moved out from under us.
Sat, 09 Feb 2013 22:27:13 +0000 merge crew heads
Kevin Bullock <kbullock@ringworld.org> [Sat, 09 Feb 2013 22:27:13 +0000] rev 18619
merge crew heads
Sat, 09 Feb 2013 22:25:58 +0000 merge with stable
Kevin Bullock <kbullock@ringworld.org> [Sat, 09 Feb 2013 22:25:58 +0000] rev 18618
merge with stable
Sat, 09 Feb 2013 17:54:01 +0000 outgoing: fix possible filtering crash in outgoing (issue3814) stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 09 Feb 2013 17:54:01 +0000] rev 18617
outgoing: fix possible filtering crash in outgoing (issue3814) If there is no outgoiing changesets but we have filtered revision in outgoing.excluded We run into a filtering related crash. The excluded revision should not be there in the first place but discovery need cleanup in default, not stable.
Wed, 30 Jan 2013 01:24:04 +0100 test: display used python hash seed
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 30 Jan 2013 01:24:04 +0100] rev 18616
test: display used python hash seed We keep using a random seed for each run, but we "compute" it ourself to be able to reproduce a failed test run.
Sat, 09 Feb 2013 17:54:01 +0000 outgoing: fix possible filtering crash in outgoing (issue3814)
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 09 Feb 2013 17:54:01 +0000] rev 18615
outgoing: fix possible filtering crash in outgoing (issue3814) If there is no outgoiing changesets but we have filtered revision in outgoing.excluded We run into a filtering related crash. The excluded revision should not be there in the first place but discovery need cleanup in default, not stable.
Sat, 09 Feb 2013 15:39:22 -0600 parsedate: understand "now" as a shortcut for the current time
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 15:39:22 -0600] rev 18614
parsedate: understand "now" as a shortcut for the current time
Sat, 09 Feb 2013 15:38:57 -0600 export: clobber files with -o (bc) (issue3652)
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 15:38:57 -0600] rev 18613
export: clobber files with -o (bc) (issue3652) This violated user expectation. Updated the code to clobber files, but preserve the behavior of appending multiple patches requested in a single export. Includes tests.
Sat, 09 Feb 2013 21:24:36 +0000 merge: don't call copies.mergecopies unless we need to
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 21:24:36 +0000] rev 18612
merge: don't call copies.mergecopies unless we need to This reduces the amount of time we spend calculating when doing a clean non-merge update. In a large repo, the time dropped from 10.1 seconds to 3.4.
Sat, 09 Feb 2013 21:24:24 +0000 merge: rename p1 to wctx in manifestmerge
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 21:24:24 +0000] rev 18611
merge: rename p1 to wctx in manifestmerge This is always a workingctx, and this name is more in line with other functions in this module.
Sat, 09 Feb 2013 16:02:01 +0000 largefiles: fix test and check code
Na'Tosha Bard <natosha@unity3d.com> [Sat, 09 Feb 2013 16:02:01 +0000] rev 18610
largefiles: fix test and check code
Sat, 03 Aug 2013 16:40:13 +0200 histedit: always abort with same message when working dir is wrong.
Simon Heimberg <simohe@besonet.ch> [Sat, 03 Aug 2013 16:40:13 +0200] rev 18609
histedit: always abort with same message when working dir is wrong. Using only one message makes live easier for translators. The clearer error message was supposed by Augie Fackler.
Sat, 03 Aug 2013 16:37:17 +0200 histedit: report when revisions to edit are not ancestors of working dir
Simon Heimberg <simohe@besonet.ch> [Sat, 03 Aug 2013 16:37:17 +0200] rev 18608
histedit: report when revisions to edit are not ancestors of working dir Editing the history only is possible when the working dir is a descendant of the revisions to edit. When this happens explain it by writing abort: %s is not an ancestor of working directory
Sat, 09 Feb 2013 15:59:44 +0000 Merge
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Feb 2013 15:59:44 +0000] rev 18607
Merge
Sat, 09 Feb 2013 15:36:00 +0000 manifestmerge: handle abort on local unknown, remote created files
Siddharth Agarwal <sid0@fb.com> [Sat, 09 Feb 2013 15:36:00 +0000] rev 18606
manifestmerge: handle abort on local unknown, remote created files This replaces the _checkunknown call in calculateupdates with a more performant version. On a repository with over 150,000 files, this speeds up an update by 0.6-0.8 seconds, which is up to 25%. This does not introduce any UI changes. There is existing test coverage for every case, mostly in test-merge*.t.
Fri, 08 Feb 2013 15:23:23 +0000 manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com> [Fri, 08 Feb 2013 15:23:23 +0000] rev 18605
manifestmerge: pass in branchmerge and force separately This will be used in an upcoming patch.
Sat, 09 Feb 2013 15:43:02 +0000 manifest: use a size 3 LRU cache to store parsed manifests
Siddharth Agarwal <sid0@fb.com> [Sat, 09 Feb 2013 15:43:02 +0000] rev 18604
manifest: use a size 3 LRU cache to store parsed manifests Previously, the manifest cache would store the last manifest parsed. We could run into situations with operations like update where we would try parsing the manifest for a revision r1, then r2, then r1 again. This increases the cache size to 3 to avoid that bit of performance fragility.
Sat, 09 Feb 2013 15:41:46 +0000 util: add an LRU cache dict
Siddharth Agarwal <sid0@fb.com> [Sat, 09 Feb 2013 15:41:46 +0000] rev 18603
util: add an LRU cache dict In certain cases we would like to have a cache of the last N results of a given computation, where N is small. This will be used in an upcoming patch to increase the size of the manifest cache from 1 to 3.
Sat, 09 Feb 2013 13:58:13 +0000 tests: remove last two check-code warnings about killdaemons
Kevin Bullock <kbullock@ringworld.org> [Sat, 09 Feb 2013 13:58:13 +0000] rev 18602
tests: remove last two check-code warnings about killdaemons Removes the last of the warnings in test-check-code-hg.t introduced in 667063b22a69.
Sat, 09 Feb 2013 13:35:45 +0000 tests: guard against obsolete markers in the hg repo itself
Kevin Bullock <kbullock@ringworld.org> [Sat, 09 Feb 2013 13:35:45 +0000] rev 18601
tests: guard against obsolete markers in the hg repo itself If obsolete markers appear in the hg repo (because of enabling evolve), then tests that run hg against the hg repo itself will see warnings like: obsolete feature not enabled but 4 markers found! As far as I can tell, this only occurs in test-check-code-hg.t -- in particular, it will -not- show up on tests that run against test-created repos, as most of the test suite does.
Sat, 09 Feb 2013 15:08:21 +0000 largefiles: make caching largefiles message more explicit
Na'Tosha Bard <natosha@unity3d.com> [Sat, 09 Feb 2013 15:08:21 +0000] rev 18600
largefiles: make caching largefiles message more explicit In some cases, caching largefiles may take a long time (if the user has pulled a lot of new heads). This patch makes it more clear what is happening, by showing the number of heads we are caching largefiles for.
Sat, 09 Feb 2013 15:25:46 +0000 largefiles: document behavior of caching largefiles for new heads
Na'Tosha Bard <natosha@unity3d.com> [Sat, 09 Feb 2013 15:25:46 +0000] rev 18599
largefiles: document behavior of caching largefiles for new heads
Sat, 09 Feb 2013 15:57:04 +0100 check-code: add Makefile target to run check-code
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 09 Feb 2013 15:57:04 +0100] rev 18598
check-code: add Makefile target to run check-code
Sat, 09 Feb 2013 07:44:22 -0600 byterange: remove now-unused sys import
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 07:44:22 -0600] rev 18597
byterange: remove now-unused sys import
Sat, 09 Feb 2013 05:37:36 -0600 test-obsolete.t: migrate to killdaemons from kill `cat pidfile`
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 05:37:36 -0600] rev 18596
test-obsolete.t: migrate to killdaemons from kill `cat pidfile`
Sat, 09 Feb 2013 05:36:19 -0600 test-inotify.t: migrate to killdaemons from kill `cat pidfile`
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 05:36:19 -0600] rev 18595
test-inotify.t: migrate to killdaemons from kill `cat pidfile`
Sat, 09 Feb 2013 05:35:20 -0600 test-inotify-lookup.t: migrate to killdaemons from kill `cat pidfile`
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 05:35:20 -0600] rev 18594
test-inotify-lookup.t: migrate to killdaemons from kill `cat pidfile`
Sat, 09 Feb 2013 05:34:22 -0600 test-inotify-issue1556.t: migrate to killdaemons from kill `cat pidfile`
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 05:34:22 -0600] rev 18593
test-inotify-issue1556.t: migrate to killdaemons from kill `cat pidfile`
Sat, 09 Feb 2013 05:33:39 -0600 test-inotify-issue1542.t: migrate to killdaemons from kill `cat pidfile`
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 05:33:39 -0600] rev 18592
test-inotify-issue1542.t: migrate to killdaemons from kill `cat pidfile`
Sat, 09 Feb 2013 05:32:00 -0600 test-inotify-issue1371.t: switch to killdaemons from kill `cat pidfile`
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 05:32:00 -0600] rev 18591
test-inotify-issue1371.t: switch to killdaemons from kill `cat pidfile`
Sat, 09 Feb 2013 05:30:40 -0600 test-inotify-debuginotify.t: migrate to killdaemons from kill `cat pidfile`
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 05:30:40 -0600] rev 18590
test-inotify-debuginotify.t: migrate to killdaemons from kill `cat pidfile`
Sat, 09 Feb 2013 05:29:10 -0600 test-hgweb-raw.t: use killdaemons instead of kill `cat pidfile`
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 05:29:10 -0600] rev 18589
test-hgweb-raw.t: use killdaemons instead of kill `cat pidfile`
Sat, 09 Feb 2013 05:26:16 -0600 test-https.t: stop using kill `cat $pidfile`
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 05:26:16 -0600] rev 18588
test-https.t: stop using kill `cat $pidfile`
Sat, 09 Feb 2013 06:07:32 -0600 changelog: hexlify node when throwing a LookupError on a filtered node
Augie Fackler <raf@durin42.com> [Sat, 09 Feb 2013 06:07:32 -0600] rev 18587
changelog: hexlify node when throwing a LookupError on a filtered node The non-hexlified node was leaking all the way out to the web interface, and wasn't consistent with the behavior for nonexistent nodes.
Fri, 08 Feb 2013 17:14:12 -0600 byterange: remove old two-arg raise trick
Augie Fackler <raf@durin42.com> [Fri, 08 Feb 2013 17:14:12 -0600] rev 18586
byterange: remove old two-arg raise trick We don't care about the original traceback, and this was frustrating any efforts to make the code work on Python 3.3.
Sat, 09 Feb 2013 12:08:02 +0100 revlog: document v0 format
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sat, 09 Feb 2013 12:08:02 +0100] rev 18585
revlog: document v0 format
Sat, 09 Feb 2013 10:40:26 +0000 merge crew heads
Kevin Bullock <kbullock@ringworld.org> [Sat, 09 Feb 2013 10:40:26 +0000] rev 18584
merge crew heads
Sat, 09 Feb 2013 10:36:31 +0000 merge with mpm stable
Kevin Bullock <kbullock@ringworld.org> [Sat, 09 Feb 2013 10:36:31 +0000] rev 18583
merge with mpm stable
Fri, 08 Feb 2013 23:49:14 +0100 templater: add get() function to access dict element (e.g. extra)
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Fri, 08 Feb 2013 23:49:14 +0100] rev 18582
templater: add get() function to access dict element (e.g. extra)
Fri, 08 Feb 2013 21:55:46 +0100 templates: export extra as a dict to templates
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Fri, 08 Feb 2013 21:55:46 +0100] rev 18581
templates: export extra as a dict to templates Currently only useful with the json filter.
Fri, 08 Feb 2013 23:13:47 +0000 Added signature for changeset 7511d4df752e stable
Matt Mackall <mpm@selenic.com> [Fri, 08 Feb 2013 23:13:47 +0000] rev 18580
Added signature for changeset 7511d4df752e
Fri, 08 Feb 2013 23:13:44 +0000 Added tag 2.5.1 for changeset 7511d4df752e stable
Matt Mackall <mpm@selenic.com> [Fri, 08 Feb 2013 23:13:44 +0000] rev 18579
Added tag 2.5.1 for changeset 7511d4df752e
Fri, 08 Feb 2013 22:58:58 +0000 merge with i18n stable 2.5.1
Matt Mackall <mpm@selenic.com> [Fri, 08 Feb 2013 22:58:58 +0000] rev 18578
merge with i18n
Tue, 05 Feb 2013 22:02:11 +0100 i18n-de: fix duplicated shortcut key b for record (edit and quit) stable
Arne Babenhauserheide <bab@draketo.de> [Tue, 05 Feb 2013 22:02:11 +0100] rev 18577
i18n-de: fix duplicated shortcut key b for record (edit and quit) Use e for edit instead.
Fri, 08 Feb 2013 22:42:07 +0000 check-code: fix platform-specific error code variance
Kevin Bullock <kbullock@ringworld.org> [Fri, 08 Feb 2013 22:42:07 +0000] rev 18576
check-code: fix platform-specific error code variance test-check-code-hg.t uses xargs to invoke check-code.py on every file in 'hg manifest'. The return code from xargs varies between BSD xargs and GNU xargs: BSD will return 1 if any invocation exits with an error code; GNU xargs will return 123 in this case. This normalizes the exit code back to 1.
Fri, 08 Feb 2013 19:32:56 +0000 check-code: warn to use killdaemons instead of kill `cat PIDFILE`
Kevin Bullock <kbullock@ringworld.org> [Fri, 08 Feb 2013 19:32:56 +0000] rev 18575
check-code: warn to use killdaemons instead of kill `cat PIDFILE` We have a bunch of tests that still use kill `cat hg.pid` or worse, kill `cat hg.pid`; while kill -0 `cat hg.pid`; sleep 0; done Cleaning these up to use tests/killdaemons.py is non-trivial, so for now we just add a warning.
Fri, 08 Feb 2013 13:08:25 +0100 largefiles: docstrings for verify methods
Mads Kiilerich <mads@kiilerich.com> [Fri, 08 Feb 2013 13:08:25 +0100] rev 18574
largefiles: docstrings for verify methods
Fri, 08 Feb 2013 13:00:08 +0100 largefiles: fold oddly named _verify into remotestore.exists
Mads Kiilerich <mads@kiilerich.com> [Fri, 08 Feb 2013 13:00:08 +0100] rev 18573
largefiles: fold oddly named _verify into remotestore.exists
Fri, 08 Feb 2013 07:09:48 -0600 git convert: some versions of git use fatal: instead of error:
Augie Fackler <raf@durin42.com> [Fri, 08 Feb 2013 07:09:48 -0600] rev 18572
git convert: some versions of git use fatal: instead of error: I saw this behavior with git 1.7.12 on my Mac.
Fri, 08 Feb 2013 07:57:32 -0600 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com> [Fri, 08 Feb 2013 07:57:32 -0600] rev 18571
test-convert-git: stabilize corruption of test git repo This error would show up only intermittently since the test depended on the order of the directories returned by os.walk. The damage repository test would delete the first object file it came across. However, the order of the directory listing is arbitrary (it seems to depend on the filesystem). This meant that sometimes a commit object was deleted, sometimes a blob object and sometimes a tree object. So, fix by hardcoding which object to delete. Delete a commit object, a blob object and a tree object in three separate tests.
Fri, 08 Feb 2013 08:02:57 -0600 convert/git: catch errors from modern git-ls-remote (issue3428)
Ross Lagerwall <rosslagerwall@gmail.com> [Fri, 08 Feb 2013 08:02:57 -0600] rev 18570
convert/git: catch errors from modern git-ls-remote (issue3428) Since git v1.7.8.2-327-g926f1dd (the change was first released in git 1.7.10), git does not return non-zero when "git ls-remote --tags ..." is run and the repository is damaged. This causes the "damaged repository with missing commit" test in test-convert-git.t to unexpectedly succeed. Fix by aborting if git outputs any lines beginning with "error:", which required adding some subprocess use in convert/git.py.
Fri, 08 Feb 2013 14:26:00 +0000 merge with stable
Kevin Bullock <kbullock@ringworld.org> [Fri, 08 Feb 2013 14:26:00 +0000] rev 18569
merge with stable
Wed, 06 Feb 2013 07:55:29 +0000 incoming: fix incoming when a local head is remotely filtered (issue3805) stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 06 Feb 2013 07:55:29 +0000] rev 18568
incoming: fix incoming when a local head is remotely filtered (issue3805) In its current state discovery may return (remotely) filtered elements in "common". This has usually no impact as "missing" is kept clear of filtered elements. However when the "remote" repo is a local repo (disk accessible, and directly created in memory) the incoming code takes a shortcut and directly uses the "remote" repo to generate the incoming output. When some common elements are filtered this led to a crash. We now ensure we use an unfiltered repository to generate the incoming output. This does not change the behavior as missing is clear of filtered revision. Now that we have proper low level filtering, incoming code needs a deeper cleanup but it is already planned.
Thu, 17 Jan 2013 23:46:08 -0800 dirstate: move pure python dirstate packing to pure/parsers.py
Siddharth Agarwal <sid0@fb.com> [Thu, 17 Jan 2013 23:46:08 -0800] rev 18567
dirstate: move pure python dirstate packing to pure/parsers.py
Tue, 05 Feb 2013 16:22:53 -0800 bookmark: don't allow integers as bookmark/branch/tag names
Durham Goode <durham@fb.com> [Tue, 05 Feb 2013 16:22:53 -0800] rev 18566
bookmark: don't allow integers as bookmark/branch/tag names Bookmarks/branches/tags shouldn't be allowed to be integers because that overlaps with revision numbers. Right now if a user created one they can't use it anyway because the revision numbers take precedence. The check only happens when creating a new bookmark/etc from a command so it shouldn't affect existing bookmarks/branches/tags or importing branches from git. This fix was prompted by us having a user create a bookmark named "404" then accidentally checkout a very old version of our repository.
Wed, 24 Oct 2012 23:09:31 +0200 run-tests: do not fail on empty tsttest file
Simon Heimberg <simohe@besonet.ch> [Wed, 24 Oct 2012 23:09:31 +0200] rev 18565
run-tests: do not fail on empty tsttest file Initialize n for not failing on empty tsttest files.
Wed, 06 Feb 2013 14:43:29 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 06 Feb 2013 14:43:29 -0600] rev 18564
merge with stable
Tue, 05 Feb 2013 11:31:43 -0600 hgweb: make 'summary' work with hidden changesets (issue3810) stable
Kevin Bullock <kbullock@ringworld.org> [Tue, 05 Feb 2013 11:31:43 -0600] rev 18563
hgweb: make 'summary' work with hidden changesets (issue3810) Since the 'summary' view used by e.g. gitweb and monoblue shows both a changelog and a bookmarks list, the same changes are needed here as were made to the 'changelog' and 'bookmarks' web commands (56ca4443a343 and 886936ecc21b, respectively).
Wed, 06 Feb 2013 13:22:01 +0100 merge with stable
Mads Kiilerich <madski@unity3d.com> [Wed, 06 Feb 2013 13:22:01 +0100] rev 18562
merge with stable
Tue, 05 Feb 2013 12:58:21 +0100 hgk: support the old way of getting the current Ttk theme (issue3808) stable
Andrew Shadura <bugzilla@tut.by> [Tue, 05 Feb 2013 12:58:21 +0100] rev 18561
hgk: support the old way of getting the current Ttk theme (issue3808) It seems like the API has changed somewhere around 8.5.7, so the preferred way of getting the current theme is now [ttk::style theme use], while the deprecated (but still working) is $::ttk::currentTheme.
Mon, 04 Feb 2013 14:10:09 -0800 addremove: don't perform m.exact/rel until needed
Durham Goode <durham@fb.com> [Mon, 04 Feb 2013 14:10:09 -0800] rev 18560
addremove: don't perform m.exact/rel until needed Moves the m.exact and m.rel calls within the conditionals they are used in. On a large repo this brings addremove from 7.1 seconds down to 6.3 (13%).
Mon, 04 Feb 2013 14:06:20 -0800 addremove: don't call lexists, isdir, and islink
Durham Goode <durham@fb.com> [Mon, 04 Feb 2013 14:06:20 -0800] rev 18559
addremove: don't call lexists, isdir, and islink The dirstate walk results contain the stat information for each path, so we don't need to query it again. On a large repo this makes addremove go from 8.35 seconds to 7.1 (15%).
Mon, 04 Feb 2013 14:01:40 -0800 addremove: only query dirstate once per path
Durham Goode <durham@fb.com> [Mon, 04 Feb 2013 14:01:40 -0800] rev 18558
addremove: only query dirstate once per path Previously the addremove code queried the dirstate 4 times per path. Now it only does so once. On a large repo this brings addremove from 9.5 seconds to 8.35 seconds (12%).
Mon, 04 Feb 2013 23:48:34 +0100 tests: fix windows test failure with largefiles
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 23:48:34 +0100] rev 18557
tests: fix windows test failure with largefiles
Mon, 04 Feb 2013 23:53:37 +0100 merge with stable
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 23:53:37 +0100] rev 18556
merge with stable
Mon, 04 Feb 2013 23:41:11 +0100 tests: fix windows test failure in test-subrepo.t stable
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 23:41:11 +0100] rev 18555
tests: fix windows test failure in test-subrepo.t
Mon, 04 Feb 2013 16:39:02 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 04 Feb 2013 16:39:02 -0600] rev 18554
merge with stable
Mon, 04 Feb 2013 23:26:44 +0100 largefiles: don't crash when trying to find default dest for url without path stable
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 23:26:44 +0100] rev 18553
largefiles: don't crash when trying to find default dest for url without path b32e55e6c3c7 introduced a crash when cloning a url without path - where util.url().path would be None. This None will now be handled as ''. clone will thus abort with 'repository / not found' as before.
Mon, 04 Feb 2013 23:25:25 +0100 hgweb.cgi: fix internal WSGI emulation (issue3804) stable
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 23:25:25 +0100] rev 18552
hgweb.cgi: fix internal WSGI emulation (issue3804) The internal WSGI emulation in wsgicgi.py was not fully WSGI compliant and assumed that all responses sent a body. With 3fbdbeab38cc that caused a real bug when using hgweb.cgi. wsgicgi.py will now make sure headers always are sent, using the pattern from PEP 333 and similar to how it is done in c007e5c54b16.
Sat, 02 Feb 2013 16:15:22 -0600 bdiff: simplify overflow checks
Matt Mackall <mpm@selenic.com> [Sat, 02 Feb 2013 16:15:22 -0600] rev 18551
bdiff: simplify overflow checks Rather than check that each delta start, end, and length is within 32 bits, we simply check that the input strings are under 4GB.
Mon, 04 Feb 2013 11:42:10 -0800 Merge crew-stable into crew
Bryan O'Sullivan <bryano@fb.com> [Mon, 04 Feb 2013 11:42:10 -0800] rev 18550
Merge crew-stable into crew
Sun, 03 Feb 2013 14:26:39 -0800 rebase: derive node from target rev (issue3802) stable
Siddharth Agarwal <sid0@fb.com> [Sun, 03 Feb 2013 14:26:39 -0800] rev 18549
rebase: derive node from target rev (issue3802) dest.rev() is the same as target when a new rebase is run, but dest isn't set when rebase --continue is run. Bug introduced in 2a1fac3650a5, which fixed issue3685.
Mon, 04 Feb 2013 02:46:53 +0100 profiling: introduce limit configuration option
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 02:46:53 +0100] rev 18548
profiling: introduce limit configuration option The number of output lines was hardcoded to 30. There was a 'nested' configuration options that controlled something else related to counting the number of output lines. This introduces the profiling.limit configuration option for controlling the number of profiling output to show.
Thu, 24 Jan 2013 23:57:44 +0100 largefiles: make verify --lfa and --lfc work without --large
Mads Kiilerich <madski@unity3d.com> [Thu, 24 Jan 2013 23:57:44 +0100] rev 18547
largefiles: make verify --lfa and --lfc work without --large The slightly obscure --lfa and --lfc only worked as modifiers to --large and could be combined. The documentation was however not clear what they did. Instead they now imply --large and the description is updated.
Mon, 04 Feb 2013 02:46:53 +0100 largefiles: verify status should be written as status, not as write
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 02:46:53 +0100] rev 18546
largefiles: verify status should be written as status, not as write Make 'hg verify --large -q' quiet when no errors.
Mon, 04 Feb 2013 02:46:53 +0100 largefiles: report localstore errors with single line warnings messages
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 02:46:53 +0100] rev 18545
largefiles: report localstore errors with single line warnings messages The actual hash is also not relevant to report. This makes verify output with multiple failures easier to process.
Mon, 04 Feb 2013 02:46:53 +0100 merge: inline act()
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 02:46:53 +0100] rev 18544
merge: inline act() The act function had become very trivial and mainly shuffled arguments around and made it harder to see what really was going on.
Mon, 04 Feb 2013 02:46:53 +0100 merge: don't indent "local changed %s which remote deleted" prompt
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 02:46:53 +0100] rev 18543
merge: don't indent "local changed %s which remote deleted" prompt It was usually not shown in a context where indentation helped readability and it was inconsistent with other prompts.
Mon, 04 Feb 2013 02:46:38 +0100 merge: backout manifest sorting and workarounds for cost of it
Mads Kiilerich <madski@unity3d.com> [Mon, 04 Feb 2013 02:46:38 +0100] rev 18542
merge: backout manifest sorting and workarounds for cost of it Backout 8a811fa9a9c0 and 760c0d67ce5e which no longer are needed.
Thu, 24 Jan 2013 23:57:44 +0100 merge: delay debug messages for merge actions
Mads Kiilerich <madski@unity3d.com> [Thu, 24 Jan 2013 23:57:44 +0100] rev 18541
merge: delay debug messages for merge actions Show messages at a point where the actions have been sorted, thus preparing for backout of 760c0d67ce5e. This makes manifestmerge more of a silent operation, just like 'copies' is. Indent 'preserving' messages to make them subordinate to the action logging so they fit in the new context. (The 'preserving' messages are quite redundant and could also be removed completely.)
Thu, 24 Jan 2013 23:57:44 +0100 merge: make all action tuples have the same length - keep args as tuple
Mads Kiilerich <madski@unity3d.com> [Thu, 24 Jan 2013 23:57:44 +0100] rev 18540
merge: make all action tuples have the same length - keep args as tuple
Thu, 24 Jan 2013 23:57:44 +0100 merge: delay prompts a bit and show them in (extra) sorted order
Mads Kiilerich <madski@unity3d.com> [Thu, 24 Jan 2013 23:57:44 +0100] rev 18539
merge: delay prompts a bit and show them in (extra) sorted order Preparing for backout of 760c0d67ce5e. The number of prompts will for all relevant cases be significantly smaller than the total number of files in the manifests. We can thus afford to sort the prompts more than we can afford to sort the manifests.
Sat, 02 Feb 2013 15:37:17 -0200 commit: show active bookmark in commit editor helper text
Antonio Zanardo <zanardo@gmail.com> [Sat, 02 Feb 2013 15:37:17 -0200] rev 18538
commit: show active bookmark in commit editor helper text If there is an active bookmark while committing, the bookmark name will be visible inside the commit message helper, below the branch name. This should make easier for the user to detect a mistaken commit parent, while working for example with a bookmark centric workflow like topic branches. The active bookmark is checked to be in the working directory, as pointed by Kevin Bullock, because otherwise committing would not advance it. In other words, this would not show the active bookmark name if the user changed the working tree parents with 'hg debugsetparents', for example.
Wed, 23 Jan 2013 09:51:45 -0800 dates: support 'today' and 'yesterday' in parsedate (issue3764)
Paul Cavallaro <ptc@fb.com> [Wed, 23 Jan 2013 09:51:45 -0800] rev 18537
dates: support 'today' and 'yesterday' in parsedate (issue3764) Adding support to parsedate in util module to understand the more idiomatic dates 'today' and 'yesterday'. Added unified tests and docstring tests for added functionality.
Mon, 28 Jan 2013 12:19:21 -0800 revset: change ancestor to accept 0 or more arguments (issue3750)
Paul Cavallaro <ptc@fb.com> [Mon, 28 Jan 2013 12:19:21 -0800] rev 18536
revset: change ancestor to accept 0 or more arguments (issue3750) Change ancestor to accept 0 or more arguments. The greatest common ancestor of a single changeset is that changeset. If passed no arguments, the empty list is returned.
Fri, 01 Feb 2013 15:48:33 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Fri, 01 Feb 2013 15:48:33 -0600] rev 18535
merge with stable
Fri, 01 Feb 2013 15:32:05 -0600 Added signature for changeset a6088c05e43a stable
Matt Mackall <mpm@selenic.com> [Fri, 01 Feb 2013 15:32:05 -0600] rev 18534
Added signature for changeset a6088c05e43a
Fri, 01 Feb 2013 15:31:57 -0600 Added tag 2.5 for changeset a6088c05e43a stable
Matt Mackall <mpm@selenic.com> [Fri, 01 Feb 2013 15:31:57 -0600] rev 18533
Added tag 2.5 for changeset a6088c05e43a
Fri, 01 Feb 2013 15:21:47 -0600 test-obsolete: now gets 404 for hidden change stable 2.5
Matt Mackall <mpm@selenic.com> [Fri, 01 Feb 2013 15:21:47 -0600] rev 18532
test-obsolete: now gets 404 for hidden change
Fri, 01 Feb 2013 15:23:37 -0600 merge with i18n stable
Matt Mackall <mpm@selenic.com> [Fri, 01 Feb 2013 15:23:37 -0600] rev 18531
merge with i18n
Fri, 01 Feb 2013 17:59:56 -0200 i18n-pt_BR: added message from crew 0324a1d88a53 stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Fri, 01 Feb 2013 17:59:56 -0200] rev 18530
i18n-pt_BR: added message from crew 0324a1d88a53
Fri, 01 Feb 2013 11:01:39 -0200 i18n-pt_BR: added message from crew 9fbeb61b8ad2 stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Fri, 01 Feb 2013 11:01:39 -0200] rev 18529
i18n-pt_BR: added message from crew 9fbeb61b8ad2
Thu, 31 Jan 2013 23:01:31 +0900 i18n-ja: synchronized with 2a1fac3650a5 stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 31 Jan 2013 23:01:31 +0900] rev 18528
i18n-ja: synchronized with 2a1fac3650a5
Thu, 31 Jan 2013 09:58:36 -0200 i18n-pt_BR: synchronized with 68eecbaf1bd3 stable
Wagner Bruna <wbruna@yahoo.com> [Thu, 31 Jan 2013 09:58:36 -0200] rev 18527
i18n-pt_BR: synchronized with 68eecbaf1bd3
Fri, 01 Feb 2013 20:43:35 +0100 hgweb: urlescape all urls, HTML escape repo/tag/branch/... names stable
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 01 Feb 2013 20:43:35 +0100] rev 18526
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names Without this, repository paths or names containing e.g. & characters or html tags yielded strange results, possibly allowing cross-site scripting attacks.
Fri, 01 Feb 2013 15:14:05 -0600 merge with crew stable
Matt Mackall <mpm@selenic.com> [Fri, 01 Feb 2013 15:14:05 -0600] rev 18525
merge with crew
Fri, 01 Feb 2013 10:12:41 -0600 hgweb: rename 'currentbaseline' template keyword to 'basenode' stable
Kevin Bullock <kbullock@ringworld.org> [Fri, 01 Feb 2013 10:12:41 -0600] rev 18524
hgweb: rename 'currentbaseline' template keyword to 'basenode' Shorter and clearer. This keyword represents the node we're currently diffing against.
Fri, 01 Feb 2013 09:58:25 -0600 hgweb: rename 'changesetbaseline' template to 'difffrom' stable
Kevin Bullock <kbullock@ringworld.org> [Fri, 01 Feb 2013 09:58:25 -0600] rev 18523
hgweb: rename 'changesetbaseline' template to 'difffrom' More accurately reflects what it will be used for, and is also shorter. This template is used to change which rev the current rev is diff'd against. For example, if you're at '/rev/P1:REV', this would link to a path like '/rev/P2:REV'. Example usage in a template: {parent%difffrom}
Thu, 31 Jan 2013 19:56:55 +0100 hgweb: add a `web.view` to control filtering stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 31 Jan 2013 19:56:55 +0100] rev 18522
hgweb: add a `web.view` to control filtering This options add a new `web.view` to control filter level of hgweb. This option have two purposes: 1) Allow fall back to unfiltered version in case a yet undetected by critical bug is found in filtering after 2.5 release 2) People use hgweb as a local repoviewer. When they have secret changesets, they wants to use "visible" filter not "served" (modified by mpm, documentation deferred)
(0) -10000 -3000 -1000 -120 +120 +1000 +3000 +10000 +30000 tip