[issue33209] Repeated Pickler.dump() doesn't reset the state in the C implementation of pickle

2018-04-03 Thread Serhiy Storchaka

Change by Serhiy Storchaka :


--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33209] Repeated Pickler.dump() doesn't reset the state in the C implementation of pickle

2018-04-03 Thread miss-islington

miss-islington  added the comment:


New changeset a5c8830637cde632ab3bcf5475698dcf0fb0546d by Miss Islington (bot) 
in branch '3.6':
bpo-33209: End framing at the end of C implementation of pickle.Pickler.dump(). 
(GH-6363)
https://github.com/python/cpython/commit/a5c8830637cde632ab3bcf5475698dcf0fb0546d


--
nosy: +miss-islington

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33209] Repeated Pickler.dump() doesn't reset the state in the C implementation of pickle

2018-04-03 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset 74735e2a404949b2a0c17ac13a2de0e0cac6fc41 by Łukasz Langa (Miss 
Islington (bot)) in branch '3.7':
bpo-33209: End framing at the end of C implementation of pickle.Pickler.dump(). 
(GH-6366)
https://github.com/python/cpython/commit/74735e2a404949b2a0c17ac13a2de0e0cac6fc41


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33209] Repeated Pickler.dump() doesn't reset the state in the C implementation of pickle

2018-04-03 Thread miss-islington

Change by miss-islington :


--
pull_requests: +6078

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33209] Repeated Pickler.dump() doesn't reset the state in the C implementation of pickle

2018-04-03 Thread miss-islington

Change by miss-islington :


--
pull_requests: +6077

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33209] Repeated Pickler.dump() doesn't reset the state in the C implementation of pickle

2018-04-03 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset c869529ea9fbed574d34cf7ac139ca3f81b62ef0 by Łukasz Langa (Serhiy 
Storchaka) in branch 'master':
bpo-33209: End framing at the end of C implementation of pickle.Pickler.dump(). 
(GH-6363)
https://github.com/python/cpython/commit/c869529ea9fbed574d34cf7ac139ca3f81b62ef0


--
nosy: +lukasz.langa

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33209] Repeated Pickler.dump() doesn't reset the state in the C implementation of pickle

2018-04-03 Thread Serhiy Storchaka

Change by Serhiy Storchaka :


--
pull_requests: +6073

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33209] Repeated Pickler.dump() doesn't reset the state in the C implementation of pickle

2018-04-02 Thread Łukasz Langa

Change by Łukasz Langa :


--
keywords: +patch
pull_requests: +6067
stage:  -> patch review

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33209] Repeated Pickler.dump() doesn't reset the state in the C implementation of pickle

2018-04-02 Thread Serhiy Storchaka

New submission from Serhiy Storchaka :

test_clear_pickler_memo tested only the default protocol and fails when bump 
the default protocol to 4. For some reasons C implementation writes FRAME 
before PROTO when call Pickler.dump() repeatedly.

Python implementation:
b'\x80\x04\x95\x13\x00\x00\x00\x00\x00\x00\x00]\x94(\x8c\x07abcdefg\x94h\x01K,e.'
0: \x80 PROTO  4
2: \x95 FRAME  19
   11: ]EMPTY_LIST
   12: \x94 MEMOIZE(as 0)
   13: (MARK
   14: \x8c SHORT_BINUNICODE 'abcdefg'
   23: \x94 MEMOIZE(as 1)
   24: hBINGET 1
   26: KBININT144
   28: eAPPENDS(MARK at 13)
   29: .STOP
highest protocol among opcodes = 4

C implementation:
b'\x95\x15\x00\x00\x00\x00\x00\x00\x00\x80\x04]\x94(\x8c\x07abcdefg\x94h\x01K,e.'
0: \x95 FRAME  21
9: \x80 PROTO  4
   11: ]EMPTY_LIST
   12: \x94 MEMOIZE(as 0)
   13: (MARK
   14: \x8c SHORT_BINUNICODE 'abcdefg'
   23: \x94 MEMOIZE(as 1)
   24: hBINGET 1
   26: KBININT144
   28: eAPPENDS(MARK at 13)
   29: .STOP
highest protocol among opcodes = 4

--
components: Extension Modules
messages: 314847
nosy: alexandre.vassalotti, pitrou, serhiy.storchaka
priority: normal
severity: normal
status: open
title: Repeated Pickler.dump() doesn't reset the state in the C implementation 
of pickle
type: behavior
versions: Python 3.6, Python 3.7, Python 3.8

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com