{ "info": { "author": "Yani Lathouris", "author_email": "ylathouris@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Build Tools" ], "description": "[![CircleCI](https://circleci.com/gh/ylathouris/jsonio.svg?style=shield)](https://circleci.com/gh/ylathouris/jsonio) ![Coverage](coverage.svg)\n\n---\n\n# jsonio\n\nThe `jsonio` package provides utility functions for reading and writing JSON data. It supports the following features:\n\n* [Easy Read/Write](#readwrite)\n* [Works Just Like The `json` Library](#json)\n* [Supports `datetime/date` Objects](#datetime)\n* [Supports `dataclasses` (Python 3.7+)](#dataclass)\n* [Preserve Ordering](#ordereddict)\n\n
\n\n## Installation\n\n```\npip install jsonio\n```\n\n
\n\n### Easy Read/Write\n\n**Read**\n\n```python\nimport jsonio\n\ndata = jsonio.read('/foo/bar.json')\n```\n\n**Write**\n\n```python\nimport jsonio\n\njsonio.write({'foo': 'bar'}, '/foo/bar.json')\n```\n\n
\n\n\n### Works Just Like The `json` Library\n\n**Load**\n\n```python\nimport jsonio\n\nwith open('/foo/bar.json', 'r') as jsonfile:\n data = jsonio.load(jsonfile)\n```\n\n**Loads**\n\n```python\nimport jsonio\n\ndata = jsonio.loads('{\"foo\": \"bar\"}')\n```\n\n**Dump**\n\n```python\nimport jsonio\n\nwith open('/foo/bar.json', 'w') as jsonfile:\n jsonio.dump({'foo': 'bar'}, jsonfile)\n```\n\n**Dumps**\n\n```python\nimport jsonio\n\ndata = {\n 'apple': 'crumble',\n 'banana': 'split',\n}\n\n# Use standard options.\ntext = jsonio.dumps(data, jsonfile, indent=2, sort_keys=True)\n```\n\n
\n\n\n### Supports `date/datetime` Objects\n\n\n```python\nimport datetime\nimport jsonio\n\nbefore = {\n 'date': datetime.date.today(),\n 'timestamp': datetime.datetime.now(),\n}\n\ndata = jsonio.dumps(before)\nafter = jsonio.loads(data)\nassert before == after # True\n```\n\n
\n\n\n### Supports `dataclasses` (Python 3.7+)\n\n```python\nfrom dataclasses import dataclass\nimport jsonio\n\n\n@dataclass\nclass Fruit:\n apple: str\n banana: str\n\n\nbefore = Fruit(apple='Fuji', banana='Lady Finger')\n\ndata = jsonio.dumps(before)\nafter = jsonio.loads(data)\nassert before == after # True\n```\n\n
\n\n### Preserve Ordering - i.e. `OrderedDict` Objects\n\n```python\nimport collections\nimport jsonio\n\nbefore = collections.OrderedDict([('banana', 'split'), ('apple', 'crumble')])\n\ntext = jsonio.dumps(before, indent=2)\nafter = jsonio.loads(text, ordered=True)\nassert before == after # True\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ylathouris/jsonio", "keywords": "jsonio,json,utils", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "jsonio", "package_url": "https://pypi.org/project/jsonio/", "platform": "", "project_url": "https://pypi.org/project/jsonio/", "project_urls": { "Homepage": "https://github.com/ylathouris/jsonio", "Say Thanks!": "http://saythanks.io/to/ylathouris", "Source": "https://github.com/ylathouris/jsonio", "Tracker": "https://github.com/ylathouris/jsonio/issues" }, "release_url": "https://pypi.org/project/jsonio/0.1.4/", "requires_dist": [ "python-dateutil (<3,>=2.7.5)" ], "requires_python": ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4", "summary": "JSON Helpers", "version": "0.1.4" }, "last_serial": 4472043, "releases": { "0.1.2": [ { "comment_text": "", "digests": { "md5": "884e7d02a5cb3f67b4df6261ac941030", "sha256": "0b0caf7dc5088035dfb2a3c5c0cbbfac3c9b71af12d70e8bb80b928b30dd81a5" }, "downloads": -1, "filename": "jsonio-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "884e7d02a5cb3f67b4df6261ac941030", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 6083, "upload_time": "2018-11-10T09:44:37", "url": "https://files.pythonhosted.org/packages/72/f8/ff9328f0fe1a6a6dc36935dcc3d46800a45a4e97c09e42bb26bd82135202/jsonio-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1244d614c6ca45e760298018903171fa", "sha256": "c841cc5345661bdc4a3988b4aef3592386e449ce8d261abac28375d2ce26cee7" }, "downloads": -1, "filename": "jsonio-0.1.2.tar.gz", "has_sig": false, "md5_digest": "1244d614c6ca45e760298018903171fa", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 5070, "upload_time": "2018-11-10T09:44:39", "url": "https://files.pythonhosted.org/packages/83/c7/1e2447f00c9b5ef2e918a728f6786f6243fb897b9d7f2c1b5d6041591b52/jsonio-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "4b65e0e3e575fbf02774323dc8fdedaa", "sha256": "82601053e3b5e9e9a9387769b34dff82f15711185973a5d8d3d610fe2a4f197b" }, "downloads": -1, "filename": "jsonio-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4b65e0e3e575fbf02774323dc8fdedaa", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 6077, "upload_time": "2018-11-10T09:46:07", "url": "https://files.pythonhosted.org/packages/dd/33/e6f75c2d599a36ca3e1d1db57c54678884130a513f7849988bacb9830261/jsonio-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c77386e3daf467289a9f2c3259a73abe", "sha256": "705b7e4fedae2c3a4517c94bf7c6ca51cfe15763f555f14cc57cbf323d5a3613" }, "downloads": -1, "filename": "jsonio-0.1.3.tar.gz", "has_sig": false, "md5_digest": "c77386e3daf467289a9f2c3259a73abe", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 5072, "upload_time": "2018-11-10T09:46:08", "url": "https://files.pythonhosted.org/packages/ee/62/a696fe59da787617937d1dc74f278b74215b1fef9f9d093645e1bd323629/jsonio-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "26006d6b92669d47db66dd981ced2abe", "sha256": "6b5d1611243a795f8de4ddda746f52cf09758d53c64b4e55a3a8ab1c8e40de08" }, "downloads": -1, "filename": "jsonio-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "26006d6b92669d47db66dd981ced2abe", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 6078, "upload_time": "2018-11-10T09:50:32", "url": "https://files.pythonhosted.org/packages/a8/5c/bf3ca5706d4e7e7c86c2031fc771eba093c273f936ea9f6ee545e0f8ad5f/jsonio-0.1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5abe76f2ea6a057259c7162a375e4604", "sha256": "b3aaacb6162089af963db526a3cf2bb3905fb155aa06fbc2d3c7ce171fee8b71" }, "downloads": -1, "filename": "jsonio-0.1.4.tar.gz", "has_sig": false, "md5_digest": "5abe76f2ea6a057259c7162a375e4604", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 5073, "upload_time": "2018-11-10T09:50:34", "url": "https://files.pythonhosted.org/packages/ba/21/1003b5167f802c79a1834998f9591a1fcfe9bc751a934613053aaf1cb0d6/jsonio-0.1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "26006d6b92669d47db66dd981ced2abe", "sha256": "6b5d1611243a795f8de4ddda746f52cf09758d53c64b4e55a3a8ab1c8e40de08" }, "downloads": -1, "filename": "jsonio-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "26006d6b92669d47db66dd981ced2abe", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 6078, "upload_time": "2018-11-10T09:50:32", "url": "https://files.pythonhosted.org/packages/a8/5c/bf3ca5706d4e7e7c86c2031fc771eba093c273f936ea9f6ee545e0f8ad5f/jsonio-0.1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5abe76f2ea6a057259c7162a375e4604", "sha256": "b3aaacb6162089af963db526a3cf2bb3905fb155aa06fbc2d3c7ce171fee8b71" }, "downloads": -1, "filename": "jsonio-0.1.4.tar.gz", "has_sig": false, "md5_digest": "5abe76f2ea6a057259c7162a375e4604", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4", "size": 5073, "upload_time": "2018-11-10T09:50:34", "url": "https://files.pythonhosted.org/packages/ba/21/1003b5167f802c79a1834998f9591a1fcfe9bc751a934613053aaf1cb0d6/jsonio-0.1.4.tar.gz" } ] }