Tue, 26 Feb 2013 21:20:35 +0100 hgweb: change manifest archive links to only archive the current directory
Angel Ezquerra <angel.ezquerra@gmail.com> [Tue, 26 Feb 2013 21:20:35 +0100] rev 18772
hgweb: change manifest archive links to only archive the current directory When the web server shows the manifest for a single, non top directory, append the path to the directory to the archive links. This makes the web server generate archive files that only include the current directory (and its subdirectories). Note that archive links in other pages (e.g. changeset) or at the top of the manifest are unchanged. Directory archive links have an extra "/" at the end which does not impact the result of the archive operation. Keeping it there made the implementation of this feature simpler.
Sun, 10 Feb 2013 11:52:05 +0100 hgweb: teach archive how to download a specific directory or file
Angel Ezquerra <angel.ezquerra@gmail.com> [Sun, 10 Feb 2013 11:52:05 +0100] rev 18771
hgweb: teach archive how to download a specific directory or file The archive web command now takes into account the "file" request entry, if one is provided. The provided "file" is processed as a "path" corresponding to a directory or file that will be downloaded. With this change hgweb can to process requests such as: http://mercurial.selenic.com/hg/archive/tip.zip/mercurial/templates This will download all files on the mercurial/templates directory as a zip file. It is not possible to specify file patterns ('glob', 'relglob', 'path', 'relpath', 're', 'relre' nor 'set'). The server will reject those with a 403 HTTP error response. Note that this is a first step to add support for downloading directories from the web interface. A following patch will modify the archiveentry map entry on the different templates so that it adds the current folder path to the archive links.
Wed, 06 Feb 2013 10:06:45 +0100 test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com> [Wed, 06 Feb 2013 10:06:45 +0100] rev 18770
test-archive: gracefully handle HTTPErrors on get-with-headers This avoids pritting out a traceback when a get-with-headers call causes hgweb to respond with an HTTPError code.
Thu, 14 Mar 2013 16:56:10 -0700 bash_completion: tell an editor what type of file this is
Bryan O'Sullivan <bryano@fb.com> [Thu, 14 Mar 2013 16:56:10 -0700] rev 18769
bash_completion: tell an editor what type of file this is
Thu, 14 Mar 2013 16:50:53 -0700 bash_completion: allow remove to complete normal files
Bryan O'Sullivan <bryano@fb.com> [Thu, 14 Mar 2013 16:50:53 -0700] rev 18768
bash_completion: allow remove to complete normal files Previously, we only completed files that had already been manually deleted. That behaviour made no sense. We now complete unmodified, modified, and deleted files.
Thu, 14 Mar 2013 16:49:02 -0700 bash_completion: match more narrowly
Bryan O'Sullivan <bryano@fb.com> [Thu, 14 Mar 2013 16:49:02 -0700] rev 18767
bash_completion: match more narrowly This greatly helps completion performance for most commands that deal with files. In a working dir with 150,000 files, where we want to complete the name of a modified file under a path beginning with "a", from the root of the working dir: (old) hg status -nm . 1.7 sec (new) hg status -nm "glob:a**" 0.3 Even "hg add" becomes a little faster, in spite of being the worst case (matching untracked files).
Wed, 13 Mar 2013 10:43:51 -0700 blackbox: add backup bundle paths to blackbox logs
Durham Goode <durham@fb.com> [Wed, 13 Mar 2013 10:43:51 -0700] rev 18766
blackbox: add backup bundle paths to blackbox logs Writes the backup bundle paths to the blackbox so it's easy to see which backup bundle is associated with which command when you are debugging an issue. Example output: 2013/03/13 10:39:56 durham> strip tip 2013/03/13 10:39:59 durham> saved backup bundle to /data/users/durham/www-hg/.hg/strip-backup/e5fac262363a-backup.hg 2013/03/13 10:40:03 durham> strip tip exited 0 after 7.97 seconds
Tue, 12 Mar 2013 10:37:48 -0700 tests: fix test-profile to not depend on HGPROF environment variable
Durham Goode <durham@fb.com> [Tue, 12 Mar 2013 10:37:48 -0700] rev 18765
tests: fix test-profile to not depend on HGPROF environment variable The test-profile test would fail if the user had HGPROF set to another profiler in their environment. This fix makes the test independent of that environment variable. Reverts the previous attempt to fix this, which was not cross platoform.
Tue, 12 Mar 2013 10:43:59 -0700 merge with crew-stable
Bryan O'Sullivan <bryano@fb.com> [Tue, 12 Mar 2013 10:43:59 -0700] rev 18764
merge with crew-stable
Tue, 12 Mar 2013 10:37:48 -0700 tests: fix test-profile to not depend on HGPROF environment variable
Durham Goode <durham@fb.com> [Tue, 12 Mar 2013 10:37:48 -0700] rev 18763
tests: fix test-profile to not depend on HGPROF environment variable The test-profile test would fail if the user had HGPROF set to another profiler in their environment. This fix makes the test independent of that environment variable.
Sat, 09 Mar 2013 22:14:46 +0100 check-code: do not prepend "warning" to a failure message
Simon Heimberg <simohe@besonet.ch> [Sat, 09 Mar 2013 22:14:46 +0100] rev 18762
check-code: do not prepend "warning" to a failure message The prefix has not been removed when this check changed from a warning to a failure.
Sat, 09 Mar 2013 16:09:27 -0800 merge with crew-stable
Bryan O'Sullivan <bryano@fb.com> [Sat, 09 Mar 2013 16:09:27 -0800] rev 18761
merge with crew-stable
Wed, 06 Mar 2013 20:13:09 -0800 strip: make --keep option not set all dirstate times to 0
Durham Goode <durham@fb.com> [Wed, 06 Mar 2013 20:13:09 -0800] rev 18760
strip: make --keep option not set all dirstate times to 0 hg strip -k was using dirstate.rebuild() which reset all the dirstate entries timestamps to 0. This meant that the next time hg status was run every file was considered to be 'unsure', which caused it to do expensive read operations on every filelog. On a repo with >150,000 files it took 70 seconds when everything was in memory. From a cold cache it took several minutes. The fix is to only reset files that have changed between the working context and the destination context. For reference, --keep means the working directory is left alone during the strip. We have users wanting to use this operation to store their work-in-progress as a commit on a branch while they go work on another branch, then come back later and be able to uncommit that work and continue working. They currently use 'git reset HARD^' to accomplish this in git.
Fri, 08 Mar 2013 16:59:36 -0800 sshpeer: store subprocess so it cleans up correctly
Durham Goode <durham@fb.com> [Fri, 08 Mar 2013 16:59:36 -0800] rev 18759
sshpeer: store subprocess so it cleans up correctly When running 'hg pull --rebase', I was seeing this exception 100% of the time as the python process was closing down: Exception TypeError: TypeError("'NoneType' object is not callable",) in <bound method Popen.__del__ of <subprocess.Popen object at 0x937c10>> ignored By storing the subprocess on the sshpeer, the subprocess seems to clean up correctly, and I no longer see the exception. I have no idea why this actually works, but I get a 0% repro if I store the subprocess in self.subprocess, and a 100% repro if I store None in self.subprocess. Possibly related to issue 2240.
(0) -10000 -3000 -1000 -300 -100 -14 +14 +100 +300 +1000 +3000 +10000 +30000 tip