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.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.0.1.tar.gz (111.1 kB view details)

Uploaded Source

Built Distributions

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

Uploaded CPython 3.11 Windows x86-64

zodbpickle-3.0.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.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (299.1 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

zodbpickle-3.0.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.0.1-cp311-cp311-macosx_11_0_arm64.whl (139.9 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

zodbpickle-3.0.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.0.1-cp310-cp310-win_amd64.whl (141.7 kB view details)

Uploaded CPython 3.10 Windows x86-64

zodbpickle-3.0.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.0.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.0.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.0.1-cp310-cp310-macosx_11_0_arm64.whl (140.3 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

zodbpickle-3.0.1-cp310-cp310-macosx_10_9_x86_64.whl (143.6 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

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

Uploaded CPython 3.9 Windows x86-64

zodbpickle-3.0.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.0.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.0.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.0.1-cp39-cp39-macosx_11_0_arm64.whl (140.2 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

zodbpickle-3.0.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.0.1-cp38-cp38-win_amd64.whl (141.8 kB view details)

Uploaded CPython 3.8 Windows x86-64

zodbpickle-3.0.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.0.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.0.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.0.1-cp38-cp38-macosx_11_0_arm64.whl (140.4 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

zodbpickle-3.0.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.0.1-cp37-cp37m-win_amd64.whl (141.4 kB view details)

Uploaded CPython 3.7m Windows x86-64

zodbpickle-3.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (273.8 kB view details)

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

zodbpickle-3.0.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.0.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.0.1-cp37-cp37m-macosx_10_15_x86_64.whl (143.5 kB view details)

Uploaded CPython 3.7m macOS 10.15+ x86-64

File details

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

File metadata

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

File hashes

Hashes for zodbpickle-3.0.1.tar.gz
Algorithm Hash digest
SHA256 0f0975bdd4a7615320e74af2b0b8be4763c73cf8bf7c4212ab72044289e77498
MD5 61d9767032e7aba1b42de52b5df963ad
BLAKE2b-256 2fff68ad84892488418896004278c0e88bb87b2a8654c9e387d03ac7016bcd87

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 fcbdab1b4f6eb596d537f8237c34ea401b0a12c54c6d2507ab16570247b52f04
MD5 713becbf25a549931a63459899fd0564
BLAKE2b-256 961821b48aeb69db48df18741bdb3f782ce6e8753b37e0aa10aa748c3240e912

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 189ba7a64e47353851407628b0599ab8acc8c16cf7adc3ec3132ba2b5ad2aafd
MD5 6cb9dd254a1d034a953bf1dd65b1b86f
BLAKE2b-256 68a6b2689380fa7d842a4b2cd8d3b9a6386dabbd035a47e3930d605d398cf815

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7c93486da9f638d93d24e8658c05fdb64964172c8b1a73e553a15cabf2da8d37
MD5 06f5cfa265b4f3f5da8a6bef256dcc69
BLAKE2b-256 6e9381869884ed43433e54bbed9995937eb8cfbe26aeffef9abe6fe8b85dc5d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 156371b488536dd07257e19f11a3f04b70bb5331df3a3b1864f207c62a8a06ab
MD5 7f449bbdd87ee5bd30ab27aae7eb5622
BLAKE2b-256 6f8c1b0daaa79a3b03f90696649659c48f37707984285e1098d22cd4bb31c7ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9266dc8112133e45bf42a1267b72b07c483a4d47f23bed8f63c9c46c7f42c169
MD5 3134a0ac55cc7d40dad00fe77a0b22f8
BLAKE2b-256 2df279756433b161f427cd90519b58141eb13a91b01eadc3b1299d5b64599ea5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 023d75d7f323555b9fd7588d6be321c10244adfc2a24c8be645b807d371efec6
MD5 a06b2d3f05455344837821a0e666e23e
BLAKE2b-256 270c8a4e77468504187623355567fd68aaad9457f45b1d6bb1a446f2489d865c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 8089ff8c01c982b4d7316a052ad71e63b007c88c1963625c999a28ae4e524ea0
MD5 c56ddf3e2913c2c1e95d63afb930d43b
BLAKE2b-256 c5ce799ed993612e140ee612b90b536b836387950c336835e8462772560a930a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 963873ed3ec611b8b0e678f0dd013f83fb8284a184b41f36c8a0a83c5e29baef
MD5 8945145e886f4910cc49908e533a25c0
BLAKE2b-256 fafb566078e7139ace3fa6b51625334f0be6f018149569e6998041da01ad0699

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c867e2588cd15805113212292564509ff669aa7e4181385bb0619686e168f207
MD5 14ffbee3bc1c4864d975119838a76ee4
BLAKE2b-256 f89a84025072a2fdec8bc51bce2f26ac7389976421cfac0e787359f7e2e028a2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 43ee315ab9ad2355ab1f33225cf84a098c4f7cf4e9b2e8760a8f8be1cf0c4535
MD5 5b3a4ba6bc4287b6a443e0b81e4c413b
BLAKE2b-256 9eaa2eec1cabf5262e5b3df9e8e2bb390a06cc128eefc0a9b17d98ed059279d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f5c5f0ef97b1f8fce78caa820fef23595de5726a3ecc400aaf79b752f1c258d8
MD5 88ea0af99dd7a957ed79fccb163143d9
BLAKE2b-256 6128fd2493d3532437ef6b04e021955fcfa842efcad7d2287d28f4ae78609e3d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6e6468bdbe53d6e8d96e345d221eaaa14bfc34e4be4cf9d434d35743dc459e6c
MD5 e7626b780ad7f2d711da4dae5978a9d4
BLAKE2b-256 c2e3ada8f69e3e9281d4d518f505f947818467253de4339b5869350910503d15

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6d1d0ad8ed32b03a38f8673712ac8b3c5c8a8c8d3bd72a80696db7d0fb674d91
MD5 df7828e1a0fc2e6485ce35fd46225870
BLAKE2b-256 61b67676bc0fe7a600c562b13a476ea2fe90775231687ee3bc7af0fa735a815f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2e5cc7c56085c415b5d33325ca94ffe7ac19ec505265db93b2a2fa70cbf0063a
MD5 da22ab8902d639d32a47598dc463de93
BLAKE2b-256 be61a69216c9b9d8777092e62527e99b665ffbeedd30a542989e11c8dffbd9aa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d6b61c594ef921c901e421b48f1857442b2c962d8dedda166100a76a9154fafd
MD5 24ed92deefe2d5fe3b90c654a76efe83
BLAKE2b-256 00a183128861d879f384c7b186541a8b4d18d31b9fb6239a364a5f6a86787a6f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 3138cfad7d00493b2ed0626128cef6b6e7e84d5011eb3ab33d612d8589eb742f
MD5 32e0aed19440379604fa0051bf8edf3b
BLAKE2b-256 91bdf2fc02119ff03d6ef9c5c749da64e8a30613d81d99135d13e125ff3470f4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a13a791615b0b230e599a0abc961d8d26345c9ab0a43ca9d8a72e2a606a6ecd5
MD5 363c7a3e3387c4c3b30bdedb44e6d9bb
BLAKE2b-256 010e6514f29691bb4f0e8edeb077c1e28a41309b5e64797a427943b0a9d90134

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2165721b2475c3a95950a960ea863a2851eb5389705e45c02aba838d669f6b64
MD5 880a55e1b8129c2332022d3079398c5c
BLAKE2b-256 88f3adf178f5144a27577f80b071eb51838c49567ef3d11eae32e61eb19834d0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c3827131253837014ffaaf9c3eedf8807f6ad3af47b26cd2a7f75d0f03eb466f
MD5 89fc87deb6b772a0bd8677548fe8fe96
BLAKE2b-256 d224f667cb95f79cfacc6bc99a0525de8ef1dd4a9b14bf303f0c0fd56141e286

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4923dcfd48dd629b9a9352b1a0d13ac129f502f8674118f5d6ae4b9406d6bd0f
MD5 37bb24ce6b5daf6b779ffd4e9884558d
BLAKE2b-256 317141a078d62b1999da215fdfb02fce1ba1a17ce3a3438e266ca439240037cc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 91f52f80d59bc5d005f0788e2797ac6d25e993f38730c684a2eec5c8f5f928d4
MD5 069b0118387504888b5d4c14883316a4
BLAKE2b-256 52ea7ecb3dd16339a48f6ee72c116fd1a02f7b5b9add4663295138ec88069159

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 770e833290894621da69bdb90317070a26ca64f6d266d5bfe5fc9d59524c2694
MD5 bfb0894e81b9fd18d586f9642ceb1224
BLAKE2b-256 b7be143a419e228b1043b2fdb7dd0134052c6d748904385386bc7c03a44fdaa4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 53744793e8d1cb78a5266834551ded320bc57d3f0f3b15173400bff07d6dea5b
MD5 84f7f72b3b41d1c9b7324cce63168bf1
BLAKE2b-256 af26e63d711a2d620ca5df066a94d13b7462c9a2257c7cdfbdc4e66e709faf24

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 507672605448d15d551cc3d3d7a07a8e020b72cea72174fec2b004c2ff08194b
MD5 fdffb9e15d3681ef6812e81b6a5e447f
BLAKE2b-256 9f70dc3d67a2f0076271c05a7b5fb5724ad4a3469d3cdb90dfbed8814a87602b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 49bd0631baaf07ccf48129a635896a95b0f3fceba88207f1411be9fc66c6258f
MD5 8e109750c36c8a67b8f6e5e130e48f81
BLAKE2b-256 8ec33e6aeeaf79fde286c5b8d8ffcb582a73673889af8493dab09dd7e0ba4bf2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b96ad4dc089c445a8fdb03205c4f96dab93de786962a1aeceabf24612736dc54
MD5 18d9bf34bb9e26ccafa77d66b3eae26e
BLAKE2b-256 2b9ac4172b8e8068efe7fc3fd21b4a4b48a58e0b1923a70ecda8ae7e51449961

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0bc212dfc90f702c9f0095c76b77708b30d41be36b599641de8a73c7be73b2b6
MD5 b5102f3333109a78e2bb7e5b849a4a99
BLAKE2b-256 96f68669fbb8838143b1a4eaf6ecb830b631713a4883ec1f5495fb9fe1527893

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 acc095c8cc5364266b447600adb1a80155bd8c31cff46ee94f81730c6a9fbcd0
MD5 e878f31126b0295229c458552823c42e
BLAKE2b-256 aa4b8faeca6ed3285a4be2444e5a69e7519770be47ad20f538132ac8dc6e5c5a

See more details on using hashes here.

File details

Details for the file zodbpickle-3.0.1-cp37-cp37m-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-3.0.1-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d84d9de119efba08c959b9d3d64c20f7f3e692373cc21552dd7ec47c4cac6fe9
MD5 6a7dbc614bd4962a12bedbdb33ce04f9
BLAKE2b-256 1050b98e16a27d4369cf31436d41572201e484a35aac0bfda575da6dcca74a39

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