<h1 align="center"><i>✨ Pysproto ✨ </i></h1>
<h3 align="center">Another Pythonic Sproto Python binding for <a href="https://github.com/cloudwu/sproto">sproto</a> </h3>
<h3 align="center"><i>Powered by cython, high performance, pythonic</i></h3>
[![pypi](https://img.shields.io/pypi/v/sproto.svg)](https://pypi.org/project/sproto/)
![python](https://img.shields.io/pypi/pyversions/sproto)
![implementation](https://img.shields.io/pypi/implementation/sproto)
![wheel](https://img.shields.io/pypi/wheel/sproto)
![license](https://img.shields.io/github/license/synodriver/sproto.svg)
![action](https://img.shields.io/github/workflow/status/synodriver/sproto/build%20wheel)
### Usage
- install
```
pip install sproto
```
- encode & decode
```python
from pysproto import parse, parse_ast, Sproto
ast = parse(""".package {
type 0 : integer
session 1 : integer
}""")
dump = parse_ast(ast)
proto = Sproto(dump)
tp = proto.querytype("package")
encoded = tp.encode({"type": 1, "session": 2})
print(tp.decode(encoded))
```
- Public functions
```python
from typing import Union, Tuple, Optional
class Sproto:
def dump(self)->None: ...
def protocol(self, tag_or_name: Union[int, str]) -> Tuple[Union[int, str], Optional["SprotoType"], Optional["SprotoType"]]: ...
def querytype(self, type_name) -> "SprotoType": ...
def sproto_protoresponse(self, intproto) -> int: ...
class SprotoError(Exception): ...
class SprotoType:
@classmethod
def __init__(self, *args, **kwargs) -> None: ...
def decode(self, buffer: bytes) -> dict: ...
def encode(self, data: dict) -> bytes: ...
def encode_into(self, data: dict, buffer: bytearray) -> int: ...
def pack(data: bytes) -> bytes: ...
def pack_into(data: bytes, buffer: bytearray) -> int: ...
def unpack(data: bytes) -> bytes: ...
def unpack_into(data: bytes, buffer: bytearray) -> int: ...
```
- ```xx_into``` functions accepts buffer protocol objects, which is zerocopy.
Raw data
{
"_id": null,
"home_page": "https://github.com/synodriver/sproto",
"name": "sproto",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "sproto",
"author": "synodriver",
"author_email": "diguohuangjiajinweijun@gmail.com",
"download_url": null,
"platform": null,
"description": "<h1 align=\"center\"><i>\u2728 Pysproto \u2728 </i></h1>\n\n<h3 align=\"center\">Another Pythonic Sproto Python binding for <a href=\"https://github.com/cloudwu/sproto\">sproto</a> </h3>\n\n<h3 align=\"center\"><i>Powered by cython, high performance, pythonic</i></h3>\n\n[![pypi](https://img.shields.io/pypi/v/sproto.svg)](https://pypi.org/project/sproto/)\n![python](https://img.shields.io/pypi/pyversions/sproto)\n![implementation](https://img.shields.io/pypi/implementation/sproto)\n![wheel](https://img.shields.io/pypi/wheel/sproto)\n![license](https://img.shields.io/github/license/synodriver/sproto.svg)\n![action](https://img.shields.io/github/workflow/status/synodriver/sproto/build%20wheel)\n\n\n### Usage\n\n- install\n```\npip install sproto\n```\n\n- encode & decode\n```python\nfrom pysproto import parse, parse_ast, Sproto\nast = parse(\"\"\".package {\n type 0 : integer\n session 1 : integer\n }\"\"\")\ndump = parse_ast(ast)\nproto = Sproto(dump)\ntp = proto.querytype(\"package\")\nencoded = tp.encode({\"type\": 1, \"session\": 2})\nprint(tp.decode(encoded))\n```\n\n- Public functions\n```python\nfrom typing import Union, Tuple, Optional\n\nclass Sproto:\n def dump(self)->None: ...\n def protocol(self, tag_or_name: Union[int, str]) -> Tuple[Union[int, str], Optional[\"SprotoType\"], Optional[\"SprotoType\"]]: ...\n def querytype(self, type_name) -> \"SprotoType\": ...\n def sproto_protoresponse(self, intproto) -> int: ...\n\nclass SprotoError(Exception): ...\n\nclass SprotoType:\n @classmethod\n def __init__(self, *args, **kwargs) -> None: ...\n def decode(self, buffer: bytes) -> dict: ...\n def encode(self, data: dict) -> bytes: ...\n def encode_into(self, data: dict, buffer: bytearray) -> int: ...\n\ndef pack(data: bytes) -> bytes: ...\ndef pack_into(data: bytes, buffer: bytearray) -> int: ...\ndef unpack(data: bytes) -> bytes: ...\ndef unpack_into(data: bytes, buffer: bytearray) -> int: ...\n```\n- ```xx_into``` functions accepts buffer protocol objects, which is zerocopy.\n",
"bugtrack_url": null,
"license": "BSD",
"summary": "sproto encode and decode",
"version": "0.1.3",
"project_urls": {
"Homepage": "https://github.com/synodriver/sproto"
},
"split_keywords": [
"sproto"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "56e7cd3ed9e10895b51acfae5341a8785b4c7398647d4fa15e7bb67f24a2fb31",
"md5": "4ca0deaaad7c54428b5c5c26e6e3f7e2",
"sha256": "cd88375e93ced88c1ed41321f3379108e61b0902fbfc0248385b934a475967f9"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp310-cp310-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "4ca0deaaad7c54428b5c5c26e6e3f7e2",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 373796,
"upload_time": "2024-03-30T04:00:39",
"upload_time_iso_8601": "2024-03-30T04:00:39.143474Z",
"url": "https://files.pythonhosted.org/packages/56/e7/cd3ed9e10895b51acfae5341a8785b4c7398647d4fa15e7bb67f24a2fb31/sproto-0.1.3-cp310-cp310-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0b4e3008147965363c3bc92b487b8a21337ca7e507986fbbd497bb72ecb9f82a",
"md5": "9efb7a60fce35341b6cc32e2cfbf19c8",
"sha256": "dd0d9c5d4efadd3a2db6c0f937b285666110c5d4220d65f1957f55c4db8efa7a"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "9efb7a60fce35341b6cc32e2cfbf19c8",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 283067,
"upload_time": "2024-03-30T04:00:40",
"upload_time_iso_8601": "2024-03-30T04:00:40.535465Z",
"url": "https://files.pythonhosted.org/packages/0b/4e/3008147965363c3bc92b487b8a21337ca7e507986fbbd497bb72ecb9f82a/sproto-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9d7cd1c85e62835a51331c0eb8a63c8308461a8d9fe3fb6fca64b43352578d91",
"md5": "e41ebb897175ceb98f7c2fe2210c8bf0",
"sha256": "0fb046673921bf12bb7311efc2e8353e1fb8ed738066b9e317947e7fe9ec41b5"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "e41ebb897175ceb98f7c2fe2210c8bf0",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 275447,
"upload_time": "2024-03-30T04:00:42",
"upload_time_iso_8601": "2024-03-30T04:00:42.203946Z",
"url": "https://files.pythonhosted.org/packages/9d/7c/d1c85e62835a51331c0eb8a63c8308461a8d9fe3fb6fca64b43352578d91/sproto-0.1.3-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "716a39deccdcb53b86edb30e85730cc92b5dcb7d2a032d2c88a642a9fc2f7b5c",
"md5": "91f6a76984c64be339081093e486ee9f",
"sha256": "3fcacb1527220aa5ce39780665b1ac99af0fc66e17359baf61c1bd75329dee03"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp310-cp310-win32.whl",
"has_sig": false,
"md5_digest": "91f6a76984c64be339081093e486ee9f",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 261507,
"upload_time": "2024-03-30T04:04:24",
"upload_time_iso_8601": "2024-03-30T04:04:24.605682Z",
"url": "https://files.pythonhosted.org/packages/71/6a/39deccdcb53b86edb30e85730cc92b5dcb7d2a032d2c88a642a9fc2f7b5c/sproto-0.1.3-cp310-cp310-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f33f1963dfe9a2f0bebc7e9905b0927d8c35e508cd85df8d0580a4f0d45ecb38",
"md5": "2b406203789f6ab4c3e578aaf0d7a9f0",
"sha256": "bb8032d6de2076257569c8a1d38f308b728b64f6d4d65bcda0a666e244b28a5d"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "2b406203789f6ab4c3e578aaf0d7a9f0",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 275205,
"upload_time": "2024-03-30T04:04:26",
"upload_time_iso_8601": "2024-03-30T04:04:26.301651Z",
"url": "https://files.pythonhosted.org/packages/f3/3f/1963dfe9a2f0bebc7e9905b0927d8c35e508cd85df8d0580a4f0d45ecb38/sproto-0.1.3-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8c07582a82fd88f7348b712f2b78573bc39d11a682bdbac4edd50fc31d54e339",
"md5": "ad2e7254e6adae99da372a3bfe3eb8a3",
"sha256": "b775db441c18523beddd353ed7852eb607dbc1abf7beaae1983aeeef2aca9608"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp311-cp311-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "ad2e7254e6adae99da372a3bfe3eb8a3",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.6",
"size": 374396,
"upload_time": "2024-03-30T04:00:43",
"upload_time_iso_8601": "2024-03-30T04:00:43.909141Z",
"url": "https://files.pythonhosted.org/packages/8c/07/582a82fd88f7348b712f2b78573bc39d11a682bdbac4edd50fc31d54e339/sproto-0.1.3-cp311-cp311-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0ecf06751029ad309484c00812f389654c4275ef3342ecb1329cbbd1a23d8c6d",
"md5": "a71f7a2553f960c5a57746d7644421fb",
"sha256": "cd4daa60fa808011416c9159021b1ac59f03e30ba3ac01ccb149fa67a77a9c4f"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "a71f7a2553f960c5a57746d7644421fb",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.6",
"size": 283440,
"upload_time": "2024-03-30T04:00:45",
"upload_time_iso_8601": "2024-03-30T04:00:45.759106Z",
"url": "https://files.pythonhosted.org/packages/0e/cf/06751029ad309484c00812f389654c4275ef3342ecb1329cbbd1a23d8c6d/sproto-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a5224e5b0860ca2cd2d0c38609f8ff36e4db6ce3f27b0bdeef1fda0b70f20630",
"md5": "8f59e333c7f34c26cf8fb9c0d36ddefa",
"sha256": "14b7e5cb37c2dec41202b4ae4db8c828a95bcc2ca0a8fc13ca7de6a162b2540f"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "8f59e333c7f34c26cf8fb9c0d36ddefa",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.6",
"size": 275705,
"upload_time": "2024-03-30T04:00:47",
"upload_time_iso_8601": "2024-03-30T04:00:47.084177Z",
"url": "https://files.pythonhosted.org/packages/a5/22/4e5b0860ca2cd2d0c38609f8ff36e4db6ce3f27b0bdeef1fda0b70f20630/sproto-0.1.3-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e4bd652b4089943450643c8e8cc8443970135c878539a2c48d661e39af6b34bd",
"md5": "f2740cdfdefa48b6ea746fa354321325",
"sha256": "67eecf887f1bab297fa10c2d80affe4938a8ef6bb2d65b3e7f9270a674eb60d4"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp311-cp311-win32.whl",
"has_sig": false,
"md5_digest": "f2740cdfdefa48b6ea746fa354321325",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.6",
"size": 261433,
"upload_time": "2024-03-30T04:04:27",
"upload_time_iso_8601": "2024-03-30T04:04:27.398243Z",
"url": "https://files.pythonhosted.org/packages/e4/bd/652b4089943450643c8e8cc8443970135c878539a2c48d661e39af6b34bd/sproto-0.1.3-cp311-cp311-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "efba0f907497fcfbfa62d9bbf42190ac4f05aabc2875402265743d24ef9d30df",
"md5": "8d661b476520a7ef4e03c60d2a85fe76",
"sha256": "b4ae603dddf59b7001255a7904ece5d17e357728c401bbcb423b01b20c51a138"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "8d661b476520a7ef4e03c60d2a85fe76",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.6",
"size": 275450,
"upload_time": "2024-03-30T04:04:28",
"upload_time_iso_8601": "2024-03-30T04:04:28.533155Z",
"url": "https://files.pythonhosted.org/packages/ef/ba/0f907497fcfbfa62d9bbf42190ac4f05aabc2875402265743d24ef9d30df/sproto-0.1.3-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5365c1eebd73c3371b541a7a29439acf9169893a260f325ea8b2cb772dae3d2d",
"md5": "31bd7398bce62784f21112c2847e9d7a",
"sha256": "7df676f4d9132102ad52bc38d0634b577d0aa3898830d36d3c3537861b840c43"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp312-cp312-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "31bd7398bce62784f21112c2847e9d7a",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.6",
"size": 377902,
"upload_time": "2024-03-30T04:00:48",
"upload_time_iso_8601": "2024-03-30T04:00:48.837300Z",
"url": "https://files.pythonhosted.org/packages/53/65/c1eebd73c3371b541a7a29439acf9169893a260f325ea8b2cb772dae3d2d/sproto-0.1.3-cp312-cp312-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3dcf8b44fab4c663859e1dc78ba73187a77c263b677db815d4bf7e58068923a1",
"md5": "3303b31609513cb1fb383d6bcde28ab2",
"sha256": "2bc2752e1186c338014311bcc70563398bc995e48b65de4bfd34929cebe656f8"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp312-cp312-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "3303b31609513cb1fb383d6bcde28ab2",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.6",
"size": 285342,
"upload_time": "2024-03-30T04:00:49",
"upload_time_iso_8601": "2024-03-30T04:00:49.913627Z",
"url": "https://files.pythonhosted.org/packages/3d/cf/8b44fab4c663859e1dc78ba73187a77c263b677db815d4bf7e58068923a1/sproto-0.1.3-cp312-cp312-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "79351a3f672b17ba6dd8e61b326a152118210a3942cb5db750551dbb59dcd7f3",
"md5": "1c38fe84a54868a11f7f5a78b6e34a54",
"sha256": "70ecf6c241de5c465bf60ab2190a870cec0c839bcf0c6db87bc28ee23ed0869a"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "1c38fe84a54868a11f7f5a78b6e34a54",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.6",
"size": 277273,
"upload_time": "2024-03-30T04:00:51",
"upload_time_iso_8601": "2024-03-30T04:00:51.008960Z",
"url": "https://files.pythonhosted.org/packages/79/35/1a3f672b17ba6dd8e61b326a152118210a3942cb5db750551dbb59dcd7f3/sproto-0.1.3-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e541deb1b7154a3e0d3317c85f4720b44ef00c43b6f84e1e8c82075f37ec41d8",
"md5": "7da265a3fd832c2977943793c87bef1d",
"sha256": "afc160ade4613c49ff9f5e8bbbfefe7a74fd05ee79aa7690d079c4d5aa6672e3"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp312-cp312-win32.whl",
"has_sig": false,
"md5_digest": "7da265a3fd832c2977943793c87bef1d",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.6",
"size": 261993,
"upload_time": "2024-03-30T04:04:29",
"upload_time_iso_8601": "2024-03-30T04:04:29.680831Z",
"url": "https://files.pythonhosted.org/packages/e5/41/deb1b7154a3e0d3317c85f4720b44ef00c43b6f84e1e8c82075f37ec41d8/sproto-0.1.3-cp312-cp312-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d883168560d8763ee87f90fc00630392dd15554c4fd21a4f61bd24ddd2ce6c78",
"md5": "d610b392979ab5d34a5faf40d4effe72",
"sha256": "39cb0921f5e4fc0b24612133389d2ed270839cd0871874908937d61da6ad9835"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "d610b392979ab5d34a5faf40d4effe72",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.6",
"size": 275633,
"upload_time": "2024-03-30T04:04:30",
"upload_time_iso_8601": "2024-03-30T04:04:30.794319Z",
"url": "https://files.pythonhosted.org/packages/d8/83/168560d8763ee87f90fc00630392dd15554c4fd21a4f61bd24ddd2ce6c78/sproto-0.1.3-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "dd6858494305a0e23b0422781a375fb35eb2344e640a3792aff371f024ca79f6",
"md5": "18fa3d29fbb34d2ef7f51ec24cc33aa7",
"sha256": "dea5c5b594be9007527a9d747f144be5e36c8110da03e0d2263eb4be6ef9c0f2"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp38-cp38-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "18fa3d29fbb34d2ef7f51ec24cc33aa7",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.6",
"size": 374127,
"upload_time": "2024-03-30T04:00:52",
"upload_time_iso_8601": "2024-03-30T04:00:52.264813Z",
"url": "https://files.pythonhosted.org/packages/dd/68/58494305a0e23b0422781a375fb35eb2344e640a3792aff371f024ca79f6/sproto-0.1.3-cp38-cp38-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e7ba735e6c37c8a122815d0cf50092bfb11a1cbfeed8c457b4c9f061aba56a36",
"md5": "66e7d8b75a0623430658922210629735",
"sha256": "876f788652ca58aeabdf221744f990b151a0c7b2d113b99c66ff9edac340627f"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp38-cp38-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "66e7d8b75a0623430658922210629735",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.6",
"size": 283214,
"upload_time": "2024-03-30T04:00:53",
"upload_time_iso_8601": "2024-03-30T04:00:53.393411Z",
"url": "https://files.pythonhosted.org/packages/e7/ba/735e6c37c8a122815d0cf50092bfb11a1cbfeed8c457b4c9f061aba56a36/sproto-0.1.3-cp38-cp38-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1d54aba11c9158892d2981938f8d22cc5126140586e138234b7df92384a450f8",
"md5": "72dcd71d5ec61b7e00e30cc65a28ab99",
"sha256": "c13e7d647997519311234183ba76b78913df7de4aaee1f13856e82dc899e59c0"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp38-cp38-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "72dcd71d5ec61b7e00e30cc65a28ab99",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.6",
"size": 275673,
"upload_time": "2024-03-30T04:00:54",
"upload_time_iso_8601": "2024-03-30T04:00:54.570599Z",
"url": "https://files.pythonhosted.org/packages/1d/54/aba11c9158892d2981938f8d22cc5126140586e138234b7df92384a450f8/sproto-0.1.3-cp38-cp38-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6fb3ff81e7ea56ce3e1aaa1cbd56f56bc52aa7ead8dbed2c0a943be7b58551dc",
"md5": "b2a7d9656e36ff95e32c2d1998029372",
"sha256": "26f9ef0ed2b569c79a9e5d65ed29ff83045ac5c3357b356cd4ac00c027522ace"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp38-cp38-win32.whl",
"has_sig": false,
"md5_digest": "b2a7d9656e36ff95e32c2d1998029372",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.6",
"size": 261764,
"upload_time": "2024-03-30T04:04:32",
"upload_time_iso_8601": "2024-03-30T04:04:32.432159Z",
"url": "https://files.pythonhosted.org/packages/6f/b3/ff81e7ea56ce3e1aaa1cbd56f56bc52aa7ead8dbed2c0a943be7b58551dc/sproto-0.1.3-cp38-cp38-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ae65d43bfc0b8f13aca4dde38239416d2023ca79aaa8b9ea47ca4bd44d2c20a8",
"md5": "d9e2de2782f46e0d95f0972711adab09",
"sha256": "da5e0b18986175242f1de052e16d1292d52f6926f119348596a391303bf489e7"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp38-cp38-win_amd64.whl",
"has_sig": false,
"md5_digest": "d9e2de2782f46e0d95f0972711adab09",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.6",
"size": 275706,
"upload_time": "2024-03-30T04:04:34",
"upload_time_iso_8601": "2024-03-30T04:04:34.058877Z",
"url": "https://files.pythonhosted.org/packages/ae/65/d43bfc0b8f13aca4dde38239416d2023ca79aaa8b9ea47ca4bd44d2c20a8/sproto-0.1.3-cp38-cp38-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9a5d4f777c508dc73493cdb547d4a7315a882fe94db56e7a2e50ab2a6bd17ddb",
"md5": "bbb2a3eb84941d8b90c15898e2b51901",
"sha256": "cb873f352a5eab867b536e8c6849c080b746d0c0d6e93d897beb9f97e44c2b75"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp39-cp39-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "bbb2a3eb84941d8b90c15898e2b51901",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.6",
"size": 374191,
"upload_time": "2024-03-30T04:00:55",
"upload_time_iso_8601": "2024-03-30T04:00:55.679187Z",
"url": "https://files.pythonhosted.org/packages/9a/5d/4f777c508dc73493cdb547d4a7315a882fe94db56e7a2e50ab2a6bd17ddb/sproto-0.1.3-cp39-cp39-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "19cb153ce306e4f881ceb29bfb549342260fe27399c93929770be6fac51fd097",
"md5": "351136b3f6343e245bbb64563b50b407",
"sha256": "2cc2130292fac983f4dfcca59ed5f1e9002d9d9df1ed2a160d60c53f60d122b4"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "351136b3f6343e245bbb64563b50b407",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.6",
"size": 283231,
"upload_time": "2024-03-30T04:00:57",
"upload_time_iso_8601": "2024-03-30T04:00:57.336645Z",
"url": "https://files.pythonhosted.org/packages/19/cb/153ce306e4f881ceb29bfb549342260fe27399c93929770be6fac51fd097/sproto-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "731d1d23edd8356fd74b0efb329a42ff5ba24973765b85f1df969d3e72d4f67b",
"md5": "ca95f6048bc7fecdf075c251d3a0aa0a",
"sha256": "caeea00e7014d9a5d731013ccc33d32f92b8ab7eb637e20ad2f8cae21ea68fb3"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "ca95f6048bc7fecdf075c251d3a0aa0a",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.6",
"size": 275726,
"upload_time": "2024-03-30T04:00:58",
"upload_time_iso_8601": "2024-03-30T04:00:58.649046Z",
"url": "https://files.pythonhosted.org/packages/73/1d/1d23edd8356fd74b0efb329a42ff5ba24973765b85f1df969d3e72d4f67b/sproto-0.1.3-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fd1e68dd73800c7debe201c9d349aa2a6ea767accd383b315adeec3b04169ce3",
"md5": "ca3aad069cd5651b0655e9069e6abfe9",
"sha256": "eefea79d24be7b9c9c4e6901740f6be1f3faa32b28a9100f99c72c87efc95b65"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp39-cp39-win32.whl",
"has_sig": false,
"md5_digest": "ca3aad069cd5651b0655e9069e6abfe9",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.6",
"size": 261695,
"upload_time": "2024-03-30T04:04:35",
"upload_time_iso_8601": "2024-03-30T04:04:35.409057Z",
"url": "https://files.pythonhosted.org/packages/fd/1e/68dd73800c7debe201c9d349aa2a6ea767accd383b315adeec3b04169ce3/sproto-0.1.3-cp39-cp39-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "130aba73ad7a236ba46db444ee1d2c3b3c1dbbdb9903702ab152896fa5f87ba3",
"md5": "53b8bf45c918b2137391e26b29533d28",
"sha256": "ab016baa29995bbad97e5e64a303cb540775ae4f19347cd4367b01e4f1d6d017"
},
"downloads": -1,
"filename": "sproto-0.1.3-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "53b8bf45c918b2137391e26b29533d28",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.6",
"size": 275464,
"upload_time": "2024-03-30T04:04:36",
"upload_time_iso_8601": "2024-03-30T04:04:36.834183Z",
"url": "https://files.pythonhosted.org/packages/13/0a/ba73ad7a236ba46db444ee1d2c3b3c1dbbdb9903702ab152896fa5f87ba3/sproto-0.1.3-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "dfc432e4bf4224a0f12bece04962ab20c9d4d02b02c5f17d55dccf84c397130f",
"md5": "9b5cd8a211a3e3600ee9f1a6a5602636",
"sha256": "af648972392de545da975290c0c5796f20f6cffbad0f6deea013e8eda59237ed"
},
"downloads": -1,
"filename": "sproto-0.1.3-pp310-pypy310_pp73-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "9b5cd8a211a3e3600ee9f1a6a5602636",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.6",
"size": 271780,
"upload_time": "2024-03-30T04:00:59",
"upload_time_iso_8601": "2024-03-30T04:00:59.850902Z",
"url": "https://files.pythonhosted.org/packages/df/c4/32e4bf4224a0f12bece04962ab20c9d4d02b02c5f17d55dccf84c397130f/sproto-0.1.3-pp310-pypy310_pp73-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ccec6f26eeba7162d688b6f313db7716921b652de9e9f5124826bba95fe8d110",
"md5": "916dfa7b72b00c2846fb144872068952",
"sha256": "8e94651322117fa8fca92f4390777eef89bc7053f5e5921ee82ab8e31b477387"
},
"downloads": -1,
"filename": "sproto-0.1.3-pp310-pypy310_pp73-win_amd64.whl",
"has_sig": false,
"md5_digest": "916dfa7b72b00c2846fb144872068952",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.6",
"size": 269016,
"upload_time": "2024-03-30T04:04:37",
"upload_time_iso_8601": "2024-03-30T04:04:37.917907Z",
"url": "https://files.pythonhosted.org/packages/cc/ec/6f26eeba7162d688b6f313db7716921b652de9e9f5124826bba95fe8d110/sproto-0.1.3-pp310-pypy310_pp73-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "18bf12d07210aaecb2e7e9f4375fb3b34944996db028e2084fe8a520b99caa39",
"md5": "0489db7bbf50e85cbc7a02f6e0a5cffc",
"sha256": "94c07a39d025926b2372e534b5fdc7e70f888c78c4ef753471545c6068e91f87"
},
"downloads": -1,
"filename": "sproto-0.1.3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "0489db7bbf50e85cbc7a02f6e0a5cffc",
"packagetype": "bdist_wheel",
"python_version": "pp38",
"requires_python": ">=3.6",
"size": 271380,
"upload_time": "2024-03-30T04:01:01",
"upload_time_iso_8601": "2024-03-30T04:01:01.012545Z",
"url": "https://files.pythonhosted.org/packages/18/bf/12d07210aaecb2e7e9f4375fb3b34944996db028e2084fe8a520b99caa39/sproto-0.1.3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "40165b379836e766742d670606394556b1abdae476e4a3895986d3347fca299b",
"md5": "64fe84d941346e66313b8c1c0121ced5",
"sha256": "3c15acd461a0e7b005f4919a30cbd43810bb0bc8fc0c1f5ecbaea9c970902cbf"
},
"downloads": -1,
"filename": "sproto-0.1.3-pp38-pypy38_pp73-win_amd64.whl",
"has_sig": false,
"md5_digest": "64fe84d941346e66313b8c1c0121ced5",
"packagetype": "bdist_wheel",
"python_version": "pp38",
"requires_python": ">=3.6",
"size": 268419,
"upload_time": "2024-03-30T04:04:39",
"upload_time_iso_8601": "2024-03-30T04:04:39.116242Z",
"url": "https://files.pythonhosted.org/packages/40/16/5b379836e766742d670606394556b1abdae476e4a3895986d3347fca299b/sproto-0.1.3-pp38-pypy38_pp73-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "47f10984338e535d9f3b2442e8b79be619d5fa753254fe77576f99e4a787b8a1",
"md5": "90e1de6d214475e07d9ffe4f4c272198",
"sha256": "99b786267c5202381118c5de4def4216d13822ba909dc44c58a667e2fc1479f2"
},
"downloads": -1,
"filename": "sproto-0.1.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "90e1de6d214475e07d9ffe4f4c272198",
"packagetype": "bdist_wheel",
"python_version": "pp39",
"requires_python": ">=3.6",
"size": 271448,
"upload_time": "2024-03-30T04:01:02",
"upload_time_iso_8601": "2024-03-30T04:01:02.701015Z",
"url": "https://files.pythonhosted.org/packages/47/f1/0984338e535d9f3b2442e8b79be619d5fa753254fe77576f99e4a787b8a1/sproto-0.1.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "132c27d5e9c6ec54af52e3e3a716b6daf4d52b25d7d9d2c197d4066901924939",
"md5": "40a19b35a232e691eca7a32289748b84",
"sha256": "bdb185072f0bacef77ff55fbd462c857e9963355b3cf3d365229928f0f53665d"
},
"downloads": -1,
"filename": "sproto-0.1.3-pp39-pypy39_pp73-win_amd64.whl",
"has_sig": false,
"md5_digest": "40a19b35a232e691eca7a32289748b84",
"packagetype": "bdist_wheel",
"python_version": "pp39",
"requires_python": ">=3.6",
"size": 268836,
"upload_time": "2024-03-30T04:04:40",
"upload_time_iso_8601": "2024-03-30T04:04:40.842226Z",
"url": "https://files.pythonhosted.org/packages/13/2c/27d5e9c6ec54af52e3e3a716b6daf4d52b25d7d9d2c197d4066901924939/sproto-0.1.3-pp39-pypy39_pp73-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-30 04:00:39",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "synodriver",
"github_project": "sproto",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "Cython",
"specs": [
[
">=",
"3.0.9"
]
]
}
],
"lcname": "sproto"
}