{ "info": { "author": "Ali Ghaffaari", "author_email": "ali.ghaffaari@mpi-inf.mpg.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "[![Build Status](https://img.shields.io/travis/cartoonist/pystream-protobuf.svg?style=flat-square)](https://travis-ci.org/cartoonist/pystream-protobuf)\n[![PyPI Release](https://img.shields.io/pypi/v/pystream-protobuf.svg?style=flat-square)](https://pypi.python.org/pypi/pystream-protobuf)\n[![PyPI Status](https://img.shields.io/pypi/status/pystream-protobuf.svg?style=flat-square)](https://pypi.python.org/pypi/pystream-protobuf)\n[![Python](https://img.shields.io/pypi/pyversions/pystream-protobuf.svg?style=flat-square)](https://www.python.org/download/releases/3.0/)\n[![License](https://img.shields.io/pypi/l/pystream-protobuf.svg?style=flat-square)](https://github.com/cartoonist/pystream-protobuf/blob/master/LICENSE)\n\n# pyStream\nPython implementation of [stream library](https://github.com/vgteam/stream). It\nenables stream processing of protobuf messages; i.e. multiple protobuf messages\ncan be written (read) into (from) a stream by using this library. It can be\nused for parsing all files encoded by stream library and writing protobuf\ninstances into a file by the same encoding. Refer to the library\n[GitHub page](https://github.com/vgteam/stream) for more information about\nformatting.\n\n## Installation\nYou can install pyStream using `pip`:\n\n pip install pystream-protobuf\n\n## Usage\n\n### Reading\nHere is a sample code to read a file containing a set of protobuf messages (here\nis a set of [VG](https://github.com/vgteam/vg)'s Alignment objects, so-called\nGAM file, defined [here](https://github.com/vgteam/vg/blob/master/src/vg.proto)).\nThe Alignment class is just an example and it can be any protobuf message.\nIt yields the protobuf objects stored in the file:\n\n```python\nimport stream\nimport vg_pb2\n\nalns = [a for a in stream.parse('test.gam', vg_pb2.Alignment)]\n```\n\nInstead of file path, an input stream can be passed to the method `parse`:\n\n```python\nimport stream\nimport vg_pb2\n\n# ... an already existing file-like object `f` as input stream.\nalns = [a for a in stream.parse(f, vg_pb2.Alignment)]\n```\n\nIn order to have more control over opening the stream and reading data, the\nlower-level method `open` can be used:\n\n```python\nimport stream\nimport vg_pb2\n\nalns_list = []\nwith stream.open('test.gam', 'rb') as istream:\n for data in istream:\n aln = vg_pb2.Alignment()\n aln.ParseFromString(data)\n alns_list.append(aln)\n```\n\nThe stream can be closed by calling `close` method explicitly, in which case the\nstream is opened without using `with` statement (see more examples in the test\npackage).\n\nThe method `open` is not restricted to files, as it can be used for any binary\nstream. It can be done by passing file object rather than file name to method\n`open` or directly to `Stream` class:\n\n```python\n# ... an already existing file-like object `f` as input stream.\nwith stream.open(fileobj=f, mode='rb') as istream:\n# ... continue using istream\n```\n\n### Writing\nMultiple protobuf objects can be written into a file or any output stream by\ncalling `dump` function. An example of writing a list of Alignment objects to a\nfile named `test.gam`:\n\n```python\nimport stream\n\nstream.dump('test.gam', *objects_list, buffer_size=10)\n```\n\nIf writing to an existing output stream is desired, the `dump` method accepts any\nfile-like object as output stream:\n\n```python\nimport stream\n\n# ... an already existing file-like object `f` as input stream.\nstream.dump('test.gam', *objects_list, buffer_size=10)\n```\n\nOr using `open` method for lower-level control. This example *appends* a set of\nmessages to the output stream:\n\n```python\nimport stream\n\nwith stream.open('test.gam', 'ab') as ostream:\n ostream.write(*objects_list)\n ostream.write(*another_objects_list)\n```\n\nSimilar to reading, `open` method accepts `fileobj` argument for any output\nstream and the stream can be closed by explicitly calling `close`;\nparticularly when the stream is opened without using `with` statement.\n\n## More features\n\n### Optional GZip compression\nThe streams encoded by [Stream library](https://github.com/vgteam/stream) is\nGZip compressed. The compression can be disabled by passing `gzip=False` when\nopening an stream.\n\n### Buffered write\nBy default, all protobuf message objects provided on each call are written in a\ngroup of messages (see [Stream library](https://github.com/vgteam/stream) for\nencoding details). The messages can be buffered and write to the stream in a\ngroup of fixed size whenever possible. The size of the buffer can be set by\nkeyword argument `buffer_size` to `open`, `dump` methods or when Stream class is\nconstructed (default size is 0 --- means no buffer).\n\n### Grouping message\nMessages can be grouped in varied size when writing to a stream by setting\nbuffer size sufficiently large or infinity (-1) and calling `flush` method\nof Stream class whenever desired.\n\n### Group delimiter\nGroup of objects can be separated by a delimiter of the choice (or by default\n`None`) when reading from a stream. Sometimes, it can help to identify the end\nof a group which is hidden from the library user by default. This feature can be\nenable by setting `group_delimiter` to `True` when constructing a Stream\ninstance or opening a stream. The delimiter class can also be specified by\n`delimiter_cls`.\n\n## Development\nIn case, you work with the source code and need to build the package:\n\n python setup.py build\n\nThe proto file in the test module required to be compiled before running test\ncases. To do so, it is required to have Google protobuf compiler (>=3.0.2)\ninstalled. After installing protobuf compiler, run:\n\n make init\n\nto compile proto files required for test module. Then, use `nosetests` command\nof the setup script to execute test cases:\n\n python setup.py nosetests\n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://github.com/cartoonist/pystream-protobuf/tarball/1.5.1", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/cartoonist/pystream-protobuf", "keywords": "stream protocol buffer protobuf", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pystream-protobuf", "package_url": "https://pypi.org/project/pystream-protobuf/", "platform": "", "project_url": "https://pypi.org/project/pystream-protobuf/", "project_urls": { "Download": "https://github.com/cartoonist/pystream-protobuf/tarball/1.5.1", "Homepage": "https://github.com/cartoonist/pystream-protobuf" }, "release_url": "https://pypi.org/project/pystream-protobuf/1.5.1/", "requires_dist": [ "protobuf (>=3.4.0)", "click (>=6.0.0)", "future", "nose (>=1.0) ; extra == 'test'", "coverage ; extra == 'test'" ], "requires_python": "", "summary": "Python implementation of stream library", "version": "1.5.1" }, "last_serial": 5995934, "releases": { "0.9": [ { "comment_text": "", "digests": { "md5": "4a87084a5afda5ca7439eccde315cb5f", "sha256": "a1f11d181c6e8776f512e176e404eb336c4220e881b57a38430a5c43ce6c4673" }, "downloads": -1, "filename": "pystream-protobuf-0.9.tar.gz", "has_sig": false, "md5_digest": "4a87084a5afda5ca7439eccde315cb5f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8596, "upload_time": "2016-07-29T01:03:57", "url": "https://files.pythonhosted.org/packages/f6/e2/e62ea8b6e6c90fd44887847bc296b15e2804774037610bbda8aa89ba2881/pystream-protobuf-0.9.tar.gz" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "1c1b793e927779f0429bc0bdb001ec58", "sha256": "88d15130439b8015cc64438c3857b9227ba4189d2edee19788f03dcdab112cee" }, "downloads": -1, "filename": "pystream-protobuf-0.9.1.tar.gz", "has_sig": false, "md5_digest": "1c1b793e927779f0429bc0bdb001ec58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9140, "upload_time": "2016-07-29T11:35:38", "url": "https://files.pythonhosted.org/packages/52/c5/ebcd5b3e59ac01c502894c0db94d6eeaf55eed8d34ee30f9fde8acc627a2/pystream-protobuf-0.9.1.tar.gz" } ], "0.9.2": [ { "comment_text": "", "digests": { "md5": "ddc48745f32b2e453ceeff37b4c03e5c", "sha256": "de872384f53079f640dd0d9a7ae5241405c9555ace4358a639e8592b6b9fa2c5" }, "downloads": -1, "filename": "pystream-protobuf-0.9.2.tar.gz", "has_sig": false, "md5_digest": "ddc48745f32b2e453ceeff37b4c03e5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9356, "upload_time": "2016-07-29T13:37:56", "url": "https://files.pythonhosted.org/packages/53/d0/45b0e552cbb7e75ada20d8d516adbbe7f8094f7b5ee0c83faa2fa6070fea/pystream-protobuf-0.9.2.tar.gz" } ], "1.0": [ { "comment_text": "", "digests": { "md5": "57cb141587711e07c152100d503747dd", "sha256": "b2ebe11b27d36dcad4ae3843c1501c070897370adfd2ce6fea7125ab21e6dd5d" }, "downloads": -1, "filename": "pystream-protobuf-1.0.tar.gz", "has_sig": false, "md5_digest": "57cb141587711e07c152100d503747dd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9939, "upload_time": "2016-07-31T21:43:22", "url": "https://files.pythonhosted.org/packages/c4/a8/acf0ecbf5b1285c4586ffb157a2812c77ee1dac88c515dc10f92208858ad/pystream-protobuf-1.0.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "299d84d8249c8d7f227cc3b21c0c635d", "sha256": "cc4c0990dd7d727c50e1f60754266252624ae715816fa9858c7c697c493211ad" }, "downloads": -1, "filename": "pystream-protobuf-1.1.tar.gz", "has_sig": false, "md5_digest": "299d84d8249c8d7f227cc3b21c0c635d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10080, "upload_time": "2016-07-31T22:34:01", "url": "https://files.pythonhosted.org/packages/44/6d/22a10eeda095c5d0ec91b7790e1780cec29e1b7e81b491853a0c68c3165b/pystream-protobuf-1.1.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "c7960abe13973ac5151cde7fdee2947b", "sha256": "389193dcae4d6e4a20a4c628635da695a78bf8da1f744b9925089a02fe3a2cb8" }, "downloads": -1, "filename": "pystream-protobuf-1.1.1.tar.gz", "has_sig": false, "md5_digest": "c7960abe13973ac5151cde7fdee2947b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9872, "upload_time": "2016-08-01T00:03:48", "url": "https://files.pythonhosted.org/packages/1f/32/92d3a14211c2dde84486915224c9353e737cd6205a13abeb8512228bdb47/pystream-protobuf-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "a02ef462d4e6266f682d107eee4080c5", "sha256": "101a9a25f6b89ab0ea5cb7cdf1d4bfc252ccc1756eff2bf9be3fb06c56551916" }, "downloads": -1, "filename": "pystream-protobuf-1.1.2.tar.gz", "has_sig": false, "md5_digest": "a02ef462d4e6266f682d107eee4080c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9738, "upload_time": "2016-08-01T00:32:01", "url": "https://files.pythonhosted.org/packages/aa/e3/d02c910b8f80537a5d74c6aa136a6e2ecbdd06d2a0c9174736a80a71c9c4/pystream-protobuf-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "e0c8fc90bfa190cdb97408d8b801da90", "sha256": "13b74b269afa0774125ab744fff2095bf43dcffd41175636fda7fd64caea59f3" }, "downloads": -1, "filename": "pystream-protobuf-1.1.3.tar.gz", "has_sig": false, "md5_digest": "e0c8fc90bfa190cdb97408d8b801da90", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9828, "upload_time": "2016-08-12T14:03:26", "url": "https://files.pythonhosted.org/packages/64/20/ef07f9233e0d95256fe9c66d43e86ced9cd1825b85d423cf67a4a4515698/pystream-protobuf-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "d2f2a62da88b5d0dd42c5889b650d73a", "sha256": "572c282862b39edb1bd32a1afe8b195e66ea9e2a3f7c0b86bb85d446486ea4c4" }, "downloads": -1, "filename": "pystream-protobuf-1.1.4.tar.gz", "has_sig": false, "md5_digest": "d2f2a62da88b5d0dd42c5889b650d73a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9826, "upload_time": "2016-08-12T15:37:25", "url": "https://files.pythonhosted.org/packages/d5/1a/55d3636055608815c478e1c8fdebff3eb4e28baa2bde631d4736070c0a22/pystream-protobuf-1.1.4.tar.gz" } ], "1.2.0rc0": [ { "comment_text": "", "digests": { "md5": "ab63f840f1c4381a7a8a58575203ccf9", "sha256": "00ee2622f6b2b3a2c6eaef541689dacfaa0b5a6138929b4ea536f8333c45aa01" }, "downloads": -1, "filename": "pystream-protobuf-1.2.0rc0.tar.gz", "has_sig": false, "md5_digest": "ab63f840f1c4381a7a8a58575203ccf9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11370, "upload_time": "2016-09-15T01:23:04", "url": "https://files.pythonhosted.org/packages/e7/7b/656cf2dd70b3c97fd439f03021616551760d291bac48765e4f0e567f7b36/pystream-protobuf-1.2.0rc0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "8a72bc06267a997b77e912948f36142f", "sha256": "be782cfb36b1a56f0aa8d8077ad0171f528377fa881e5cf9f2a0e00a05628edd" }, "downloads": -1, "filename": "pystream-protobuf-1.2.1.tar.gz", "has_sig": false, "md5_digest": "8a72bc06267a997b77e912948f36142f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11339, "upload_time": "2016-09-15T02:07:05", "url": "https://files.pythonhosted.org/packages/68/c9/11f333efccf7cd02a8e838eb8350ddd9a021f943deceb442337eac4cdd6f/pystream-protobuf-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "5363314fd57207f877c0abc784526c72", "sha256": "3c90759e951a3e8d39151b0c2e0307e627cecb9a21a1d50e010a406c6eeaa930" }, "downloads": -1, "filename": "pystream-protobuf-1.2.2.tar.gz", "has_sig": false, "md5_digest": "5363314fd57207f877c0abc784526c72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11350, "upload_time": "2016-09-15T10:00:46", "url": "https://files.pythonhosted.org/packages/af/12/da4685026770057ca0a315cdc15ce6d244a500b7689c83d0eb47f230bf3a/pystream-protobuf-1.2.2.tar.gz" } ], "1.3.4": [ { "comment_text": "", "digests": { "md5": "7d8cbba8e7cf59d31d3a34fc0ac9c51c", "sha256": "3ebc8d7d55859f4957b8b9da67bcdc9b1f12f8665ea81d881b2ed3883d747ff1" }, "downloads": -1, "filename": "pystream-protobuf-1.3.4.tar.gz", "has_sig": false, "md5_digest": "7d8cbba8e7cf59d31d3a34fc0ac9c51c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6484, "upload_time": "2016-11-07T07:36:46", "url": "https://files.pythonhosted.org/packages/4c/df/333ea34198add25fff66f44438cbba47e5b9df799c1691d7d354bcf033d0/pystream-protobuf-1.3.4.tar.gz" } ], "1.4.1": [ { "comment_text": "", "digests": { "md5": "f7a6ac3ba379543027ae1edaad7c2b84", "sha256": "afa324108c1cb59b19470aee68fb065f9e62b81aa6bed98bf6c57d1bc051b933" }, "downloads": -1, "filename": "pystream-protobuf-1.4.1.tar.gz", "has_sig": false, "md5_digest": "f7a6ac3ba379543027ae1edaad7c2b84", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7817, "upload_time": "2017-07-06T01:19:29", "url": "https://files.pythonhosted.org/packages/f1/1a/e6b14c4e3c0ffc4b939840282b297377ba27dd9a1907148139af7030998a/pystream-protobuf-1.4.1.tar.gz" } ], "1.4.2": [ { "comment_text": "", "digests": { "md5": "8f64d20443546401188d1611e24c6e32", "sha256": "413763e5b35322ccfcc420b363a25745fc3148d26c0a368022b7475c62d6dc12" }, "downloads": -1, "filename": "pystream-protobuf-1.4.2.tar.gz", "has_sig": false, "md5_digest": "8f64d20443546401188d1611e24c6e32", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7009, "upload_time": "2017-07-06T01:30:57", "url": "https://files.pythonhosted.org/packages/98/1a/d8c457937b6c15ba051fb5f85e041e780ada16f68665e6e94e6b8aca6885/pystream-protobuf-1.4.2.tar.gz" } ], "1.4.3": [ { "comment_text": "", "digests": { "md5": "e6717b30635249671315f4998261ee47", "sha256": "883f7b4c33af67f41df4b4d43533d34b97fb5a7e64b4b48a3e109a01e8c57a14" }, "downloads": -1, "filename": "pystream-protobuf-1.4.3.tar.gz", "has_sig": false, "md5_digest": "e6717b30635249671315f4998261ee47", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8400, "upload_time": "2017-09-14T02:14:00", "url": "https://files.pythonhosted.org/packages/f8/04/50fd6d30a926dc5cb192e81e8e89ffb2bc92eda1ad1076a2afae14062f1b/pystream-protobuf-1.4.3.tar.gz" } ], "1.4.4": [ { "comment_text": "", "digests": { "md5": "69c16b16b53532f6c82b915082c10d06", "sha256": "434a49b9db96b3b0569f20a9be34de59ccc745fa29e629e1b383dd67210ae6b1" }, "downloads": -1, "filename": "pystream-protobuf-1.4.4.tar.gz", "has_sig": false, "md5_digest": "69c16b16b53532f6c82b915082c10d06", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8245, "upload_time": "2017-09-15T14:01:52", "url": "https://files.pythonhosted.org/packages/ee/95/bf76f310d94c54535a505069ffb6448edf3284fbe7acd1ddc4947e7ad5c1/pystream-protobuf-1.4.4.tar.gz" } ], "1.4.5": [ { "comment_text": "", "digests": { "md5": "e111c0fc94e30e7b17966fe7aea63b91", "sha256": "e7df61e82c0535e62d1c92d9ba67277ff476800d484e6d8db5abbc8a26dbcee3" }, "downloads": -1, "filename": "pystream-protobuf-1.4.5.tar.gz", "has_sig": false, "md5_digest": "e111c0fc94e30e7b17966fe7aea63b91", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7551, "upload_time": "2018-05-04T21:25:40", "url": "https://files.pythonhosted.org/packages/c2/7f/ace1957d978c325b521fa210d19123623a598c0029dde9ca2121374fcb44/pystream-protobuf-1.4.5.tar.gz" } ], "1.4.6": [ { "comment_text": "", "digests": { "md5": "4913e48e09d7ea95c5e4d939c5eae2a3", "sha256": "887f7ce0e7ea82bc6dc240325276e6fd003130522c3982c1cf707b21291e3ce3" }, "downloads": -1, "filename": "pystream_protobuf-1.4.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4913e48e09d7ea95c5e4d939c5eae2a3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8970, "upload_time": "2018-05-06T18:07:59", "url": "https://files.pythonhosted.org/packages/ac/55/56f194a60d3d0790d21e22a21a5017adb35632d3f616ba9ab56c4dcdfbdc/pystream_protobuf-1.4.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "30cc31c7cd80e7ff5e3d0706fdc07c66", "sha256": "baf071360e4d98a0a5743f04f3b6157247f36d068fa0ee521c7296dab2ee76fa" }, "downloads": -1, "filename": "pystream-protobuf-1.4.6.tar.gz", "has_sig": false, "md5_digest": "30cc31c7cd80e7ff5e3d0706fdc07c66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7782, "upload_time": "2018-05-06T18:08:00", "url": "https://files.pythonhosted.org/packages/14/1a/26ef35962cd7cfb0ca6e0786f5b1510d1b80b9683b9fb4d963f5ba165a24/pystream-protobuf-1.4.6.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "7dbccb5972fc7cb0f8dd45fc2ac5fb1e", "sha256": "bd548b723dabe6339828d6bc3baacbaa44b0e18411f0651718748e2c64421b44" }, "downloads": -1, "filename": "pystream_protobuf-1.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7dbccb5972fc7cb0f8dd45fc2ac5fb1e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9432, "upload_time": "2018-10-27T07:40:09", "url": "https://files.pythonhosted.org/packages/7d/38/a38528e420ac2b750acec9c2db3dce6d66835864104742a460759e9b4e0e/pystream_protobuf-1.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "56a2cdc29e8339b0becdee000ff3de69", "sha256": "b967f5be75ddf583d837f591138c1f0f8c71286c797c6fe1749b5b7d45db06ff" }, "downloads": -1, "filename": "pystream-protobuf-1.5.0.tar.gz", "has_sig": false, "md5_digest": "56a2cdc29e8339b0becdee000ff3de69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8409, "upload_time": "2018-10-27T07:40:11", "url": "https://files.pythonhosted.org/packages/c6/1d/5e3f758b6ab4fea10704a0112de4d24616127b058c2e8cd46b26978f613d/pystream-protobuf-1.5.0.tar.gz" } ], "1.5.1": [ { "comment_text": "", "digests": { "md5": "9d7d339d41b64f4037f82dcf97cc0925", "sha256": "93b2b82fdb9194ffd61085c2b99298b7b862599c4776547532fd40a417f07a0c" }, "downloads": -1, "filename": "pystream_protobuf-1.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9d7d339d41b64f4037f82dcf97cc0925", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9425, "upload_time": "2019-10-18T14:31:02", "url": "https://files.pythonhosted.org/packages/12/07/36b5a9eca6cea4ae1ebdc2b6c5574a55bd034d8c3c93674dc8e65e7cc80b/pystream_protobuf-1.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "505c7621d5dd8216dc0b435a23f3bea9", "sha256": "3829147438190b0eacfeee63ccd1524f32a4ad754bf116abca760f184265b26c" }, "downloads": -1, "filename": "pystream-protobuf-1.5.1.tar.gz", "has_sig": false, "md5_digest": "505c7621d5dd8216dc0b435a23f3bea9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8373, "upload_time": "2019-10-18T14:31:04", "url": "https://files.pythonhosted.org/packages/72/e3/ce61dc2ced3cfbfec12e456adf06fa6f30dd0e7509b2e618a94edd09c270/pystream-protobuf-1.5.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9d7d339d41b64f4037f82dcf97cc0925", "sha256": "93b2b82fdb9194ffd61085c2b99298b7b862599c4776547532fd40a417f07a0c" }, "downloads": -1, "filename": "pystream_protobuf-1.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9d7d339d41b64f4037f82dcf97cc0925", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9425, "upload_time": "2019-10-18T14:31:02", "url": "https://files.pythonhosted.org/packages/12/07/36b5a9eca6cea4ae1ebdc2b6c5574a55bd034d8c3c93674dc8e65e7cc80b/pystream_protobuf-1.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "505c7621d5dd8216dc0b435a23f3bea9", "sha256": "3829147438190b0eacfeee63ccd1524f32a4ad754bf116abca760f184265b26c" }, "downloads": -1, "filename": "pystream-protobuf-1.5.1.tar.gz", "has_sig": false, "md5_digest": "505c7621d5dd8216dc0b435a23f3bea9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8373, "upload_time": "2019-10-18T14:31:04", "url": "https://files.pythonhosted.org/packages/72/e3/ce61dc2ced3cfbfec12e456adf06fa6f30dd0e7509b2e618a94edd09c270/pystream-protobuf-1.5.1.tar.gz" } ] }