{ "info": { "author": "Dylan Baker", "author_email": "dylan@pnwbakers.com", "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.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "JSONStreams\n===========\n\n.. image:: https://travis-ci.org/dcbaker/jsonstreams.svg?branch=master\n :target: https://travis-ci.org/dcbaker/jsonstreams\n :alt: Travis CI Status\n\n.. image:: https://ci.appveyor.com/api/projects/status/ocrt9nol8kn3pm1t/branch/master?svg=true\n :target: https://ci.appveyor.com/project/dcbaker/jsonstreams\n :alt: Appveyor CI Status\n\n.. image:: https://readthedocs.org/projects/jsonstreams/badge/?version=latest\n :target: http://jsonstreams.readthedocs.io/en/stable/?badge=latest\n :alt: Documentation Status\n\n\nSource code is available at `github `_.\n\nThe code is licensed MIT. See the included LICENSE file for the exact terms.\n\n\nDescription\n###########\n\n\nJSONstreams is a package that attempts to making writing JSON in a streaming\nformat easier. In contrast to the core json module, this package doesn't\nrequire building a complete tree of dicts and lists before writing, instead it\nprovides a straightforward way to to write a JSON document **without** building\nthe whole data structure ahead of time.\n\nJSONstreams considers there to be two basic types, the JSON array and the JSON\nobject, which correspond to Python's list and dict respectively, and can encode\nany types that the json.JSONEncoder can, or can use an subclass to handle\nadditional types.\n\nThe interface is designed to be context manger centric. The Stream class, and\nthe Array and Object classes returned by the subarray and subobject methods\n(respectively), can be used as context managers or not, but use as context\nmanagers are recommended to ensure that each container is closed properly.\n\n\nBasic Usage\n###########\n\nA simple example looks like this\n\n.. code-block:: python\n\n with jsonstreams.Stream('foo', jsonstreams.Type.object) as s:\n s.write('foo', 'bar')\n with s.subobject('a') as a:\n a.write(1, 'foo')\n a.write(2, 'bar')\n s.write('bar', 'foo')\n\nWriting into a closed group will raise an exception, which should not be\nhandled, this exception is always an error in programming and should be\ncorrected.\n\nIt is possible to write any value that the encoder (json.JSONEncoder by\ndefault) can encode, so iterating over lists or dictionaries to write them in\nis unnecessary:\n\n.. code-block:: python\n\n mylist = list(range(10))\n mydict = {a: b for a in range(10) for b in 'abcdefghij'}\n\n with jsonstreams.Stream('foo', jsonstreams.Type.object) as s:\n s.write('list', mylist)\n s.write('dict', mydict)\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/dcbaker/jsonstreams", "keywords": "JSON stream", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "jsonstreams", "package_url": "https://pypi.org/project/jsonstreams/", "platform": "", "project_url": "https://pypi.org/project/jsonstreams/", "project_urls": { "Homepage": "https://github.com/dcbaker/jsonstreams" }, "release_url": "https://pypi.org/project/jsonstreams/0.4.1/", "requires_dist": [ "six", "enum34; python_version < \"3.4\"", "simplejson; extra == 'recomended'", "tox; extra == 'test'" ], "requires_python": "", "summary": "A JSON streaming writer", "version": "0.4.1" }, "last_serial": 2583673, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "c701df2f80eb2c49366e309471c87a6d", "sha256": "256a8762bcb0bfaa022bb3d4615bf77cdf1f28bddb4b61d99f01523da84f0afc" }, "downloads": -1, "filename": "jsonstreams-0.1.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "c701df2f80eb2c49366e309471c87a6d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6841, "upload_time": "2016-08-17T23:34:19", "url": "https://files.pythonhosted.org/packages/df/95/0e20aa202c4cb6623a687c01dbce4a3aaeb6af3619c9020614e451ce9346/jsonstreams-0.1.1-py2.py3-none-any.whl" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "39d9d4bcb7f5cb724e2d98a3a2f7d424", "sha256": "225c8e079d23822b584f85d2e4022fe074788b8f37d32fbf8b344284acb60ca9" }, "downloads": -1, "filename": "jsonstreams-0.1.2-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "39d9d4bcb7f5cb724e2d98a3a2f7d424", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7359, "upload_time": "2016-08-18T22:57:02", "url": "https://files.pythonhosted.org/packages/ba/a1/2f38dcb183968185c131bed5b6d7a7e5594c4fbc3ae47d356e465c74a2f5/jsonstreams-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f91bfaf7fdc04df7859be985fd58cb50", "sha256": "f3b4543ab67656a0ee7fbd8e13c0d4cc1d2428ed7db8961e16f29e1e34a2006c" }, "downloads": -1, "filename": "jsonstreams-0.1.2.tar.gz", "has_sig": true, "md5_digest": "f91bfaf7fdc04df7859be985fd58cb50", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5613, "upload_time": "2016-08-18T22:57:04", "url": "https://files.pythonhosted.org/packages/dd/9a/d721bd21421401d2604d5ab51bd66e161478feed168ea795d970c9a8a94b/jsonstreams-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "b58a860b2df5af7b20094808dae1f5a8", "sha256": "50d78716563c51864bf2928bfa2cc22875a6302aa70a688e7ed7fd200444861a" }, "downloads": -1, "filename": "jsonstreams-0.2.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "b58a860b2df5af7b20094808dae1f5a8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8473, "upload_time": "2016-08-19T19:36:18", "url": "https://files.pythonhosted.org/packages/81/ec/0c228e798afca3bc6c6980563206aa17734abbe2e2d64adbc9012e7761f2/jsonstreams-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "97359a6a28d6b9f8b1a49c0abfa4bc54", "sha256": "9ecaaeb458494507fbb1c50ce8a2848ac464255c092d351e1b636ad4e3f0720a" }, "downloads": -1, "filename": "jsonstreams-0.2.0.tar.gz", "has_sig": true, "md5_digest": "97359a6a28d6b9f8b1a49c0abfa4bc54", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6674, "upload_time": "2016-08-19T19:36:20", "url": "https://files.pythonhosted.org/packages/58/80/d38b8c8fe0ac35033bdd0eec41dfacaff0f31b5dd643f13981dd5f72f03a/jsonstreams-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "183e43107aa4d6858130cf1323276bbb", "sha256": "9c9a18f04a28c77be78df5887f18655f85618ea81f1d2cf4682d816771d10f34" }, "downloads": -1, "filename": "jsonstreams-0.2.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "183e43107aa4d6858130cf1323276bbb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8634, "upload_time": "2016-08-20T01:01:56", "url": "https://files.pythonhosted.org/packages/3e/9b/fc90840d3c90332cf44ddcaaf4889e81c9c38dea17fac4526d38cb440617/jsonstreams-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eee46182c2b55ec25de442d65201e542", "sha256": "1456908306c9933df930649e24fdc545240b427321205faa0af1ca2992e29549" }, "downloads": -1, "filename": "jsonstreams-0.2.1.tar.gz", "has_sig": true, "md5_digest": "eee46182c2b55ec25de442d65201e542", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6762, "upload_time": "2016-08-20T01:01:59", "url": "https://files.pythonhosted.org/packages/31/1b/755d9cffb7e4521395deb9d0f819935107bfea5b14cf800900332cae543f/jsonstreams-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "266cea9329d3f07fa772dd75d0b5269b", "sha256": "9d3ada683414e80b023e1fa45c7ffd375fb34b45d97367b39e544e46446677b8" }, "downloads": -1, "filename": "jsonstreams-0.3.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "266cea9329d3f07fa772dd75d0b5269b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10508, "upload_time": "2016-08-22T21:37:39", "url": "https://files.pythonhosted.org/packages/45/55/bf144c34e09ead10dd84fd4b5629ede51fcf3586bc64d14fd95446b69ee3/jsonstreams-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "739f311a17e7367445df5d7617d4af01", "sha256": "ec26a72bfff344a753aa8c454a4b520e0336df60cd70904354867becf7b14b7b" }, "downloads": -1, "filename": "jsonstreams-0.3.0.tar.gz", "has_sig": true, "md5_digest": "739f311a17e7367445df5d7617d4af01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7727, "upload_time": "2016-08-22T21:37:42", "url": "https://files.pythonhosted.org/packages/21/e6/ae0a6fedaaf4e62e16100ed604601ad4db9ae50563c2bea0e28e27064dfc/jsonstreams-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "9de86ea6d5d83505bf828f49663e19c2", "sha256": "51260ca372af4f686a100edcf0c6c93d5c9d4734346023ad4210264927ac4e06" }, "downloads": -1, "filename": "jsonstreams-0.3.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "9de86ea6d5d83505bf828f49663e19c2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10745, "upload_time": "2016-08-24T19:44:08", "url": "https://files.pythonhosted.org/packages/fd/66/988affda28666dc4f2348700b2ff680047acb2910d88f19936d1979828a6/jsonstreams-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9f1ebd5b2d6adab90028dbf19c7ed8e3", "sha256": "41a7f787692fc170aff94702376cf972d1ed9678638c1b8340cb9ac15d372ed7" }, "downloads": -1, "filename": "jsonstreams-0.3.1.tar.gz", "has_sig": true, "md5_digest": "9f1ebd5b2d6adab90028dbf19c7ed8e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7967, "upload_time": "2016-08-24T19:44:14", "url": "https://files.pythonhosted.org/packages/b6/4e/fc68910cc9b72bca0f9ee8d8cdc7d3ef55c03ab62b2dfb9338d74639f11c/jsonstreams-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "b1baa62a30f75ce5c549e5ad6318c2ca", "sha256": "a4bd0ac17993eed8f32ab65d06cc1b9d8f9f92f92c11b4bb9fefb04931dbf791" }, "downloads": -1, "filename": "jsonstreams-0.3.2-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "b1baa62a30f75ce5c549e5ad6318c2ca", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10020, "upload_time": "2016-08-25T23:57:26", "url": "https://files.pythonhosted.org/packages/9a/56/7f2fc8c1a55f2dca89f954c56602a636b352cd903b09a515f9713278d1ca/jsonstreams-0.3.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb516b89a1bebb0ba212f4d935b958ae", "sha256": "7d7802cc23509d1d129d640e591651f979defc74da69cb8577c6dbcf26b5a5e5" }, "downloads": -1, "filename": "jsonstreams-0.3.2.tar.gz", "has_sig": true, "md5_digest": "cb516b89a1bebb0ba212f4d935b958ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7641, "upload_time": "2016-08-25T23:57:30", "url": "https://files.pythonhosted.org/packages/28/57/d70adaa037212b48cb06c58055fafae94e482fed50f7ba5addc053ee9588/jsonstreams-0.3.2.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "bf29f323967a182b1dccae28bf45ddc6", "sha256": "19a1c24d0128e886785cb7c4a44fcd949e376b2124a0eb1c3007a59cc1a612e8" }, "downloads": -1, "filename": "jsonstreams-0.4.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "bf29f323967a182b1dccae28bf45ddc6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11064, "upload_time": "2016-08-31T23:52:28", "url": "https://files.pythonhosted.org/packages/84/55/877f1d6052a7bb1f350f77f289f02d68229318982b23e5cd72d49a0f8a78/jsonstreams-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4f41453fcfe8c9e735998f2cdfb899d2", "sha256": "ee55dbbf8e7527c526a78e4db039ad4cdebb9e058347f515ae7e08eae6338f67" }, "downloads": -1, "filename": "jsonstreams-0.4.0.tar.gz", "has_sig": true, "md5_digest": "4f41453fcfe8c9e735998f2cdfb899d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8144, "upload_time": "2016-08-31T23:52:32", "url": "https://files.pythonhosted.org/packages/ef/8f/cf15b93b5acb3954df09cc4acbeb45d9e9be38149b3976bfffb06fabce45/jsonstreams-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "535632d736e2c381ea08ae12ec2b2e00", "sha256": "ed67c2a58a9757214baaf67675db2e504d6c9bc590da86c2e8a5805ad8bc845c" }, "downloads": -1, "filename": "jsonstreams-0.4.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "535632d736e2c381ea08ae12ec2b2e00", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11077, "upload_time": "2017-01-18T23:21:12", "url": "https://files.pythonhosted.org/packages/a1/80/1d282ee108a9590ca930afa9b9ee14dbd1a2ef9e16f72153eb7eeb29d442/jsonstreams-0.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d92f47d2db2b366d61e7bab826602b69", "sha256": "875c03c0a93e1e23a7eaa7a7a89e36290ff29613286bce563dad37fb7061addd" }, "downloads": -1, "filename": "jsonstreams-0.4.1.tar.gz", "has_sig": true, "md5_digest": "d92f47d2db2b366d61e7bab826602b69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8146, "upload_time": "2017-01-18T23:21:14", "url": "https://files.pythonhosted.org/packages/09/9b/21a1d63160166e58a4b2e24f068c1bf9bfb3610f389d39cd5e96910b4f47/jsonstreams-0.4.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "535632d736e2c381ea08ae12ec2b2e00", "sha256": "ed67c2a58a9757214baaf67675db2e504d6c9bc590da86c2e8a5805ad8bc845c" }, "downloads": -1, "filename": "jsonstreams-0.4.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "535632d736e2c381ea08ae12ec2b2e00", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11077, "upload_time": "2017-01-18T23:21:12", "url": "https://files.pythonhosted.org/packages/a1/80/1d282ee108a9590ca930afa9b9ee14dbd1a2ef9e16f72153eb7eeb29d442/jsonstreams-0.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d92f47d2db2b366d61e7bab826602b69", "sha256": "875c03c0a93e1e23a7eaa7a7a89e36290ff29613286bce563dad37fb7061addd" }, "downloads": -1, "filename": "jsonstreams-0.4.1.tar.gz", "has_sig": true, "md5_digest": "d92f47d2db2b366d61e7bab826602b69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8146, "upload_time": "2017-01-18T23:21:14", "url": "https://files.pythonhosted.org/packages/09/9b/21a1d63160166e58a4b2e24f068c1bf9bfb3610f389d39cd5e96910b4f47/jsonstreams-0.4.1.tar.gz" } ] }