Yuya Nishihara <yuya@tcha.org> [Sun, 26 Mar 2017 19:06:48 +0900] rev 31655
py3: fix manifestdict.fastdelta() to be compatible with memoryview
This doesn't look nice, but a straightforward way to support Python 3.
bytes(m[start:end]) is needed because a memoryview doesn't support ordering
operations. On Python 2, m[start:end] returns a bytes object even if m is
a buffer, so calling bytes() should involve no additional copy.
I'm tired of trying cleaner alternatives, including:
a. extend memoryview to be compatible with buffer type
=> memoryview is not an acceptable base type
b. wrap memoryview by buffer-like class
=> zlib complains it isn't bytes-like
Jun Wu <quark@fb.com> [Sun, 26 Mar 2017 17:00:23 -0700] rev 31654
crecord: use ProgrammingError
Jun Wu <quark@fb.com> [Sun, 26 Mar 2017 16:59:30 -0700] rev 31653
transaction: use ProgrammingError
Jun Wu <quark@fb.com> [Sun, 26 Mar 2017 16:57:25 -0700] rev 31652
bundle2: use ProgrammingError
Jun Wu <quark@fb.com> [Sun, 26 Mar 2017 16:55:56 -0700] rev 31651
merge: use ProgrammingError
Jun Wu <quark@fb.com> [Sun, 26 Mar 2017 16:53:28 -0700] rev 31650
repair: use ProgrammingError
Yuya Nishihara <yuya@tcha.org> [Sun, 26 Mar 2017 16:33:12 +0900] rev 31649
py3: abuse r'' to preserve str-ness of literals passed to __setattr__()
Yuya Nishihara <yuya@tcha.org> [Sun, 26 Mar 2017 17:12:06 +0900] rev 31648
py3: fix slicing of byte string in revlog.compress()
I tried .startswith('\0'), but data wasn't always a bytes nor a bytearray.
Yuya Nishihara <yuya@tcha.org> [Sun, 26 Mar 2017 16:31:01 +0900] rev 31647
py3: use bytes() to cast to immutable bytes in changelog.appender.write()
Yuya Nishihara <yuya@tcha.org> [Sun, 26 Mar 2017 16:16:45 +0900] rev 31646
py3: use bytes() to cast to immutable bytes in pure.bdiff.bdiff()