5ef99738a56200badce6ad240449cf806b0c2d3e: util: replace file I/O with readfile
Bryan O'Sullivan <bryano@fb.com> - Tue, 12 Jan 2016 16:16:19 -0800 - rev 29701
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
util: replace file I/O with readfile
ddfb8887212d1e50cf8b101f8a68c0a3beb1cb90: patchbomb: replace file I/O with util.readfile
Bryan O'Sullivan <bryano@fb.com> - Tue, 12 Jan 2016 15:57:18 -0800 - rev 29700
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
patchbomb: replace file I/O with util.readfile
198f78a52a2f87adf3d2b8e4d751521b77229d3d: util: adjust hgcmd() to handle frozen Mercurial on OS X
Matt Harbison <matt_harbison@yahoo.com> - Sun, 10 Jan 2016 18:15:39 -0500 - rev 29699
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
util: adjust hgcmd() to handle frozen Mercurial on OS X Previously, 'hg serve -d' was trying to exec the bundled python executable, which failed with: Unknown option: -- usage: python [option] ... Try 'python -h'... abort: child process failed to start See the previous patch for details about the content of the various command variables. Note that unlike the previous patch here an application bundling Mercurial could set $HG in the environment to get the correct result, there isn't anything that a bundling application could do to get the correct result here. 'hg serve -d' now launches under TortoiseHg, and there is a process listed in the background, but a client process cannot connect to it for some reason, so more investigation is needed.
f1fb93eebb1d9782aa913dc3b0fe4743deb8fba6: util: adjust hgexecutable() to handle frozen Mercurial on OS X
Matt Harbison <matt_harbison@yahoo.com> - Sun, 10 Jan 2016 17:56:08 -0500 - rev 29698
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
util: adjust hgexecutable() to handle frozen Mercurial on OS X sys.executable is "$appbundle/Contents/MacOS/python" when Mercurial is bundled in a frozen app bundle on OS X, so that isn't appropriate. It appears that this was only visible for things launched via util.system(), like external hooks, where $HG was set wrong. It appears that Mercurial also uses 'sys.modules['__main__'].__file__' (here) and 'sys.argv[0]' (in platform.gethgcmd()) to figure out the command to spawn. In both cases, this points to "$appbundle/Contents/Resources/hg", which invokes the system python since "/usr/bin/env python" is on the shebang line. On my system with a screwed up python install, I get an error importing the os module if this script is invoked. We could take the dirname of sys.executable and join 'hg' instead of this if we want to be paranoid, but py2app boostrap is setting the environment variable since 0.1.6 (current version is 0.9), so it seems safe and we might as well use it.
dd0c5f4d1b5349e5612cbf4bc53eab80a20ce2c1: util: adjust 'datapath' to be correct in a frozen OS X package
Matt Harbison <matt_harbison@yahoo.com> - Sun, 10 Jan 2016 17:49:01 -0500 - rev 29697
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
util: adjust 'datapath' to be correct in a frozen OS X package Apparently unlike py2exe, py2app copies the Mercurial source tree as-is to a Contents/Resources subdirectory of an app bundle, and places its binary stub in Contents/MacOS. (The Windows install has the 'hgext' and 'mercurial' modules in 'lib/library.zip', while the help and templates subdirectories have been moved out of the mercurial directory to the root of the installation. I assume that the python code living in a zip file is why "py2exe doesn't support __file__".) Therefore, prior to this change, Mercurial in a frozen app bundle on OS X would go looking for help *.txt, templates and locale info in Contents/MacOS, where they don't exist. There are only a handful of places that test for frozen, and not all of them are wrong for OS X, so it seems wiser to handle them on a case by case basis, rather that try to change mainfrozen(). The remaining cases are: 1) util.hgexecutable() wrongly points to the bundled python executable, and affects $HG in util.system() launched processes (e.g. external hooks) 2) util.hgcmd() wrongly points to the bundled python executable, but it seems to only affect 'hg serve -d' 3) hook._pythonhook() may be OK, since I didn't see anything outrageous when printing sys.path from an internal hook. I'm not sure if this special case is needed on OS X though. 4) sslutil._plainapplepython() is OK, because sys.executable is not /usr/bin/python, nor is it in /System/Library/Frameworks
0ac5b7ee5dc20b9d25effe654c3f73335db19e5b: help: add --system flag to get help for various platform(s)
timeless <timeless@mozdev.org> - Sun, 10 Jan 2016 08:03:58 +0000 - rev 29696
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
help: add --system flag to get help for various platform(s)
70e7bfebba46935d356d6c27bb291a07e7e4cafb: help: split config user settings file by platform
timeless <timeless@mozdev.org> - Sun, 10 Jan 2016 06:21:40 +0000 - rev 29695
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
help: split config user settings file by platform
bf8b0796af2ead000dbe9740c04f927325eb4b26: help: label windows config help
timeless <timeless@mozdev.org> - Sun, 10 Jan 2016 06:09:10 +0000 - rev 29694
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
help: label windows config help
df4894651532647fe601956383e7cacf8f7932ed: help: split out unix/plan9 config help
timeless <timeless@mozdev.org> - Sun, 10 Jan 2016 06:08:41 +0000 - rev 29693
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
help: split out unix/plan9 config help
335167aab197aed977d136174779b4758137ec43: help: move config default marking to its own line
timeless <timeless@mozdev.org> - Sun, 10 Jan 2016 05:58:02 +0000 - rev 29692
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
help: move config default marking to its own line
6a63fd8dd4862c870277b0132ce226e214750265: help: split config ui.portablefilenames
timeless <timeless@mozdev.org> - Sun, 10 Jan 2016 05:04:49 +0000 - rev 29691
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
help: split config ui.portablefilenames
6ff556ef5a46e29d14f2bd5e3d0ddc873d57cf3a: test-hgignore: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com> - Tue, 12 Jan 2016 22:40:40 -0500 - rev 29690
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
test-hgignore: add globs for Windows
598e210798845fb5324a7ff1f0377d43a88a4160: tests: run check-commit on secret changes too
Matt Mackall <mpm@selenic.com> - Mon, 11 Jan 2016 11:35:28 -0600 - rev 29689
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
tests: run check-commit on secret changes too
50c5192e4a5edce42a92d487b95b5d4fd1a0d58e: util: don't capture exception with a name since we don't use it
Augie Fackler <augie@google.com> - Wed, 13 Jan 2016 14:41:10 -0500 - rev 29688
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
util: don't capture exception with a name since we don't use it Spotted by pyflakes.
a09f143daaf4c76eabe2b17b4d52e147be6c625a: changegroup3: move treemanifest support into _unpackmanifests()
Martin von Zweigbergk <martinvonz@google.com> - Fri, 08 Jan 2016 16:12:58 -0800 - rev 29687
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
changegroup3: move treemanifest support into _unpackmanifests() By putting the treemanifest code in _unpackmanifests(), _addchangegroupfiles() will only be about files again, and we get a nice symmetry between _packmanifests() and _unpackmanifest(). The immediate benefit to me is that remotefilelog should not need to be updated to work with treemanifests. It should also make server.validate and progress output easier to get right. Probably bundlerepo too.
d4071cc73f46faa2c3077e4a632e3c55b078db7c: changegroup3: add empty chunk separating directories and files
Martin von Zweigbergk <martinvonz@google.com> - Mon, 11 Jan 2016 15:10:31 -0800 - rev 29686
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
changegroup3: add empty chunk separating directories and files Remotefilelog overrides changegroup._addchangegroupfiles(), assuming it is about files, which seems like a natural assumption. However, in changegroup3, directory manifests are sent in the files section of the changegroup. These naturally make remotefilelog unhappy. The fact that the directories are not separated from the files (although they do come before the files) also makes server.validate harder to implement. Since we read one chunk at a time from the steam, once we have found a file (non-directory) entry in the stream, we would have to push the read data back into the stream, or otherwise refactor the code. It will be easier if we add an empty chunk after all directory manifests. This change adds that empty chunk, although we don't yet take advantage of it on the reading side. We will soon move the tree manifest stuff out of _addchangegroupfiles() and into _unpackmanifests().
29cfc474c5fd2148de2b8d8983187050129b23fc: changegroup3: introduce experimental.changegroup3 boolean config
Martin von Zweigbergk <martinvonz@google.com> - Tue, 12 Jan 2016 21:23:45 -0800 - rev 29685
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
changegroup3: introduce experimental.changegroup3 boolean config In order to give us the freedom to change the changegroup3 format, let's hide it behind an experimental config. Since it is required by treemanifests, that will override the cg3 config.
a40e2f7fe49db96c61e2d47866cdd99200297151: changegroup: hide packermap behind methods
Martin von Zweigbergk <martinvonz@google.com> - Tue, 12 Jan 2016 21:01:06 -0800 - rev 29684
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
changegroup: hide packermap behind methods This is to prepare for hiding changegroup3 behind a config option.
443848eece189002c542339dc1cf84f49a94c824: merge with stable
Matt Mackall <mpm@selenic.com> - Wed, 13 Jan 2016 15:47:37 -0600 - rev 29683
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
merge with stable
bf86e3e87123a397f75733bc2a7f033d7a0b035a: unionrepo: fix wrong rev being checked in iscensored (issue5024) stable
Sean Farley <sean@farley.io> - Wed, 06 Jan 2016 11:01:55 -0800 - rev 29682
Push 168 by gszorc@mozilla.com at Thu, 14 Jan 2016 22:46:20 +0000
unionrepo: fix wrong rev being checked in iscensored (issue5024)
(0) -10000 -1000 -50 -20 +50 +100 +1000 +3000 +10000 tip