Skip to main content

Fork of Python 3 pickle module.

Project description

zodbpickle README

https://github.com/zopefoundation/zodbpickle/actions/workflows/tests.yml/badge.svg Coverage status PyPI Python versions

This package presents a uniform pickling interface for ZODB:

  • Under Python2, this package forks both Python 2.7’s pickle and cPickle modules, adding support for the protocol 3 opcodes. It also provides a new subclass of bytes, zodbpickle.binary, which Python2 applications can use to pickle binary values such that they will be unpickled as bytes under Py3k.

  • Under Py3k, this package forks the pickle module (and the supporting C extension) from both Python 3.2 and Python 3.3. The fork add support for the noload operations used by ZODB.

Caution

zodbpickle relies on Python’s pickle module. The pickle module is not intended to be secure against erroneous or maliciously constructed data. Never unpickle data received from an untrusted or unauthenticated source as arbitrary code might be executed.

Also see https://docs.python.org/3.6/library/pickle.html

General Usage

To get compatibility between Python 2 and 3 pickling, replace:

import pickle

by:

from zodbpickle import pickle

This provides compatibility, but has the effect that you get the fast implementation in Python 3, while Python 2 uses the slow version.

To get a more deterministic choice of the implementation, use one of:

from zodbpickle import fastpickle # always C
from zodbpickle import slowpickle # always Python

Both modules can co-exist which is helpful for comparison.

But there is a bit more to consider, so please read on!

Loading/Storing Python 2 Strings

In all their wisdom, the Python developers have decided that Python 2 str instances should be loaded as Python 3 str objects (i.e. unicode strings). Patches were proposed in Python issue 6784 but were never applied. This code base contains those patches.

Example 1: Loading Python 2 pickles on Python 3

$ python2
>>> import pickle
>>> pickle.dumps('\xff', protocol=0)
"S'\\xff'\np0\n."
>>> pickle.dumps('\xff', protocol=1)
'U\x01\xffq\x00.'
>>> pickle.dumps('\xff', protocol=2)
'\x80\x02U\x01\xffq\x00.'

$ python3
>>> from zodbpickle import pickle
>>> pickle.loads(b"S'\\xff'\np0\n.", encoding='bytes')
b'\xff'
>>> pickle.loads(b'U\x01\xffq\x00.', encoding='bytes')
b'\xff'
>>> pickle.loads(b'\x80\x02U\x01\xffq\x00.', encoding='bytes')
b'\xff'

Example 2: Loading Python 3 pickles on Python 2

$ python3
>>> from zodbpickle import pickle
>>> pickle.dumps(b"\xff", protocol=0)
b'c_codecs\nencode\np0\n(V\xff\np1\nVlatin1\np2\ntp3\nRp4\n.'
>>> pickle.dumps(b"\xff", protocol=1)
b'c_codecs\nencode\nq\x00(X\x02\x00\x00\x00\xc3\xbfq\x01X\x06\x00\x00\x00latin1q\x02tq\x03Rq\x04.'
>>> pickle.dumps(b"\xff", protocol=2)
b'\x80\x02c_codecs\nencode\nq\x00X\x02\x00\x00\x00\xc3\xbfq\x01X\x06\x00\x00\x00latin1q\x02\x86q\x03Rq\x04.'

$ python2
>>> import pickle
>>> pickle.loads('c_codecs\nencode\np0\n(V\xff\np1\nVlatin1\np2\ntp3\nRp4\n.')
'\xff'
>>> pickle.loads('c_codecs\nencode\nq\x00(X\x02\x00\x00\x00\xc3\xbfq\x01X\x06\x00\x00\x00latin1q\x02tq\x03Rq\x04.')
'\xff'
>>> pickle.loads('\x80\x02c_codecs\nencode\nq\x00X\x02\x00\x00\x00\xc3\xbfq\x01X\x06\x00\x00\x00latin1q\x02\x86q\x03Rq\x04.')
'\xff'

Example 3: everything breaks down

$ python2
>>> class Foo(object):
...     def __init__(self):
...         self.x = 'hello'
...
>>> import pickle
>>> pickle.dumps(Foo(), protocol=0)
"ccopy_reg\n_reconstructor\np0\n(c__main__\nFoo\np1\nc__builtin__\nobject\np2\nNtp3\nRp4\n(dp5\nS'x'\np6\nS'hello'\np7\nsb."
>>> pickle.dumps(Foo(), protocol=1)
'ccopy_reg\n_reconstructor\nq\x00(c__main__\nFoo\nq\x01c__builtin__\nobject\nq\x02Ntq\x03Rq\x04}q\x05U\x01xq\x06U\x05helloq\x07sb.'
>>> pickle.dumps(Foo(), protocol=2)
'\x80\x02c__main__\nFoo\nq\x00)\x81q\x01}q\x02U\x01xq\x03U\x05helloq\x04sb.'

$ python3
>>> from zodbpickle import pickle
>>> class Foo(object): pass
...
>>> foo = pickle.loads("ccopy_reg\n_reconstructor\np0\n(c__main__\nFoo\np1\nc__builtin__\nobject\np2\nNtp3\nRp4\n(dp5\nS'x'\np6\nS'hello'\np7\nsb.", encoding='bytes')
>>> foo.x
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'Foo' object has no attribute 'x'

wait what?

>>> foo.__dict__
{b'x': b'hello'}

oooh. So we use encoding='ASCII' (the default) and errors='bytes' and hope it works:

>>> foo = pickle.loads("ccopy_reg\n_reconstructor\np0\n(c__main__\nFoo\np1\nc__builtin__\nobject\np2\nNtp3\nRp4\n(dp5\nS'x'\np6\nS'hello'\np7\nsb.", errors='bytes')
>>> foo.x
'hello'

falling back to bytes if necessary

>>> pickle.loads(b'\x80\x02U\x01\xffq\x00.', errors='bytes')
b'\xff'

Support for noload()

The ZODB uses cPickle’s noload() method to retrieve all persistent references from a pickle without loading any objects. This feature was removed from Python 3’s pickle. Unfortuantely, this unnecessarily fills the pickle cache.

This module provides a noload() method again.

Changelog

3.1 (2023-10-05)

  • Add support for Python 3.12.

3.0.1 (2023-03-28)

  • Fix NameError in .fastpickle and .slowpickle.

3.0 (2023-03-24)

  • Build Linux binary wheels for Python 3.11.

  • Add preliminary support for Python 3.12a5.

  • Drop support for Python 2.7, 3.5, 3.6.

  • Drop support for deprecated python setup.py test.

2.6 (2022-11-17)

  • Add support for building arm64 wheels on macOS.

2.5 (2022-11-03)

  • Add support for the final Python 3.11 release.

2.4 (2022-09-15)

  • Add support for Python 3.11 (as of 3.11.0b3).

  • Disable unsafe math optimizations in C code. See pull request 73.

2.3 (2022-04-22)

  • Add support for Python 3.11 (as of 3.11.0a7).

2.2.0 (2021-09-29)

  • Add support for Python 3.10.

2.1.0 (2021-09-24)

  • Add support for Python 3.9.

2.0.0 (2019-11-13)

  • CPython 2: Make zodbpickle.binary objects smaller and untracked by the garbage collector. Now they behave more like the native bytes object. Just like it, and just like on Python 3, they cannot have arbitrary attributes or be weakly referenced. See issue 53.

1.1 (2019-11-09)

  • Add support for Python 3.8.

  • Drop support for Python 3.4.

1.0.4 (2019-06-12)

1.0.3 (2018-12-18)

  • Fix a bug: zodbpickle.slowpickle assigned _Pickler to Unpickler.

1.0.2 (2018-08-10)

  • Add support for Python 3.7.

1.0.1 (2018-05-16)

  • Fix a memory leak in pickle protocol 3 under Python 2. See issue 36.

1.0 (2018-02-09)

  • Add a warning to the readme not to use untrusted pickles.

  • Drop support for Python 3.3.

0.7.0 (2017-09-22)

  • Drop support for Python 2.6 and 3.2.

  • Add support for Jython 2.7.

  • Add support for Python 3.5 and 3.6.

0.6.0 (2015-04-02)

  • Restore the noload behaviour from Python 2.6 and provide the noload method on the non-C-accelerated unpicklers under PyPy and Python 2.

  • Add support for PyPy, PyPy3, and Python 3.4.

0.5.2 (2013-08-17)

0.5.1 (2013-07-06)

  • Update all code and tests to Python 2.6.8, 2.7.5, 3.2.5, 3.3.2 .

  • Add the modules zodbpickle.fastpickle and zodbpickle.slowpickle. This provides a version-independent choice of the C or Python implementation.

  • Fix a minor bug on OS X

0.5.0 (2013-06-14)

  • Removed support for the bytes_as_strings arguments to pickling APIs: the pickles created when that argument was true might not be unpickled without passing encoding='bytes', which ZODB couldn’t reliably enforce. On Py3k, ZODB will be using protocol=3 pickles anyway.

0.4.4 (2013-06-07)

  • Add protocol 3 opcodes to the C version of the noload() dispatcher.

0.4.3 (2013-06-07)

  • Packaging error: remove spurious -ASIDE file from sdist.

0.4.2 (2013-06-07)

  • Fix NameError in pure-Python version of Unpickler.noload_appends.

  • Fix NameError in pure-Python version of Unpickler.noload_setitems.

0.4.1 (2013-04-29)

  • Fix typo in Python2 version of zodbpickle.pickle module.

0.4 (2013-04-28)

  • Support the common pickle module interface for Python 2.6, 2.7, 3.2, and 3.3.

  • Split the Python implementations / tests into Python2- and Py3k-specific variants.

  • Added a fork of the Python 2.7 _pickle.c, for use under Python2. The fork adds support for the Py3k protocol 3 opcodes.

  • Added a custom binary type for use in Python2 apps. Derived from bytes, the binary type allows Python2 apps to pickle binary data using opcodes which will cause it to be unpickled as bytes on Py3k. Under Py3k, the binary type is just an alias for bytes.

0.3 (2013-03-18)

  • Added noload code to Python 3.2 version of Unpickler. As with the Python 3.3 version, this code remains untested.

  • Added bytes_as_strings option to the Python 3.2 version of Pickler, dump, and dumps.

0.2 (2013-03-05)

  • Added bytes_as_strings option to Pickler, dump, and dumps.

  • Incomplete support for Python 3.2:

    • Move _pickle.c -> _pickle_33.c.

    • Clone Python 3.2.3’s _pickle.c -> _pickle_32.c and apply the same patch.

    • Choose between them at build time based on sys.version_info.

    • Disable some tests of 3.3-only features.

    • Missing: implementation of noload() in _pickle_32.c.

    • Missing: implementation of bytes_as_strings=True in _pickle_32.c.

0.1.0 (2013-02-27)

  • Initial release of Python 3.3’s pickle with the patches of Python issue 6784 applied.

  • Added support for errors="bytes".

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zodbpickle-3.1.tar.gz (111.3 kB view details)

Uploaded Source

Built Distributions

zodbpickle-3.1-cp312-cp312-win_amd64.whl (142.2 kB view details)

Uploaded CPython 3.12 Windows x86-64

zodbpickle-3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (306.7 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

zodbpickle-3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (307.5 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

zodbpickle-3.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (304.5 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

zodbpickle-3.1-cp312-cp312-macosx_11_0_arm64.whl (139.8 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

zodbpickle-3.1-cp312-cp312-macosx_10_9_x86_64.whl (142.7 kB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

zodbpickle-3.1-cp311-cp311-win_amd64.whl (141.9 kB view details)

Uploaded CPython 3.11 Windows x86-64

zodbpickle-3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (298.8 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

zodbpickle-3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (299.0 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

zodbpickle-3.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (295.6 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

zodbpickle-3.1-cp311-cp311-macosx_11_0_arm64.whl (139.9 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

zodbpickle-3.1-cp311-cp311-macosx_10_9_x86_64.whl (143.0 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

zodbpickle-3.1-cp310-cp310-win_amd64.whl (141.7 kB view details)

Uploaded CPython 3.10 Windows x86-64

zodbpickle-3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (283.3 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

zodbpickle-3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (284.0 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

zodbpickle-3.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (280.5 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

zodbpickle-3.1-cp310-cp310-macosx_11_0_arm64.whl (140.3 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

zodbpickle-3.1-cp310-cp310-macosx_10_9_x86_64.whl (143.5 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

zodbpickle-3.1-cp39-cp39-win_amd64.whl (141.5 kB view details)

Uploaded CPython 3.9 Windows x86-64

zodbpickle-3.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (281.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

zodbpickle-3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (282.3 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

zodbpickle-3.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (279.1 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

zodbpickle-3.1-cp39-cp39-macosx_11_0_arm64.whl (140.2 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

zodbpickle-3.1-cp39-cp39-macosx_10_9_x86_64.whl (143.5 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

zodbpickle-3.1-cp38-cp38-win_amd64.whl (141.8 kB view details)

Uploaded CPython 3.8 Windows x86-64

zodbpickle-3.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (288.2 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

zodbpickle-3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (288.0 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

zodbpickle-3.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (285.1 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

zodbpickle-3.1-cp38-cp38-macosx_11_0_arm64.whl (140.4 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

zodbpickle-3.1-cp38-cp38-macosx_10_9_x86_64.whl (143.8 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

zodbpickle-3.1-cp37-cp37m-win_amd64.whl (141.4 kB view details)

Uploaded CPython 3.7m Windows x86-64

zodbpickle-3.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (273.7 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

zodbpickle-3.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (274.8 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

zodbpickle-3.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (269.7 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

zodbpickle-3.1-cp37-cp37m-macosx_11_0_x86_64.whl (143.5 kB view details)

Uploaded CPython 3.7m macOS 11.0+ x86-64

File details

Details for the file zodbpickle-3.1.tar.gz.

File metadata

  • Download URL: zodbpickle-3.1.tar.gz
  • Upload date:
  • Size: 111.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for zodbpickle-3.1.tar.gz
Algorithm Hash digest
SHA256 b9ec32e706c7b808b79a53a7ad96609117e94283772b400ee76552107aabcc11
MD5 8b2677562242184fd0d7e2edd9331921
BLAKE2b-256 95307f60f6f4382d472b7303255adea8fd877d2a9580d1f819102f40b694f0aa

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-3.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 142.2 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for zodbpickle-3.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6d29abac0e8f20e632288c28fadc4db5966e811c6d2cd4bc7a643478f3e78f94
MD5 9cc65100b8419cf84a70eb9baa97a3d9
BLAKE2b-256 fb55e351582cc660398f4a6d7925e19a9571d88dfd77a9cfcccd4d2699ea2aee

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 39c1b930687d73b9373f162841af3446baaf13581e6c70ac9d4b3a1eb8f0ce7f
MD5 ca55c64cc5be11ad62cf579d006e90a0
BLAKE2b-256 bc1aaddba85721c466c0449cf72f8a7a61c8417c0de49bac1968a25aa68182c3

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e53a1c7f10512c7c0a317625af28c813b5d434c8f87687404a41ff26d3326de9
MD5 07c2f48376f300de77fafedb4d406d72
BLAKE2b-256 3d56d31b9218dbd201a8eeefc2a1bb458645be6032069abdef1be45a245fa4f3

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 7c6d300a6bad8ca60dca8613db99f18aa6044a62b3498579c9566f6afb8738a3
MD5 d996fee2c96b0cbf0d164e505886b22d
BLAKE2b-256 f3b8f8c3cf18f847e57a0c868872618a067aad224d92494474ae258aaa6f8b9a

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d0941bf31f4d118f8b9627a5f0b193906de6f70f96e491b38a965a9654f9bfa7
MD5 9b09d7204a05a18b8cb7bf43ba72d080
BLAKE2b-256 b0d0b4da0da91bd7aca4f13a9cb56d27e5154ae942c6ebddcfc67bd4f44cd344

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 68c2593cb94d001b8941ac1f44e7f03956f9ca392731d2b14365285816dc1a7f
MD5 3e421a8c9cae23b4afacd4255e8ee6d4
BLAKE2b-256 efeb39d8e6a4e6740cebbd98db6ab68f9d4beefbd8b7352b715210fe9d797fbe

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-3.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 141.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.0

File hashes

Hashes for zodbpickle-3.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 17073cc39f01097f153b583c03b918373aab642c38260242a20ac5d924bd0def
MD5 7325ffce7754e6334bb5ee41c71e76f1
BLAKE2b-256 caa7fb0b9bc3590e8218b2ab83818cac60c62e955a1178f253ef6d594ddc647a

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4e37148547832015ed2807c59bcf54a63eebcc2741b3bba18a685f5f055be8cf
MD5 a8f4fba5a031047e05e6676468112bfb
BLAKE2b-256 e5f09c497c6056376959627ba0c23ba84e4b12646a36f5ccb2f793df73b3bd70

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 eb954ccb816f92388c72ab70b5835462f79a4a581446e8d60d24d6983371a227
MD5 6253fb4555558bf91708cfd0797946c6
BLAKE2b-256 3ce8c9acacbbf21d0235a33aeccd6a46149ff3705fed0fce7569920c54babe8f

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c85cb7476042dead64c1a405e3741a4d37ab403095590f2667686f9579a3d610
MD5 a34c27f6b1d4fa5e0b2eca1a043ab253
BLAKE2b-256 421c787c3e35f74403ad3b900d82261177a66af93fe246368e7e776498be8ed1

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 19c4a59252fb56307d80fd91a0cd243137a027dbecd2f383538e5a5cc6dec31e
MD5 7d01d9191ffd33417bf4dc990157ab82
BLAKE2b-256 a57a5dafe8d78a87e102d70ef64d28857119d26b5466e2b2a7b433f9ed47264d

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 31d4397a419e9a2a03250e888ba8f15d9ed6bdd5e0543565e822eacc493ece80
MD5 995ba25acd7f36faf0dc5b38800198d3
BLAKE2b-256 ccfab2b8d2ee1af2cbdacdb314d807c7c06ecebc701ec3debf330bc80d70c959

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-3.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 141.7 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.0

File hashes

Hashes for zodbpickle-3.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a473ff45ed916a180847cd3d0a5af83c8997119f1f6d3557404ea8baa92c48ee
MD5 f957fbdbff1b97f670482d08796b72bf
BLAKE2b-256 d698cecff9d7a4987b867d0407ce3f77e353b6568e22b8f99aa865aa7e548793

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1ad383cfb695916a6839d84be9600f6893c06d86d10cd9e497b48d47933ec0ca
MD5 4748247790aa4df3c8aebec86f1c6ae2
BLAKE2b-256 1d4c615ca28580dc4953c37f3d310010178bb2daf1fc103caa28bce874f903f5

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 33430539f59f5b3001cf6a0b3b5e28e88bc5b31fcb14e43f3764fe8b969c4e12
MD5 60442b5f4c044b976f98f3a2cc627557
BLAKE2b-256 8bdcac358c907e8254bb9cd54c4270bca77bab0c0ea92ab73601a7a89c8a5593

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0c9e7c3e620cdf2b5d486b11b87b7c1ad1b4d35c9ad4934975bf0417baa6f049
MD5 a097f7c257b4e4100264f9d534c82783
BLAKE2b-256 d445e4a8aa7581d9d78c7e5983e09a49d2bdb7f920f6078a0ae6fca040ad56ee

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f3a9976285bd233ae3d5f9eea1b75d8749eccc70e410b5fa8ae8aa59ab470200
MD5 d031775e87ba7bdf8d6e61d4bed6907c
BLAKE2b-256 9c8e787bee1717a18f145487b521dad6a07962aa094418171bf68463501ef276

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b5d1ce65915f0f1eef9a1a1ee0012dee36e418209f0d26964be9cf4cdbf4214b
MD5 bdd0804468e916dc48526a5e9f12e33b
BLAKE2b-256 b61529680337f22419d9a316bd01e28b1508348567415299fc850e0a9d4af0ba

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-3.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 141.5 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.0

File hashes

Hashes for zodbpickle-3.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 900c8fc0609f5d801b3d3be64264f7c25d646ce3576d35cb50fe407dd29e1688
MD5 a45248d7eb55c77b63a1d4cb16935859
BLAKE2b-256 517175a4ee79570f5db13f6920be7b926a65e842c0e6adb3f6aa7b7242323dfe

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ad2332278ac7a84e50b12562f8f45a35d8fcc940ac750036e5eb5eb2625f1e11
MD5 71728ea06122263bf32970754e42b31d
BLAKE2b-256 123e7577ac8f29da1979e14f863e8d0933ac80393667bac6e687b121267b471b

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ac5fda33337927b61238e3fd8e693f3bac7d2c3527e4ada8b4cb681952bc9da3
MD5 e610458bd25ec65ce5393ca969bd6b39
BLAKE2b-256 e512df7256f250fbc8c181c3c98f5478ef6498fd7eedbf173631d16af3ce9d3a

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 953400a61ab061218e08cf3508bb13ec81cc3e49dc228d5aa599430ebd10574a
MD5 18932370ee6302bc6f429673366687bb
BLAKE2b-256 e06eaf0152eb72cf8bfebb1240569e496db8903c7141e5275e170acb61b3303a

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d45342cf6967af82e661a27ddf62f929f74ee7ad96f06a14c02140bf65f4a765
MD5 03b6b553d1de1638e5317db9c458194e
BLAKE2b-256 9c11408af15d8b8087ef9c35a41d49ef9287fc13238dad1c1694d5ef39c2a4ce

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 09624147a83080d0ac943270c7ebe2dc4224d698c5adce245d7caa77b0b476f9
MD5 138799b6032c3155c4a32856026682be
BLAKE2b-256 8d7829a4580d13770968700abd76d5358612ebe97dca4b7f5f0ffe7accd7002a

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-3.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 141.8 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.0

File hashes

Hashes for zodbpickle-3.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 0b74df42bade8b69c2b2242c085aa9ccfb8659b2820a073cdd16fa495006fd27
MD5 450023f5c1ec5b7d436be0e3ed4f967e
BLAKE2b-256 2e1ac7a94f82ac04cc9a6cb5f184771ccda99f8e0b724266e10c16f6731b7e07

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 786000b4b1e74f62cae4b6975262239980d2f27529cdb28b830127dee256e161
MD5 1b95bb78c9f246ef99123b07c2b304ae
BLAKE2b-256 6533b02441730479ab1006b325bdf9e887abefc6227641fdd7df8000f89b6765

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c124e202f8653803d11ac0b142d86bbf21cce28423ca8059c9181431270a2fa5
MD5 7b0719c8095dedd5c79d7c58eefcf0ac
BLAKE2b-256 cfb5fee12a011185674c637e92af3558ee11aba38dbe84f24447d257dccd1215

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 03680dc33d92c5afa02e330f1a516a10c50e1c22bb255b21508dbf19c16c3a21
MD5 0a6f4d55fb722fe1b5c2fc430a7fc42b
BLAKE2b-256 3bebb6fafe797118751f82e2bf80228128dbdfb187fc264a2a8a76f645c00ba3

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f16d59b0a886f90654cd8d35eca116cda4d7bde4f961dd7d21cf3cc3aea2df03
MD5 0bc325f41d29f57cd85c54ca3e493eaa
BLAKE2b-256 4b9a777c27b25e24da5ab0c08dc46811a38e2bdf2c01a0a4a1a801eec0042189

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3a2d1661cfb5f0fbff4130e3ab332cb7c81467c6b7bb0e6c2f72e0db2231e709
MD5 f2e6a50953866ebcc52ec48777519698
BLAKE2b-256 fa1477c1ca4674c7f5b3993bd0a26c5590850854885e80482137317a5a803141

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-3.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 141.4 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.5

File hashes

Hashes for zodbpickle-3.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 84d448daa19dbb7adc365855d654e93b01d191c13e77552322f99ed08fdc7fc1
MD5 1862c0217ce0b97bbc7e4f6d9263f2e8
BLAKE2b-256 b74665b42b58182bda03b6609b98170d609160a448c9051714521b70e994f846

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9b43eaf4d7ea7047523bee796dfc01fcf192c7f7b73fd1d099f37e09d268786d
MD5 be6c69f87a9ce7955c3701fbf0ad9f7c
BLAKE2b-256 4dc1d251868654cd57a7985adaae1ff29abc821231e3da20c362f2416ac88e28

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 345f7113c65bc8475444183b5b08f1d29ae1edc6179202b131d947963fab831f
MD5 06669ce520e1415bcff87e8a242c48d4
BLAKE2b-256 fa549f60a52dc5b5d69082b9b1ecce5b15692925fd607ecd1d006db5ba19cf84

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 875b03f3e351c1dc424714bb94fec25a4c6786fe2c0f1178cc15c78db2ff7592
MD5 16326dc04835becc63cdb56c52ba910b
BLAKE2b-256 17c6ab05f15710a6e13584d1ddc91863d18640a1d691b7f9cc7c4ca985304586

See more details on using hashes here.

File details

Details for the file zodbpickle-3.1-cp37-cp37m-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.1-cp37-cp37m-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 aadbda6d574d9136c705d21a1720afc73787178a3ed6f247c06f430b61309f59
MD5 bef832672c04c5ef19e5be485028282e
BLAKE2b-256 91626bfc6dc31a9ba8b8135423606bc95632a89fc9d6f00fa9a9b312f4cea949

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page