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

4.1 (2024-09-17)

  • Add final support for Python 3.13.

4.0 (2024-05-30)

  • Drop support for Python 3.7.

3.3 (2024-04-16)

  • Build Windows wheels on GHA.

  • Add preliminary support for Python 3.13 as of 3.13a5.

3.2 (2024-02-16)

  • Add preliminary support for Python 3.13 as of 3.13a3.

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".

Project details


Download files

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

Source Distribution

zodbpickle-4.1.tar.gz (115.9 kB view details)

Uploaded Source

Built Distributions

zodbpickle-4.1-cp313-cp313-win_amd64.whl (142.5 kB view details)

Uploaded CPython 3.13 Windows x86-64

zodbpickle-4.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (305.8 kB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ x86-64

zodbpickle-4.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (306.5 kB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ ARM64

zodbpickle-4.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (302.8 kB view details)

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

zodbpickle-4.1-cp313-cp313-macosx_11_0_arm64.whl (140.5 kB view details)

Uploaded CPython 3.13 macOS 11.0+ ARM64

zodbpickle-4.1-cp313-cp313-macosx_10_9_x86_64.whl (141.8 kB view details)

Uploaded CPython 3.13 macOS 10.9+ x86-64

zodbpickle-4.1-cp312-cp312-win_amd64.whl (142.5 kB view details)

Uploaded CPython 3.12 Windows x86-64

zodbpickle-4.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (305.0 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

zodbpickle-4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (305.7 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

zodbpickle-4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (302.4 kB view details)

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

zodbpickle-4.1-cp312-cp312-macosx_11_0_arm64.whl (140.5 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

zodbpickle-4.1-cp312-cp312-macosx_10_9_x86_64.whl (141.7 kB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

zodbpickle-4.1-cp311-cp311-win_amd64.whl (142.2 kB view details)

Uploaded CPython 3.11 Windows x86-64

zodbpickle-4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (299.4 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

zodbpickle-4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (299.7 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

zodbpickle-4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (296.3 kB view details)

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

zodbpickle-4.1-cp311-cp311-macosx_11_0_arm64.whl (140.6 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

zodbpickle-4.1-cp311-cp311-macosx_10_9_x86_64.whl (141.7 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

zodbpickle-4.1-cp310-cp310-win_amd64.whl (141.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

zodbpickle-4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (284.1 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

zodbpickle-4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (284.7 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

zodbpickle-4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (281.0 kB view details)

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

zodbpickle-4.1-cp310-cp310-macosx_11_0_arm64.whl (140.6 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

zodbpickle-4.1-cp310-cp310-macosx_10_9_x86_64.whl (141.7 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

zodbpickle-4.1-cp39-cp39-win_amd64.whl (141.6 kB view details)

Uploaded CPython 3.9 Windows x86-64

zodbpickle-4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (282.3 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

zodbpickle-4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (282.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

zodbpickle-4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (279.6 kB view details)

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

zodbpickle-4.1-cp39-cp39-macosx_11_0_arm64.whl (140.5 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

zodbpickle-4.1-cp39-cp39-macosx_10_9_x86_64.whl (141.5 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

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

Uploaded CPython 3.8 Windows x86-64

zodbpickle-4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (288.7 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

zodbpickle-4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (288.7 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

zodbpickle-4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (285.8 kB view details)

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

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

Uploaded CPython 3.8 macOS 11.0+ ARM64

zodbpickle-4.1-cp38-cp38-macosx_10_9_x86_64.whl (141.5 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: zodbpickle-4.1.tar.gz
  • Upload date:
  • Size: 115.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for zodbpickle-4.1.tar.gz
Algorithm Hash digest
SHA256 7ac8356b0c62dc7400f9bd265325f615eecb24f1435859c1e2eb444358afb757
MD5 ad61a45210be96e0f122a4abbbdfa6da
BLAKE2b-256 b64fcf8096626e75a78818168b000f5e457852ff38886051cf67a9fd71aaf6b0

See more details on using hashes here.

File details

Details for the file zodbpickle-4.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-4.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 142.5 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0rc2

File hashes

Hashes for zodbpickle-4.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e82df17144e658651eb9b5937572b639d20fe6762173273643f34e3f79d01031
MD5 0b044ccb0913d01e275baeb4e1844b83
BLAKE2b-256 a7c864f6e03dcaf6ae049dcbdbe7ba4f3718b2ca153888b40f55d791b049ce31

See more details on using hashes here.

File details

Details for the file zodbpickle-4.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-4.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b2999d99442a6475e1b51ef82f6a27f275047cd7691b3e9b19b1a78c8b0ac4e9
MD5 583a0249a698c208691120dd909e90d0
BLAKE2b-256 7bf32ac479f0b97fd818e7eb721bec4dbb8ea1721bdc9c4a5a7c81ca329684e1

See more details on using hashes here.

File details

Details for the file zodbpickle-4.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zodbpickle-4.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9070bc8f32b2515c180325aa7233a59dd259228fe8dc13f7e04521571f2d8685
MD5 34020f3c257ff34459c64a3056a4f330
BLAKE2b-256 8ebefb95a662639af6102e102de9fcc47d53a18076638c473502b7aad60ab7dd

See more details on using hashes here.

File details

Details for the file zodbpickle-4.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-4.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8c31252b3182a055c583a2a77fd426130b93f614a82617d607935ca0f024c945
MD5 2cd18959845a3214e51fda0d39ef5ad8
BLAKE2b-256 7b43e55b3c3d02f5cfb472f62aa98d1d9920cf4c8671b8b59f73c8cad2f244d6

See more details on using hashes here.

File details

Details for the file zodbpickle-4.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zodbpickle-4.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4784a7c70c9821d2c9a75db9784e87fdb756f894a38133485d77c85bc74e9023
MD5 6f8f8cb8ed4ab56ae78a0745d6734faf
BLAKE2b-256 f0548e46068a1305426340d8562685944ef9d51ed1fd83a2cf49810eba2fa5bf

See more details on using hashes here.

File details

Details for the file zodbpickle-4.1-cp313-cp313-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-4.1-cp313-cp313-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9e9b70a899a3635225eaacd84bc0c41241a2206752a9f41becc95906d9a7ea72
MD5 4787d770268935faa1ec97b18e75896b
BLAKE2b-256 d2230dc90ddf837b56d7aeba627aa27c31c01f5557a95a50ad6d9423b9e914da

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zodbpickle-4.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 142.5 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for zodbpickle-4.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e44ef913bd9d2d09492ddea0642c5d195014c478c67fbd0877779c081c32f9c8
MD5 130db467700370a078b8365ec8386bc0
BLAKE2b-256 a3bece5b432112b4f20d482b9d1056d1ad186a83ae78ee9dc46d8ea58af2c897

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b5e9613cc30ad7f7c2e36b7d536a4c0dd0822a355423b1dd57a6e8e8214b88d7
MD5 63b9416bec73e6af5eb5ae6620ecc74b
BLAKE2b-256 fc68636e887f2321da537c4e6c613cd52754861c52d25ecf355866aee34fd704

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e084511b0eba973af88ce1f5078b65e9bbfb4de745adee605ebcd6558fa0eb80
MD5 8e96aef99a23219ecd60cbee7fbba913
BLAKE2b-256 c3c089c106f6f9fb18febce0f192421cb235216f718c7fc9f140b6b7400bedff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2b6f417196eb9af643cd03520a081ed92b9a32e4db9ebfd99dbaa56a4a45ee25
MD5 2838542ab95436b05156b82d77400ad4
BLAKE2b-256 d919b590d320eeb63bd83d595e78d65b7f5967a755b384a9cd9311a239bb74f6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 20ee66dff074305000230a9e863f0d2c0685ebf8ed88c2ce6cbb36177407de46
MD5 9c4244e95819a0845f1db491daff9fe8
BLAKE2b-256 49fd3cf253a4e4af4bdd4eae3a50675ea05be2f367911d9575a305be08767b2e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ca86b9658d035cf6a5ff9d9855278161fb31591f58305bd3f12a525ad3ba0324
MD5 f80fb8eb15ff38ce9ffa4f0c9ab76446
BLAKE2b-256 9ab1a4bec27f6ee79dc0d493cf5c5d70f7a3052037cf0320dceb2e51f98c1a5f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zodbpickle-4.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 142.2 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for zodbpickle-4.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 93e3c65b854d6aff29b7f85ba74b2aa6cf2caf449ddb6248cfe3afc867d6de7b
MD5 dca3b17f306bc2dd6f550e3bf04ad28e
BLAKE2b-256 4844d8b8e62eb347a045af3600e32786808cc1f3c7e8870e39ef73635c6edad3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f58fbcc3d446fba5a1920c0508583156eecd4be127aa29d4731e7ba8b9342a71
MD5 3e93b89bfd0a42ab54258b1e19921d95
BLAKE2b-256 288296c858b5f5af249aa1f9923cc8f8401a98411bf0d98f09cea49ba2fc3b62

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 86ed64cdae867122c060e886c43124aeeccbf62bb847ad97223019f04a5a623c
MD5 6bba155a420cb142c4b758fb1598b851
BLAKE2b-256 36b437af950c358b05a35762ba39e844f6b9045620466c5f8f17ce2c6549578a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 31b1e3f9e967f01b7c5c925aa0de2c5b216e026780e1e35176e3ee6b3c7e62ce
MD5 256615c013293d64dc1f489c576edd4f
BLAKE2b-256 adf2e00bc1007e506579f910669ddcf8615d04e56df7f07c4dacee3bb9370488

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 03b0a12729062d29ee1db86a16f2fa5fd0ab1b31e0dbb55128a91866ab00c1ac
MD5 a55e3ad04c3f5fd4ac7816c4d65edde7
BLAKE2b-256 f210d68ed9e3e01361f5ce411ff3b70ead3d8132a4ecdb66c864a5c963c5b764

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a4d8721c9a54611f54eb75d65d37be456a640b5e8d7fac947ad97d6f220f7df5
MD5 d3e9764c4f500ea4ca4cfdaea9739fc8
BLAKE2b-256 30910a6caec1401b3585d63a23171d89077b6e9ba4e377692ecb01dd5926e0db

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zodbpickle-4.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 141.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.11

File hashes

Hashes for zodbpickle-4.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ec3c4cc1d9b86a3f410b8ba77488bed0ae21c141e3e5606833b34720c74edaad
MD5 4b616ea5920e581d30c0589975c9fa47
BLAKE2b-256 d792cf2ad440a2f8ccd7257e89d77e90cd9438a86b402851e650fbbd9950f937

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c534bfff52231810155ba03d882b008dd44785f96374756c4b236d8a45939c95
MD5 7a4c5cfd076bb083baec125d49a4ae51
BLAKE2b-256 349a679d366ec35598aaeecec573229adb1c978362702f029b43a16ffce84018

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 674a6ac070265b2cb92b82018dec8a315cf7b70615e6887032167cca2d93727f
MD5 f66fbfeeed70d822f2d4e859418161f6
BLAKE2b-256 21c1fe3cb7da117acb19bfcd639d0b3a3c2b91c443f551281c11cf490e29f996

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 4486ae889cd54bfc9f5db6d7f4f3bb694f10284d2f6ce2554e77128d97f9cd80
MD5 25e4f566c109ca4d9b08317b037c2999
BLAKE2b-256 fe5452e52f0fe3bc65edee39f29208ff1c531a53becfc939f34ea40b0452af81

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2824b97da1c7ed68130a5ee24c01a08cf26bc4f5b80af76d8bb4f9071e2b4b4e
MD5 11f03f160a5fb8abca20bd8d48ba8a4c
BLAKE2b-256 f9670b49a1906057cb4d24628988de30523bc10c3f02ab441a10acd330fc87cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4375df5f6fca4c93d133cf336d4e14b6ff282556461aff26b30bc878843340a1
MD5 ae0a7beaebede8bd65e8efff8683c904
BLAKE2b-256 4f712bc7a97a843ec2f677ca044660f6051ee721638de252d4774d549255a39a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zodbpickle-4.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 141.6 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.13

File hashes

Hashes for zodbpickle-4.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3da4c07d384a34dc691de0e3aa8ba3256ecd2ccaa915ee029ecd8701fd3e30f2
MD5 3bdd011922645eab79a1a3cc8356fbc5
BLAKE2b-256 99701ece3000d8ab214393e3359c4b447a8170a850de8f92493eea628a7b1f48

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4dcd5d7459fb08185d4ddc35013c9bbe9059011fc9c56a3b2076fc3a4ee2a18a
MD5 599ad872529003084d41f3fe46aa8a6b
BLAKE2b-256 9bbfebb93c75a15a3ea7d8af3b59230b248208998772f6aa5fde9172d266e094

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0c7ece5da659bc7bb4da875616da1d188a65f29afbd3b5897850faeed40f8dc1
MD5 c37238ec1fac65e9f5887bd6f053ed79
BLAKE2b-256 67d36c55e39f47eb9fc740980e86509495b831c89f5adfb73ea30109050f5d9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 1ec43cde12c674a45ca0ed171224acc1e1400ec897aaf80ad990c590103fed14
MD5 a25bc46dd019d253c7cb1b211ae54bc0
BLAKE2b-256 7c7e16bb6a6ed377ae20ff26ff67a23674491df7b7229c104ecae323f0def6b4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 516fb36c328e63cff2632182c3c205c35339f3b0fe7fbe3834679cf63bda10f4
MD5 7e8d71378ec18f798ffc7a1175edf151
BLAKE2b-256 faff72e5c17c8e010cb05406a9a9ea3ea154fa7e38d8735dbaa5dd7dbe173776

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d9c2c0d30d37b5c9175c593cdb72bacc030f580520adfb08f7b79890b772fec0
MD5 3266da4fa681b1e3822942294f9adb8e
BLAKE2b-256 708be8c674ab5ae6a7d1338973f662f269d66c1c6d33b7f43b6a238bb407b5a7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zodbpickle-4.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/5.1.1 CPython/3.8.10

File hashes

Hashes for zodbpickle-4.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 0a4374919844fb10e18b2587258c3ee7d2e232bb252e6f49fb7ad067ba5f36ef
MD5 e8398614adc26aba117a663938a3a85c
BLAKE2b-256 6742a6c9290a3446853c52aa2240b5abf64d0541743a88620cd00b5c83f27763

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 69dc39991b4e2f013045655bd7c24e3b59bbeb8f007ec6473d32edc52d1ccf4f
MD5 de5e980e8be51c739d5b502d57418169
BLAKE2b-256 2afa992259ec1d62916c7a2c7ac3f79354e5e2a6fd9fae27ec6ed037f2e2873e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ac1746dd66188f27c50edd3e40773242164095e913b2fe7a72d297201f064abb
MD5 59d7b91c0169bc9f24e360e6c52d3ca0
BLAKE2b-256 c7523cc30cc8a50866796106208606b524660337e7c759434363000182a7b3b6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 7edcca5aecc70a786fcd9d7881653e904983193c5d2e5d62d065249c6f1b7248
MD5 6176c8ecdab459fe1373fe87cda22b5b
BLAKE2b-256 f56d30cb8df1f6291c9621823bc8cbc9609afcafcae5e9b6ec35f71c688bcde0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e9e3478a5600456a0139cc8e8e551554465ff4fc95a1a9308460accc4c9fc758
MD5 4d178bfb9b5530e9afd13218295f771b
BLAKE2b-256 1c6822784fc783697835508cb49c2dc80bff0191b063174cdcbf1dbc23d8b66e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-4.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 17fe72a45e64b55124d6f271ea3541f9dee383897313331ff03a09d0b2c65a12
MD5 b96ae62ba10a32ef8df8a60a97773bb2
BLAKE2b-256 7aaa1902cbc7afced657583b18993bfdc52d42788778fb1392e398bc96c8e98b

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