This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author serhiy.storchaka
Recipients alexandre.vassalotti, lukasz.langa, serhiy.storchaka
Date 2018-07-24.09:16:42
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <>
The default pickle protocol is 4 now. But shelve still uses the pickle protocol 3. Shouldn't it be bumped? Shouldn't shelve use pickle.DEFAULT_PROTOCOL by default?


1. This will make shelve files incompatible with Python 3.3 by default.

2. Protocol 4 adds 9 bytes of overhead in comparison with protocol 3. This can be too large for the shelve containing a lot of small objects. Maybe strip redundant frame header for small pickles?
Date User Action Args
2018-07-24 09:16:42serhiy.storchakasetrecipients: + serhiy.storchaka, alexandre.vassalotti, lukasz.langa
2018-07-24 09:16:42serhiy.storchakasetmessageid: <>
2018-07-24 09:16:42serhiy.storchakalinkissue34204 messages
2018-07-24 09:16:42serhiy.storchakacreate