Wed, 08 Feb 2017 14:45:30 -0800 commandserver: handle backlog before exiting
Jun Wu <quark@fb.com> [Wed, 08 Feb 2017 14:45:30 -0800] rev 30891
commandserver: handle backlog before exiting Previously, when a chg server is exiting, it does not handle connected clients so clients may get ECONNRESET and crash: 1. client connect() # success 2. server shouldexit = True and exit 3. client recv() # ECONNRESET d7875bfbfccb makes this race condition easier to reproduce if a lot of short chg commands are started in parallel. This patch fixes the above issue by unlinking the socket path to stop queuing new connections and processing all pending connections before exit.
Sat, 11 Feb 2017 00:23:55 +0900 misc: replace domain of mercurial-devel ML address by mercurial-scm.org stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 11 Feb 2017 00:23:55 +0900] rev 30890
misc: replace domain of mercurial-devel ML address by mercurial-scm.org This patch also adds new check-code.py pattern to detect invalid usage of "mercurial-devel@selenic.com".
Sat, 11 Feb 2017 00:23:55 +0900 i18n: update Report-Msgid-Bugs-To property of *.po files stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 11 Feb 2017 00:23:55 +0900] rev 30889
i18n: update Report-Msgid-Bugs-To property of *.po files This patch replaces domain of mercurial-devel ML address by mercurial-scm.org for "Report-Msgid-Bugs-To" property of each *.po files. This avoids releasing 4.1.1 with invalid "Report-Msgid-Bugs-To" in *.mo file, if corresponded *.po file isn't msgmerge-ed with recent hg.pot by translator. These *.po files aren't covered by check-code.py pattern newly added in subsequent patch, because it ignores them.
Sat, 11 Feb 2017 00:23:53 +0900 misc: replace domain of mercurial ML address by mercurial-scm.org stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 11 Feb 2017 00:23:53 +0900] rev 30888
misc: replace domain of mercurial ML address by mercurial-scm.org This patch also adds new check-code.py pattern to detect invalid usage of "mercurial@selenic.com". Change for test-convert-tla.t is tested, but similar change for almost same test-convert-baz.t isn't yet tested actually, because I couldn't find out the way to get "GNU Arch baz client". AFAIK, buildbot skips test-convert-baz.t, too. Does anybody have appropriate environment for testing?
Wed, 08 Feb 2017 14:37:38 -0800 commandserver: prevent unlink socket twice
Jun Wu <quark@fb.com> [Wed, 08 Feb 2017 14:37:38 -0800] rev 30887
commandserver: prevent unlink socket twice This patch changes unixforkingservice so it only calls `self._servicehandler.unlinksocket(self.address)` at most once. This is needed by the next patch.
Thu, 09 Feb 2017 05:57:54 -0800 runtests: check ports on IPv6 address
Jun Wu <quark@fb.com> [Thu, 09 Feb 2017 05:57:54 -0800] rev 30886
runtests: check ports on IPv6 address Previously, checkportisavailable only checks ports on the IPv4 address. This patch makes it check IPv6 as well. It'll be useful if "localhost" does not have an IPv4 address, or its IPv4 address does not exist somehow.
Wed, 08 Feb 2017 08:08:41 -0800 zeroconf: fail nicely on IPv6 only system
Simon Farnsworth <simonfar@fb.com> [Wed, 08 Feb 2017 08:08:41 -0800] rev 30885
zeroconf: fail nicely on IPv6 only system zeroconf only knows how to deal with IPv4; I develop on a system where the only IPv4 address is 127.0.0.1. Teach zeroconf to ignore IPv6 addresses when looking for plausible IPv4 connectivity.
Mon, 06 Feb 2017 17:01:06 -0800 chg: verify XDG_RUNTIME_DIR
Jun Wu <quark@fb.com> [Mon, 06 Feb 2017 17:01:06 -0800] rev 30884
chg: verify XDG_RUNTIME_DIR According to the specification [1], $XDG_RUNTIME_DIR should be ignored unless: The directory MUST be owned by the user, and he MUST be the only one having read and write access to it. Its Unix access mode MUST be 0700. This patch adds a check and ignores it if it does not meet part of the criteria. [1]: https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
Sat, 21 Jan 2017 14:43:13 -0800 check-code: permit functools.reduce
Yedidya Feldblum <yfeldblum@fb.com> [Sat, 21 Jan 2017 14:43:13 -0800] rev 30883
check-code: permit functools.reduce
Sat, 04 Feb 2017 08:47:46 -0800 perf: split obtaining chunks from decompression
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 04 Feb 2017 08:47:46 -0800] rev 30882
perf: split obtaining chunks from decompression Previously, the code was similar to what revlog._chunks() was doing, which took a raw data segment and delta chain, obtained buffers for the raw revlog chunks within, and decompressed them. This commit splits the "get raw chunks" action from "decompress." The goal of this change is to more accurately measurely decompression performance. On a ~50k deltachain for a manifest in mozilla-central: ! full ! wall 0.430548 comb 0.440000 user 0.410000 sys 0.030000 (best of 24) ! deltachain ! wall 0.016053 comb 0.010000 user 0.010000 sys 0.000000 (best of 181) ! read ! wall 0.008078 comb 0.010000 user 0.000000 sys 0.010000 (best of 362) ! rawchunks ! wall 0.033785 comb 0.040000 user 0.040000 sys 0.000000 (best of 100) ! decompress ! wall 0.327126 comb 0.320000 user 0.320000 sys 0.000000 (best of 31) ! patch ! wall 0.032391 comb 0.030000 user 0.030000 sys 0.000000 (best of 100) ! hash ! wall 0.012587 comb 0.010000 user 0.010000 sys 0.000000 (best of 233)
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 tip