Skip to main content

Fork of Python 2 and 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

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

Uploaded Source

Built Distributions

zodbpickle-2.5-cp311-cp311-win_amd64.whl (220.8 kB view details)

Uploaded CPython 3.11 Windows x86-64

zodbpickle-2.5-cp311-cp311-win32.whl (213.7 kB view details)

Uploaded CPython 3.11 Windows x86

zodbpickle-2.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (378.0 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

zodbpickle-2.5-cp310-cp310-win_amd64.whl (220.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

zodbpickle-2.5-cp310-cp310-win32.whl (213.7 kB view details)

Uploaded CPython 3.10 Windows x86

zodbpickle-2.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (363.0 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

zodbpickle-2.5-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (350.1 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

zodbpickle-2.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (344.5 kB view details)

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

zodbpickle-2.5-cp310-cp310-macosx_11_0_x86_64.whl (222.7 kB view details)

Uploaded CPython 3.10 macOS 11.0+ x86-64

zodbpickle-2.5-cp39-cp39-win_amd64.whl (220.4 kB view details)

Uploaded CPython 3.9 Windows x86-64

zodbpickle-2.5-cp39-cp39-win32.whl (213.7 kB view details)

Uploaded CPython 3.9 Windows x86

zodbpickle-2.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (361.2 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

zodbpickle-2.5-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (349.0 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

zodbpickle-2.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (343.5 kB view details)

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

zodbpickle-2.5-cp39-cp39-macosx_10_15_x86_64.whl (222.6 kB view details)

Uploaded CPython 3.9 macOS 10.15+ x86-64

zodbpickle-2.5-cp38-cp38-win_amd64.whl (220.7 kB view details)

Uploaded CPython 3.8 Windows x86-64

zodbpickle-2.5-cp38-cp38-win32.whl (213.9 kB view details)

Uploaded CPython 3.8 Windows x86

zodbpickle-2.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (367.0 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

zodbpickle-2.5-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (356.1 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

zodbpickle-2.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (350.8 kB view details)

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

zodbpickle-2.5-cp38-cp38-macosx_10_15_x86_64.whl (223.0 kB view details)

Uploaded CPython 3.8 macOS 10.15+ x86-64

zodbpickle-2.5-cp37-cp37m-win_amd64.whl (220.3 kB view details)

Uploaded CPython 3.7m Windows x86-64

zodbpickle-2.5-cp37-cp37m-win32.whl (213.5 kB view details)

Uploaded CPython 3.7m Windows x86

zodbpickle-2.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (353.7 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

zodbpickle-2.5-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (341.1 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

zodbpickle-2.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (336.0 kB view details)

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

zodbpickle-2.5-cp37-cp37m-macosx_10_15_x86_64.whl (222.0 kB view details)

Uploaded CPython 3.7m macOS 10.15+ x86-64

zodbpickle-2.5-cp36-cp36m-win_amd64.whl (221.7 kB view details)

Uploaded CPython 3.6m Windows x86-64

zodbpickle-2.5-cp36-cp36m-win32.whl (214.4 kB view details)

Uploaded CPython 3.6m Windows x86

zodbpickle-2.5-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (352.5 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ ARM64

zodbpickle-2.5-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (340.2 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

zodbpickle-2.5-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (335.2 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.12+ i686 manylinux: glibc 2.5+ i686

zodbpickle-2.5-cp36-cp36m-macosx_10_14_x86_64.whl (221.8 kB view details)

Uploaded CPython 3.6m macOS 10.14+ x86-64

zodbpickle-2.5-cp35-cp35m-win_amd64.whl (221.7 kB view details)

Uploaded CPython 3.5m Windows x86-64

zodbpickle-2.5-cp35-cp35m-win32.whl (214.3 kB view details)

Uploaded CPython 3.5m Windows x86

zodbpickle-2.5-cp27-cp27m-win_amd64.whl (214.5 kB view details)

Uploaded CPython 2.7m Windows x86-64

zodbpickle-2.5-cp27-cp27m-win32.whl (210.6 kB view details)

Uploaded CPython 2.7m Windows x86

zodbpickle-2.5-cp27-cp27m-macosx_10_14_x86_64.whl (216.7 kB view details)

Uploaded CPython 2.7m macOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: zodbpickle-2.5.tar.gz
  • Upload date:
  • Size: 186.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.8

File hashes

Hashes for zodbpickle-2.5.tar.gz
Algorithm Hash digest
SHA256 cf53b52bcdacc73594aa81fa88fc88e620a44092614f29044c0a2c8afb60e1fd
MD5 b912e67e24250eb3ecf498c78fd3c0c8
BLAKE2b-256 ce00c0ce06c08e64c6a86424715c4fa1c09efb2509ad33b7fb13b6ea1a96f1e5

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for zodbpickle-2.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8a09e615c496ab335c3c17642d9e9f4de43be5e981190315c03a9922ee0ec1f7
MD5 1f4b7559bc45aab154d5b03fc7c92bdd
BLAKE2b-256 9235dc457958e3f3ccdf565b57ffe22ad009521361fb2a83eabc0c5fa499171e

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp311-cp311-win32.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp311-cp311-win32.whl
  • Upload date:
  • Size: 213.7 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.0

File hashes

Hashes for zodbpickle-2.5-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 7eb628d2df587580df1108b0967a20c4ebf94eee1dd2c0fe85975ec13cd737e3
MD5 fce2923d788af6151daf39dbc97a2cdb
BLAKE2b-256 53f043cc8a0be6c29dc4c255324179279d5e008c2dd007f5d0be6f2d8e6456af

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-2.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 aec3f757f39aff1efe5f95d6224d77f11fe058b51e62d0b0ce403d80f3200256
MD5 b07bd7b4c5bbced41a978ee5b270e810
BLAKE2b-256 0b2e3eb928453116c04173da7d153eff36a19bea7f19dc43aa3b09f8be6aa02a

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for zodbpickle-2.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 7e1f564db62bb68b378eaf93eed0b453bcf8c990301f1aa2f19e79ea9e7dd061
MD5 484c7293cbea739428da15ca4a254e13
BLAKE2b-256 6ff8df8ee68a44c2ccb576523ca1ac4c7522821218fa0e36f726630f8bf5d691

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp310-cp310-win32.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp310-cp310-win32.whl
  • Upload date:
  • Size: 213.7 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.0

File hashes

Hashes for zodbpickle-2.5-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 ee29c575233888339ff50a9f6335e88e2a7e314ce4d76f7bc308654ba3d44b2e
MD5 09815a9518c30027df8aa90b3fd7c349
BLAKE2b-256 2585f59087efd2e4c34af3463b5144a378db413f4e0560275311a067bf56f5ea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-2.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0b799dd56fd8b3cef2f818bf60606fe35864235e8ca367e53248c06bf8f39682
MD5 06a88a76967754466d5816d7b1943cad
BLAKE2b-256 d51e12f3bd95dd54267d08d0dc43f159a41d764ffa5354416939b5f4dcc0edee

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 1cff04d90fd97f8a46d11bf55569f54d27288e379bc13b01c49ae6480d1e3e15
MD5 60becb7c49044c8d3036154c7a82401a
BLAKE2b-256 80c8f3469ab4d931f7493c96565e95bebd8744e308fd02b2b615efbb06f99455

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 4ba919925686f9573f2785060ce609b2f8c79b98992a539e882af00c60a9b92c
MD5 5f5b65cd5512dd06fd9cf8e7b98debd7
BLAKE2b-256 69eb408525f8ba975cb196800644e176592efa2c38a7f8fb5eb963218bf1e66a

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp310-cp310-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 b3a50f32f4862693fc6c069f9a03d8d3d7d08458cbffd29ebd428a210764c042
MD5 49168b70546735045e482e6e7b8c497b
BLAKE2b-256 6ffb85be8d69bb4f402a7f540c52b5113a6f6d15e04ddd23a46506983f55d7a0

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for zodbpickle-2.5-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 455305fbeb8d9ee11d475a93ee972a8e79aad2a002da352de3328825edd77964
MD5 1ba4eedbaed9a5ac70aef30c235de08b
BLAKE2b-256 3dd80643bdd2ce84167b45c90ed1817508f42522522ebc783e1d2a78a5f2a97b

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp39-cp39-win32.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp39-cp39-win32.whl
  • Upload date:
  • Size: 213.7 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.0

File hashes

Hashes for zodbpickle-2.5-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 95b4c18ae41750ffef3522a8cdd6fe402d0f622a22178924319cec6c1a9e4e4d
MD5 c398693f6cd5561a2e318e2485270b7a
BLAKE2b-256 70189f4d5287e73b006e8c063304661b423d7daeb62c9f10700e7ea8681c0f20

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-2.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4255eccffe6cb1a845f59fab2c9646b02834e8d50ebb3e932e8ee9429a78583f
MD5 619adb452e30f590fe67cc0a5bc375f3
BLAKE2b-256 964669b3ac7afc34db4024f26e3d8db45d08e084b12522e99fdbd8fd7c7d152b

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 a04d8b52ee2bd4730b543547ea76da2c3b39ee66d0a8dea7aa25041bb7976042
MD5 d77825b33122aa1f194b1428f3e69d81
BLAKE2b-256 f57a73951df6104e770ad54122f29f0df5429bc7df41b0d6e89729cb9b726fff

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 e661b00d0de253d2dd4d1000b45e8b80a29d080278ed6e0faa99197816c7284e
MD5 f0d21f7564dfa9a0dc42d7f1256f690a
BLAKE2b-256 e0a89612abff2c593d2f116133b64754da935d9d12ff5540a42141aeee60a1f0

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp39-cp39-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 7394dfd8faa35e377605686b84701b5d7d01092166a1d7ebd8f7176680b45e5c
MD5 4e8cfc9d1cb68b317ba44a7f06d5299e
BLAKE2b-256 f517e21e0ce555e626d007c1d8a7f6ceb7a3c6e78cf47a7d23d0285c75e64ac5

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for zodbpickle-2.5-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 0d1294095af9a06321852b263bbc92e45007f722c42b0089e1c3ffe6169c1e30
MD5 7eed1174b6537a21c2b39c7582ff788c
BLAKE2b-256 9db94f30ff89a1d9c53287fc79dd409f1093475d3691f07b2db893327d1eb338

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp38-cp38-win32.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp38-cp38-win32.whl
  • Upload date:
  • Size: 213.9 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.0

File hashes

Hashes for zodbpickle-2.5-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 b74b28ab70101e1c085d60ad73b9d8965af2d645e3e40c928c5c8863e5475aff
MD5 7c10761262d6523484892f3b36f0e969
BLAKE2b-256 b673a0d75e60dc412c0a4a05f5b850ba81ebe869d97464649197e7f67b6afa2c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-2.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6a5ed726bc97c23666d48fc70e539beac6d1610e0893462ec552927d4f7978aa
MD5 ac5c3b0a03ea13d7b36e50c07c48debb
BLAKE2b-256 a1783c62982231fe42cbb67d95178d635348f662b9fcdd5b5a2576d5dec44196

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 b1c950afe728121e450a0c20a9882a199f284cf32208b4d2fa7ceb153f172d18
MD5 2282e364de3c179a0c3f37b2b5beeac7
BLAKE2b-256 ccb7bafd57df2492820e2029520e22a13ab489bbe048fbd213fd995aedc1ef20

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 cc9f37414c05f72bbbcfd9d523fa1f1382f398334ebf0581a2690358a06675b8
MD5 d237ff99fb3019ed68cfd978704637fd
BLAKE2b-256 86772b5a3f0922108b98a665a15930d1462c329ecfbf4ab166bc48bb08efca3b

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp38-cp38-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 0e3bfd6d1258573f57646dccdb4be6a7f1019a30cf64910122a7f9e9420ce147
MD5 47277bd038ee2895ef839af6aa85d143
BLAKE2b-256 2832a680dc8dafbcc6c9a535763c5d63ca226bbd40dc38408f0293bc3cd63261

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for zodbpickle-2.5-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 28a433f29e9fb879d55af4cee4492cee15be6893fdea97e94959cacd27c83e6d
MD5 1dcba03836798f114d276b3286b8953b
BLAKE2b-256 7ebd4f9f953d2d876674efd3e95b50c459c4f7505dd5467f0e74d165f8ada53a

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp37-cp37m-win32.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 213.5 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.5

File hashes

Hashes for zodbpickle-2.5-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 f0bc5fe613502fbea8448fbfca7e9cb3c221d328cb0c6961ebe2454a6be16381
MD5 89123345ab22d373a47492ae55c30c8d
BLAKE2b-256 235fa8fdf5dc2a2eae7029a8bc57e1d080f782b33668ad9b0e1d5fdbcd86743f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-2.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2c61681a0d676bf67a3643ebffa8a9bbffe9198fc2bbec661d4c9eef770146c0
MD5 d050726e194c4a1b4ee156b2927a280e
BLAKE2b-256 12d504a017784ec3c7b61d837e3b788253fd045484a58e57345622de48183e0f

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 a0330881d56d0b5b8b15dd407902de93133047f1affee408f17c49b15dd65bd6
MD5 62ab601621275deae567bd63e9100098
BLAKE2b-256 d75113ef346b09ea00fa277b4b05f4e57aed34aa80d686972797801c05c4d018

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 d62962cb85d82f0f9fedae513fca28be118e6db181927201368f1b60e44ebe34
MD5 f5a291bdd64dd38bcb5635f753487b48
BLAKE2b-256 7d0b2158922e3339c8252953e95983216400ba4dcae724c0817ab4f8915ed542

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zodbpickle-2.5-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 ead8ff27b821c490722eb3fb108814678ecc914808d2f160f41a026c998534c0
MD5 f49c945f51b1c0e0cc46f0a7247b11b4
BLAKE2b-256 90ce338eef5b88e233a3090e82caec6b219b0bec71b7b1c29130b98ad6edf716

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 221.7 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.10.1 urllib3/1.26.12 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.8

File hashes

Hashes for zodbpickle-2.5-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 163876498d9c51b4572f6ef3f371b93b65b802a5d3f4246dc94e18652bf5e271
MD5 a0c29fba25a5967c81c070e7b53afcd4
BLAKE2b-256 309acddf02d88b8d3eeeb5225cddf783147635b8fcda1d8a1481505488e31b42

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp36-cp36m-win32.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 214.4 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.10.1 urllib3/1.26.12 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.8

File hashes

Hashes for zodbpickle-2.5-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 ae180e4ba913c02059422cad0181e0c294a08a1aa44301d297c10fd236fc9788
MD5 4a160c92b68b8af6f077e4912058d33c
BLAKE2b-256 bfc38b976decb9881eb1bf90c44b78affeb4518c38ffb588c23f38aa1e193844

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1b6954190eb352a00b71f3c8abd4203853817a42c42bacbecc106c01020d2039
MD5 3c90ba7fb7df862d9dbc038568e36133
BLAKE2b-256 3ca30fd31adf8ab63102569180131ee8be48057ed1c6d97f1865b2eb3a4a1497

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 0adbadf148f9347cfdec3ff32952f9353e267482ac4cef87e340953f136ea39b
MD5 7245555756aea54bbbe8153c4e3d5b45
BLAKE2b-256 ba72cd92f730ec1d0ae5c42bdbdac1e9845c31a0b3929f8a38988cc583fc697c

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for zodbpickle-2.5-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 662da26218060ec9f030abdde1fcd0a00cbcf75a29073f7a3b946c3d349f91a6
MD5 802bb0f15314e7747c89a1a6ac0bf0af
BLAKE2b-256 9522bba3a411e12c61e945f3c0db711c50e3bd16f43c77bfec12426424a99cbb

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp36-cp36m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 221.8 kB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.10.1 urllib3/1.26.12 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.15

File hashes

Hashes for zodbpickle-2.5-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 39dbd0c315e00915d31679d835dd11f7f3096e426ce074ca2abf0c5f65db19d4
MD5 09e673d53cc02febfe8d1d6e22f7f635
BLAKE2b-256 fd80e2cf8516d776095465f9861ac28f3618a8abec451a201f714a09ebe592e4

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 221.7 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.2 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/3.5.4

File hashes

Hashes for zodbpickle-2.5-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 7e7cdf1a7fb944d4b77291a7862cd03ba1f81d81942e08561314d6879a7c2eff
MD5 4514c87340e0c5700e675f2a8586642b
BLAKE2b-256 b35f269706c8d77fabc86938757808cfa3733fb6bdd9bb3080653cccf67e80c8

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp35-cp35m-win32.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp35-cp35m-win32.whl
  • Upload date:
  • Size: 214.3 kB
  • Tags: CPython 3.5m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.2 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/3.5.4

File hashes

Hashes for zodbpickle-2.5-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 ea26698008fe416ffbeb70313178dc3b5b9a02b02a613f5aabf7ad7e842a2b94
MD5 f0647356f43c687a2f5b6872408bfe3c
BLAKE2b-256 c8fd595d33c6b2c2a01f7e0257d81518738c5d503032f70acd2e72de8c36aa39

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp27-cp27m-win_amd64.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp27-cp27m-win_amd64.whl
  • Upload date:
  • Size: 214.5 kB
  • Tags: CPython 2.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/44.1.1 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.17

File hashes

Hashes for zodbpickle-2.5-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 37574e35d6f2a8135f4c0c2abbf89dd5610e00636179755bd3b5c0ab74189740
MD5 71192ebea01976f36e2f5cd27cad6c2b
BLAKE2b-256 ac9e834e0ad2b995019759f99e9a5a981b46b997188ac1d642c3eb25afa2b735

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp27-cp27m-win32.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp27-cp27m-win32.whl
  • Upload date:
  • Size: 210.6 kB
  • Tags: CPython 2.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/44.1.1 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.17

File hashes

Hashes for zodbpickle-2.5-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 6500360fa1920f754b54cad8b6e8d7e2747c4188a4e175dd52ee6b926ec2d12f
MD5 92173dd33808b6578b9e9f83993ba4e1
BLAKE2b-256 a470a4ea42e6f50d8f1f93681c5db5d510fc8a2a88fbebe56efdb6bbb2cda9ba

See more details on using hashes here.

File details

Details for the file zodbpickle-2.5-cp27-cp27m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: zodbpickle-2.5-cp27-cp27m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 216.7 kB
  • Tags: CPython 2.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/44.1.1 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for zodbpickle-2.5-cp27-cp27m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 ad6837c4240fdf8508fa3b44fb975fb2d8bed6c89489cfaf2349de3b69fa3d9e
MD5 ac64b4d2d619ffd24aa7ed5d41b7fc05
BLAKE2b-256 3ad19f76aad973cd8d85a668edad7a452d01a41864b6ee2fe8815f0d6dea2b0f

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