Message204478
> 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? |
|
Date |
User |
Action |
Args |
2013-11-26 14:46:09 | serhiy.storchaka | set | recipients:
+ serhiy.storchaka, pitrou, vstinner, larry, alexandre.vassalotti, Arfrever |
2013-11-26 14:46:09 | serhiy.storchaka | link | issue19780 messages |
2013-11-26 14:46:09 | serhiy.storchaka | create | |
|