Fri, 02 Mar 2018 22:59:12 -0500 sshpeer: don't read(0)
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 02 Mar 2018 22:59:12 -0500] rev 36657
sshpeer: don't read(0) read(0) is essentially a no-op. Let's avoid the function call, overhead, and extra test output by not performing it. Differential Revision: https://phab.mercurial-scm.org/D2581
Sat, 03 Mar 2018 05:51:34 -0500 py3: unblock C extensions on Python 3
Yuya Nishihara <yuya@tcha.org> [Sat, 03 Mar 2018 05:51:34 -0500] rev 36656
py3: unblock C extensions on Python 3 Please make sure to build C extensions before running tests with -l: $ make local PYTHON=python3
Sat, 03 Mar 2018 07:59:20 -0500 py3: make test-ancestors.py pass on Python 3 with C extensions
Yuya Nishihara <yuya@tcha.org> [Sat, 03 Mar 2018 07:59:20 -0500] rev 36655
py3: make test-ancestors.py pass on Python 3 with C extensions # skip-blame just some b prefixes
Sat, 03 Mar 2018 07:24:25 -0500 py3: do not pass a memoryview to bdiff.bdiff()
Yuya Nishihara <yuya@tcha.org> [Sat, 03 Mar 2018 07:24:25 -0500] rev 36654
py3: do not pass a memoryview to bdiff.bdiff() This doesn't look nice, but I don't know how to make a zero-copy slice of bytes which is compatible with the buffer protocol.
Sat, 03 Mar 2018 07:00:37 -0500 py3: do not pass a list of iterators to computephasesmapsets()
Yuya Nishihara <yuya@tcha.org> [Sat, 03 Mar 2018 07:00:37 -0500] rev 36653
py3: do not pass a list of iterators to computephasesmapsets()
Sat, 03 Mar 2018 06:57:02 -0500 cext: fix computephasesmapsets() not to return without setting an exception
Yuya Nishihara <yuya@tcha.org> [Sat, 03 Mar 2018 06:57:02 -0500] rev 36652
cext: fix computephasesmapsets() not to return without setting an exception Spotted by map() of Python 3.
Sat, 03 Mar 2018 06:44:47 -0500 py3: do not pass a float to dict_new_presized()
Yuya Nishihara <yuya@tcha.org> [Sat, 03 Mar 2018 06:44:47 -0500] rev 36651
py3: do not pass a float to dict_new_presized() I really don't like the division operator of Python 3 since I'm not doing a math.
Sat, 03 Mar 2018 06:41:52 -0500 cext: mark tuple_format as a constant
Yuya Nishihara <yuya@tcha.org> [Sat, 03 Mar 2018 06:41:52 -0500] rev 36650
cext: mark tuple_format as a constant Just for clarity.
Sat, 03 Mar 2018 06:18:47 -0500 py3: bulk-replace 'const char*' format specifier passed to PyArg_ParseTuple*()
Yuya Nishihara <yuya@tcha.org> [Sat, 03 Mar 2018 06:18:47 -0500] rev 36649
py3: bulk-replace 'const char*' format specifier passed to PyArg_ParseTuple*() Perhaps we need this because 's' accepts a unicode string. https://docs.python.org/3/c-api/arg.html#strings-and-buffers Substituted using the following pattern with some manual fixes: '\b(PyArg_ParseTuple)\((\s*\w+,\s*)"([^"]+)"' '\b(PyArg_ParseTupleAndKeywords)\((\s*\w+,\s*\w+,\s*)"([^"]+)"'
Sat, 03 Mar 2018 06:08:22 -0500 py3: bulk-replace bytes format specifier passed to Py_BuildValue()
Yuya Nishihara <yuya@tcha.org> [Sat, 03 Mar 2018 06:08:22 -0500] rev 36648
py3: bulk-replace bytes format specifier passed to Py_BuildValue() On Python 3, "s" means a utf-8 string. We have to use "y" for bytes, sigh. https://docs.python.org/3/c-api/arg.html#c.Py_BuildValue Substituted using the following pattern with some manual fixes: '\b(Py_BuildValue)\((\s*)"([^"]+)"'
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 tip