Skip to main content

Modern high-performance serialization utilities for Python

Project description

srsly: Modern high-performance serialization utilities for Python

This package bundles some of the best Python serialization libraries into one standalone package, with a high-level API that makes it easy to write code that's correct across platforms and Pythons. This allows us to provide all the serialization utilities we need in a single binary wheel. Currently supports JSON, JSONL, MessagePack, Pickle and YAML.

Azure Pipelines PyPi conda GitHub Python wheels

Motivation

Serialization is hard, especially across Python versions and multiple platforms. After dealing with many subtle bugs over the years (encodings, locales, large files) our libraries like spaCy and Prodigy had steadily grown a number of utility functions to wrap the multiple serialization formats we need to support (especially json, msgpack and pickle). These wrapping functions ended up duplicated across our codebases, so we wanted to put them in one place.

At the same time, we noticed that having a lot of small dependencies was making maintenance harder, and making installation slower. To solve this, we've made srsly standalone, by including the component packages directly within it. This way we can provide all the serialization utilities we need in a single binary wheel.

srsly currently includes forks of the following packages:

Installation

⚠️ Note that v2.x is only compatible with Python 3.6+. For 2.7+ compatibility, use v1.x.

srsly can be installed from pip. Before installing, make sure that your pip, setuptools and wheel are up to date.

python -m pip install -U pip setuptools wheel
python -m pip install srsly

Or from conda via conda-forge:

conda install -c conda-forge srsly

Alternatively, you can also compile the library from source. You'll need to make sure that you have a development environment with a Python distribution including header files, a compiler (XCode command-line tools on macOS / OS X or Visual C++ build tools on Windows), pip and git installed.

Install from source:

# clone the repo
git clone https://github.com/explosion/srsly
cd srsly

# create a virtual environment
python -m venv .env
source .env/bin/activate

# update pip
python -m pip install -U pip setuptools wheel

# compile and install from source
python -m pip install .

For developers, install requirements separately and then install in editable mode without build isolation:

# install in editable mode
python -m pip install -r requirements.txt
python -m pip install --no-build-isolation --editable .

# run test suite
python -m pytest --pyargs srsly

API

JSON

📦 The underlying module is exposed via srsly.ujson. However, we normally interact with it via the utility functions only.

function srsly.json_dumps

Serialize an object to a JSON string. Falls back to json if sort_keys=True is used (until it's fixed in ujson).

data = {"foo": "bar", "baz": 123}
json_string = srsly.json_dumps(data)
Argument Type Description
data - The JSON-serializable data to output.
indent int Number of spaces used to indent JSON. Defaults to 0.
sort_keys bool Sort dictionary keys. Defaults to False.
RETURNS str The serialized string.

function srsly.json_loads

Deserialize unicode or bytes to a Python object.

data = '{"foo": "bar", "baz": 123}'
obj = srsly.json_loads(data)
Argument Type Description
data str / bytes The data to deserialize.
RETURNS - The deserialized Python object.

function srsly.write_json

Create a JSON file and dump contents or write to standard output.

data = {"foo": "bar", "baz": 123}
srsly.write_json("/path/to/file.json", data)
Argument Type Description
path str / Path The file path or "-" to write to stdout.
data - The JSON-serializable data to output.
indent int Number of spaces used to indent JSON. Defaults to 2.

function srsly.read_json

Load JSON from a file or standard input.

data = srsly.read_json("/path/to/file.json")
Argument Type Description
path str / Path The file path or "-" to read from stdin.
RETURNS dict / list The loaded JSON content.

function srsly.write_gzip_json

Create a gzipped JSON file and dump contents.

data = {"foo": "bar", "baz": 123}
srsly.write_gzip_json("/path/to/file.json.gz", data)
Argument Type Description
path str / Path The file path.
data - The JSON-serializable data to output.
indent int Number of spaces used to indent JSON. Defaults to 2.

function srsly.write_gzip_jsonl

Create a gzipped JSONL file and dump contents.

data = [{"foo": "bar"}, {"baz": 123}]
srsly.write_gzip_json("/path/to/file.jsonl.gz", data)
Argument Type Description
path str / Path The file path.
lines - The JSON-serializable contents of each line.
append bool Whether or not to append to the location. Appending to .gz files is generally not recommended, as it doesn't allow the algorithm to take advantage of all data when compressing - files may hence be poorly compressed.
append_new_line bool Whether or not to write a new line before appending to the file.

function srsly.read_gzip_json

Load gzipped JSON from a file.

data = srsly.read_gzip_json("/path/to/file.json.gz")
Argument Type Description
path str / Path The file path.
RETURNS dict / list The loaded JSON content.

function srsly.read_gzip_jsonl

Load gzipped JSONL from a file.

data = srsly.read_gzip_jsonl("/path/to/file.jsonl.gz")
Argument Type Description
path str / Path The file path.
RETURNS dict / list The loaded JSONL content.

function srsly.write_jsonl

Create a JSONL file (newline-delimited JSON) and dump contents line by line, or write to standard output.

data = [{"foo": "bar"}, {"baz": 123}]
srsly.write_jsonl("/path/to/file.jsonl", data)
Argument Type Description
path str / Path The file path or "-" to write to stdout.
lines iterable The JSON-serializable lines.
append bool Append to an existing file. Will open it in "a" mode and insert a newline before writing lines. Defaults to False.
append_new_line bool Defines whether a new line should first be written when appending to an existing file. Defaults to True.

function srsly.read_jsonl

Read a JSONL file (newline-delimited JSON) or from JSONL data from standard input and yield contents line by line. Blank lines will always be skipped.

data = srsly.read_jsonl("/path/to/file.jsonl")
Argument Type Description
path str / Path The file path or "-" to read from stdin.
skip bool Skip broken lines and don't raise ValueError. Defaults to False.
YIELDS - The loaded JSON contents of each line.

function srsly.is_json_serializable

Check if a Python object is JSON-serializable.

assert srsly.is_json_serializable({"hello": "world"}) is True
assert srsly.is_json_serializable(lambda x: x) is False
Argument Type Description
obj - The object to check.
RETURNS bool Whether the object is JSON-serializable.

msgpack

📦 The underlying module is exposed via srsly.msgpack. However, we normally interact with it via the utility functions only.

function srsly.msgpack_dumps

Serialize an object to a msgpack byte string.

data = {"foo": "bar", "baz": 123}
msg = srsly.msgpack_dumps(data)
Argument Type Description
data - The data to serialize.
RETURNS bytes The serialized bytes.

function srsly.msgpack_loads

Deserialize msgpack bytes to a Python object.

msg = b"\x82\xa3foo\xa3bar\xa3baz{"
data = srsly.msgpack_loads(msg)
Argument Type Description
data bytes The data to deserialize.
use_list bool Don't use tuples instead of lists. Can make deserialization slower. Defaults to True.
RETURNS - The deserialized Python object.

function srsly.write_msgpack

Create a msgpack file and dump contents.

data = {"foo": "bar", "baz": 123}
srsly.write_msgpack("/path/to/file.msg", data)
Argument Type Description
path str / Path The file path.
data - The data to serialize.

function srsly.read_msgpack

Load a msgpack file.

data = srsly.read_msgpack("/path/to/file.msg")
Argument Type Description
path str / Path The file path.
use_list bool Don't use tuples instead of lists. Can make deserialization slower. Defaults to True.
RETURNS - The loaded and deserialized content.

pickle

📦 The underlying module is exposed via srsly.cloudpickle. However, we normally interact with it via the utility functions only.

function srsly.pickle_dumps

Serialize a Python object with pickle.

data = {"foo": "bar", "baz": 123}
pickled_data = srsly.pickle_dumps(data)
Argument Type Description
data - The object to serialize.
protocol int Protocol to use. -1 for highest. Defaults to None.
RETURNS bytes The serialized object.

function srsly.pickle_loads

Deserialize bytes with pickle.

pickled_data = b"\x80\x04\x95\x19\x00\x00\x00\x00\x00\x00\x00}\x94(\x8c\x03foo\x94\x8c\x03bar\x94\x8c\x03baz\x94K{u."
data = srsly.pickle_loads(pickled_data)
Argument Type Description
data bytes The data to deserialize.
RETURNS - The deserialized Python object.

YAML

📦 The underlying module is exposed via srsly.ruamel_yaml. However, we normally interact with it via the utility functions only.

function srsly.yaml_dumps

Serialize an object to a YAML string. See the ruamel.yaml docs for details on the indentation format.

data = {"foo": "bar", "baz": 123}
yaml_string = srsly.yaml_dumps(data)
Argument Type Description
data - The JSON-serializable data to output.
indent_mapping int Mapping indentation. Defaults to 2.
indent_sequence int Sequence indentation. Defaults to 4.
indent_offset int Indentation offset. Defaults to 2.
sort_keys bool Sort dictionary keys. Defaults to False.
RETURNS str The serialized string.

function srsly.yaml_loads

Deserialize unicode or a file object to a Python object.

data = 'foo: bar\nbaz: 123'
obj = srsly.yaml_loads(data)
Argument Type Description
data str / file The data to deserialize.
RETURNS - The deserialized Python object.

function srsly.write_yaml

Create a YAML file and dump contents or write to standard output.

data = {"foo": "bar", "baz": 123}
srsly.write_yaml("/path/to/file.yml", data)
Argument Type Description
path str / Path The file path or "-" to write to stdout.
data - The JSON-serializable data to output.
indent_mapping int Mapping indentation. Defaults to 2.
indent_sequence int Sequence indentation. Defaults to 4.
indent_offset int Indentation offset. Defaults to 2.
sort_keys bool Sort dictionary keys. Defaults to False.

function srsly.read_yaml

Load YAML from a file or standard input.

data = srsly.read_yaml("/path/to/file.yml")
Argument Type Description
path str / Path The file path or "-" to read from stdin.
RETURNS dict / list The loaded YAML content.

function srsly.is_yaml_serializable

Check if a Python object is YAML-serializable.

assert srsly.is_yaml_serializable({"hello": "world"}) is True
assert srsly.is_yaml_serializable(lambda x: x) is False
Argument Type Description
obj - The object to check.
RETURNS bool Whether the object is YAML-serializable.

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

srsly-2.4.6.tar.gz (350.8 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

srsly-2.4.6-cp311-cp311-win_amd64.whl (478.8 kB view details)

Uploaded CPython 3.11Windows x86-64

srsly-2.4.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (490.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

srsly-2.4.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (486.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

srsly-2.4.6-cp311-cp311-macosx_11_0_arm64.whl (487.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

srsly-2.4.6-cp311-cp311-macosx_10_9_x86_64.whl (489.1 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

srsly-2.4.6-cp310-cp310-win_amd64.whl (480.9 kB view details)

Uploaded CPython 3.10Windows x86-64

srsly-2.4.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (492.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

srsly-2.4.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (488.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

srsly-2.4.6-cp310-cp310-macosx_11_0_arm64.whl (490.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

srsly-2.4.6-cp310-cp310-macosx_10_9_x86_64.whl (491.9 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

srsly-2.4.6-cp39-cp39-win_amd64.whl (482.8 kB view details)

Uploaded CPython 3.9Windows x86-64

srsly-2.4.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (491.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

srsly-2.4.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (488.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

srsly-2.4.6-cp39-cp39-macosx_11_0_arm64.whl (490.7 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

srsly-2.4.6-cp39-cp39-macosx_10_9_x86_64.whl (492.2 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

srsly-2.4.6-cp38-cp38-win_amd64.whl (482.7 kB view details)

Uploaded CPython 3.8Windows x86-64

srsly-2.4.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (493.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

srsly-2.4.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (490.2 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

srsly-2.4.6-cp38-cp38-macosx_11_0_arm64.whl (488.8 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

srsly-2.4.6-cp38-cp38-macosx_10_9_x86_64.whl (490.0 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

srsly-2.4.6-cp37-cp37m-win_amd64.whl (481.7 kB view details)

Uploaded CPython 3.7mWindows x86-64

srsly-2.4.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (490.9 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

srsly-2.4.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (488.5 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ ARM64

srsly-2.4.6-cp37-cp37m-macosx_10_9_x86_64.whl (489.3 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

srsly-2.4.6-cp36-cp36m-win_amd64.whl (491.6 kB view details)

Uploaded CPython 3.6mWindows x86-64

srsly-2.4.6-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (490.8 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

srsly-2.4.6-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (488.4 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ ARM64

File details

Details for the file srsly-2.4.6.tar.gz.

File metadata

  • Download URL: srsly-2.4.6.tar.gz
  • Upload date:
  • Size: 350.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for srsly-2.4.6.tar.gz
Algorithm Hash digest
SHA256 47b41f323aba4c9c3311abf60e443c03a9efe9c69f65dc402d173c32f7744a6f
MD5 61ee62291a053321e9a8bb9af3bba862
BLAKE2b-256 7d50c5dcea9cba3f3d698a847bda584be85e414a4a5cdae8019c4a7f4434d377

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: srsly-2.4.6-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 478.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for srsly-2.4.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 73ce7c532fecbd8d7ab946fd2b5fa1d767d554526e330e55d7704bcf522c9f66
MD5 65ba56619835400486d71c03cf56f3f6
BLAKE2b-256 c38bf318de2db4826429da431152758336415451553e5d8e96949bfcbfc87dbe

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9742e5f4205c5484cea925ff24b1bd850f1e9291bd0ada6dfe1ec2b715e732b5
MD5 30830fc177c8a9d7a9b8b798c22e10b2
BLAKE2b-256 fc87b2d7f5e8b3dd366294e29b7e010738c1c0d01da665546f20f788ce91ecef

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e4a0152f766930aa41f45bf571b7f6e99206a02810d964cc7bcbd81685e3b624
MD5 6353333fb63812bec09f8191f4894001
BLAKE2b-256 d5dc827c78adf0f0c9c006645877a70bc4c7a4f62a150253053e6bd70b2031a8

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 99131465fea74aa5e80dbba6effad10ae661bee2c3fbc1fd6da8a1e954e031d0
MD5 94b8c7ba1b72660151bed3187ea69e92
BLAKE2b-256 20254dba38f470b4683b68ee741b85d852248074ce90eee503490a543c279c1f

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 73acd407c66fa943bbaa8d473c30ea548b31ba4079b51483eda65df94910b61f
MD5 4ca108476725b2e95ec739f433657760
BLAKE2b-256 aaf31493eafd95cc74264a3fa89e5b83a93cfa0c5f63c17d63e60aa939d0aee6

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: srsly-2.4.6-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 480.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for srsly-2.4.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 02ab79c59e4b0eba4ba44d64b4aeccb5df1379270f3970dc7e30f1eef6cd3851
MD5 81f26f22626b9417b500b3e8f46fdaa1
BLAKE2b-256 e8915acb03c643967d3117b6cb4a103b17b6a2c4828a1d0a1f1c3117a103759d

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2261ef76f6b8d4029b9d2fc4a65ac505a760d2ea1de0132fc4b423883f7df52e
MD5 b48377c65cdc2ec6f40d948d5bf622c6
BLAKE2b-256 2919c9af82aca65180b187f335bfbfa52719e2056367956ebbf32fcabff46b37

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0355d57e89382bc0852d30b000f1d04f0bf1da2a739f60f0427a00b6ea1cd146
MD5 e38386ad8801b1df78ed1601e51fe6b1
BLAKE2b-256 ec919e43d4440ae8ee1cd9414a8eeae2e30f16afde3b4ea988570497841faca0

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5a9833c0a870e17c67a9452ed107b3ec033fa5b7addead51af5977fdafd32452
MD5 c9a00622bd9003e6e66cc09501607c60
BLAKE2b-256 dba3ea3c623d60c8be5ba11e43e9dfc270518107691f91dd5052322a5bc44d85

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9b96569976420be2ac3716db9ac05b06bf4cd7a358953879ba34f03c9533c123
MD5 a725c0a9318eea5a6c4cc795dc5842cf
BLAKE2b-256 5e39d4f11f3b8dea2bc2783ddb23cd1dd56422d948fe08f3b900b97c7ab1aaea

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: srsly-2.4.6-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 482.8 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for srsly-2.4.6-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 52a3b4d2949d9b7623b459054526bc3df04cbd9a8243c4786f13e3c956faf251
MD5 9407f05386d916d3e9a0b44eba1c19b2
BLAKE2b-256 f0816baa09ed1f74dd217b0242ba64affbcab61b59903af6b94ca4340887833d

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0e5725f18a76971fc00e788a254bc2da6e119d69d491a811a6d387de77b72ca2
MD5 b850117566e7da76f91ace8101447860
BLAKE2b-256 5c992e0c54aba2e8711852713c9b4ae8989fe9487816e58d21ab837ffb87e425

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 da8d393ac59cba12b92c27c53550417200601d0f2a9aa50c1559cf5ce9cb9473
MD5 21fc09f1430d71781e42fadb7326b9bc
BLAKE2b-256 7e5a53eb6724aac9bdb75fd189531c5de053a19b4828208e52b29e09000d8347

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: srsly-2.4.6-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 490.7 kB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for srsly-2.4.6-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 52e3a0a760fb7723c74e566d0c064da78e5707d65d8f69b1d3c2e05b72e3efb2
MD5 b5ce25aa85150a2e50c97450f14ef41d
BLAKE2b-256 c4f7046904fc285878fd8ce24c63bdf923ad090ed85257d98404d121086a1593

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0522d9aeaf58c6d58ee0cec247653a460545422d3266b2d970df7af1530f3dcc
MD5 1ab54468ed5121e1be623d5e9f1f1bc7
BLAKE2b-256 0346bfa8823b635ca9867c130d6a52506d132249293063a5cb0fee0358014d84

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: srsly-2.4.6-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 482.7 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for srsly-2.4.6-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 0ca1b1065edeca0cbc4a75ef15e915189bfd4b87c8256d542ec662168dd17627
MD5 c1246af89dfaaf03a4c91a17075fb2ee
BLAKE2b-256 75187b25e88e7e7042d964554966838b36821ee7f95bddd397ce95e67d6ad5ba

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7dc1c3877618d67a44ec74830510cd72d54fcfb32339388f2c6cbd559d27d20e
MD5 8435e6006bdc1e079f7d5903db932604
BLAKE2b-256 f258f248173c08d0ce8347e1cc970f4748ca88dcdfcf9c8fb8c27495d67a703e

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1da8ac70f994644069451b4ab5fe5d2649218871409ab89f8421e79b0eace76b
MD5 f1c73af742d76f06f6a0989684eeb209
BLAKE2b-256 9a59d5d6a3d1ad57e91a0bc305f7bf37da5b033c5e4c0cdcf9dcf47ff1c2e8a8

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

  • Download URL: srsly-2.4.6-cp38-cp38-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 488.8 kB
  • Tags: CPython 3.8, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for srsly-2.4.6-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 720715be0efb9646ab64850185ecd22fe6ace93027d02f6367bdc8842450b369
MD5 bc8610070c79255c071d55bebc9a507a
BLAKE2b-256 29abe819adf93bee080c594d3207cc96e0263f5094967246cfd6b09356093cd5

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 02b0708878f6a1e344284ae7c65b36a9ad8178eeff71583cd212d2d379f0e2ce
MD5 e0a00ac91625774e11ba56e0e08b5570
BLAKE2b-256 381c66e7908dd223eb6e0befee2056ae1ccc64451a589380ea8e841ddbea976b

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp37-cp37m-win_amd64.whl.

File metadata

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

File hashes

Hashes for srsly-2.4.6-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 f1fb1ca8e2415bfd9ce1e3d8612dbbd85dd06c574a0a96a0223265c382950b5a
MD5 7b2974d6dde9aeb6241ac135d873e151
BLAKE2b-256 8afe7d1e987bc119382cac80a19eaf39672ad36ede80fa6b2ba1b7a4f1546d86

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9fb1426313af7c560c728fbe8c3cc8e7cc443f5aa489b04a26adc73645214b91
MD5 611f07ad333c0fcd9923d0372e5b173a
BLAKE2b-256 b06295a72536387ce81c543c2ab970d1d6d7c8af07a35c7e7feb7080407350b2

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 03477c648b76571a5ab0723423fc03ada74e747c4354357feef92c098853246f
MD5 660ac292ae260bfaac3a89f674b79f96
BLAKE2b-256 cc35a2e428b625014c582c5ce95766be40da9fd53b82f3b6e8b4a22a91b96241

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3a6811eb797101b549fece201c03ba794ed731e9e2d58b81ea56eb3219ed2c8e
MD5 816aecb166bace50f39ce98c5e0a6d56
BLAKE2b-256 c75f28b5d51a7da971996cdbc7fec3c740a3c118eb92088eeb84ff687d1fc461

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: srsly-2.4.6-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 491.6 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.9

File hashes

Hashes for srsly-2.4.6-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 bac2b2fa1f315c8a50e7807002a064e892be21c95735334f39d2ec104c00a8f0
MD5 245737d673f6081e3d3b2c1e82bf2ce6
BLAKE2b-256 39b079ce59ed8af4fac864899a873b679f5e5b1e2808179099473c9911133e95

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 12b9e6d5a87c64e1d4a4a43fd6c94f98b5c48076c569804072e5fe45f1703c32
MD5 abe2890ccbdd8d7520dee8f15f208a9d
BLAKE2b-256 e14816e70c08707949914f3ceaad78be077b64db62217fa80f1247d13ed18f47

See more details on using hashes here.

File details

Details for the file srsly-2.4.6-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for srsly-2.4.6-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e5c5074628249385640f4fe4ac237fd93631a023938476ea258139d12abb17f9
MD5 08be27ad160b32873bb4f91e7d71760e
BLAKE2b-256 b2035890066e070e5be5b8653833b10743c2ff9345fcc7e88bf029e683c60fbc

See more details on using hashes here.

Supported by

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