Serhiy Storchaka added the comment: > Bad wording perhaps, but: > > + if not final: > + n += 9 # next frame header > write = self.file_write > write(FRAME) > write(pack("<Q", n)) > > does change how the frame length is calculated and emitted in the pickle > stream.
Of course (as any optimizer). It produces more optimal pickled data which can be parsed by existing unpicklers. > This is not compliant with how the PEP defines it (the frame size doesn't > include the header of the next frame): > http://www.python.org/dev/peps/pep-3154/#framing "How the pickler decides to partition the pickle stream into frames is an implementation detail." > > All tests are passed with this optimization > > Well, perhaps there are not enough tests :-) But the protocol is > standardized so that other people can implement it. The reference > implementation can't do something different than the PEP does. Could you write tests which exposes behavior difference without sticking implementation details? ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue19780> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com