{ "info": { "author": "Eric Bobbitt", "author_email": "eric@hellouser.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries", "Topic :: Utilities" ], "description": "****\nCiri\n****\n\nCiri helps you build schema definitions for your application; giving you a foundation to perform validation, serialization and encoding. \n\nFeatures\n========\n\n* Python 3/2 support\n* Serialize data to basic Python types \n* Deserialize data back to schema objects\n* Schema encoding\n* Polymorphic schemas\n* Composable Fields\n* Controllable error handling\n* Pre/post processors available on fields\n* Simple API\n\n\nInstall\n=======\n\n::\n\n $ pip install ciri\n\n\nDocumentation\n=============\n\nDocumentation can be found at http://ciri.hellouser.net/ .\n\nExample\n=======\n\n.. code-block:: python\n\n import datetime\n\n from ciri import fields, Schema, ValidationError\n\n\n class Actor(Schema):\n\n first_name = fields.String()\n last_name = fields.String()\n\n\n class Movie(Schema):\n\n title = fields.String()\n released = fields.Date()\n cast = fields.List(Actor())\n\n\n movie = Movie()\n output = movie.serialize({'title': 'Good Will Hunting',\n 'released': datetime.date(1998, 1, 9),\n 'cast': [\n {'first_name': 'Matt', 'last_name': 'Damon'},\n {'first_name': 'Ben', 'last_name': 'Affleck'},\n {'first_name': 'Robin', 'last_name': 'Williams'}\n ]})\n\n # output:\n # {'cast': [{'last_name': 'Damon', 'first_name': 'Matt'},\n # {'last_name': 'Affleck', 'first_name': 'Ben'},\n # {'last_name': 'Williams', 'first_name': 'Robin'}],\n # 'released': '1998-01-09',\n # 'title': 'Good Will Hunting'}\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ericb/ciri", "keywords": "schema serialization deserialization serialize deserialize encode decode validation validate rest api", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "ciri", "package_url": "https://pypi.org/project/ciri/", "platform": "", "project_url": "https://pypi.org/project/ciri/", "project_urls": { "Documentation": "https://ciri.hellouser.net", "Homepage": "https://github.com/ericb/ciri", "Source": "https://github.com/ericb/ciri", "Tracker": "https://github.com/ericb/ciri/issues" }, "release_url": "https://pypi.org/project/ciri/0.6.0/", "requires_dist": null, "requires_python": ">=2.6", "summary": "Python Schema Library", "version": "0.6.0" }, "last_serial": 5564925, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "99e3e1b03c356d7dc4fe64c58f8e82d6", "sha256": "a1faa54a0a1bf259b4ab59cfc298f932400e07cf407267e061c0f45776d7cb11" }, "downloads": -1, "filename": "ciri-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "99e3e1b03c356d7dc4fe64c58f8e82d6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.6", "size": 16412, "upload_time": "2018-06-17T18:45:54", "url": "https://files.pythonhosted.org/packages/1e/55/194440055e8927231341049921ddf525df3c3c30f4be0cf61a3c89c33377/ciri-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3974a937761de9f87eb8ee4039c12ecd", "sha256": "a03728de5f0196effe5bf2a169bb5763f2685e4b4317b76969d8f4b94b726320" }, "downloads": -1, "filename": "ciri-0.2.1.tar.gz", "has_sig": false, "md5_digest": "3974a937761de9f87eb8ee4039c12ecd", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6", "size": 14628, "upload_time": "2018-06-17T18:45:55", "url": "https://files.pythonhosted.org/packages/39/6a/54da590532de0ac038e775a97aacddb484811753609d3c060ebfd7c223de/ciri-0.2.1.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "aafa345c97546e34b5713780202103b0", "sha256": "4b73d908973b6a2a765ed0e29079be6cc643a85ef21c2db717c5e4480cf52dcb" }, "downloads": -1, "filename": "ciri-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aafa345c97546e34b5713780202103b0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.6", "size": 19629, "upload_time": "2019-07-21T22:34:50", "url": "https://files.pythonhosted.org/packages/7e/8c/75ac22c7e58f9a4b6d7d765633a3dde390732fb184bdab9164acb6ea03fb/ciri-0.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8fbe9d227dd107cc168d0ffe9d679054", "sha256": "633fa4e981def24352b679be9d3f750549264649aaa290d9aaca044ac07e86fc" }, "downloads": -1, "filename": "ciri-0.6.0.tar.gz", "has_sig": false, "md5_digest": "8fbe9d227dd107cc168d0ffe9d679054", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6", "size": 16755, "upload_time": "2019-07-21T22:34:52", "url": "https://files.pythonhosted.org/packages/fb/db/10ee86ae58d2c87ac91025449e3fd402718fda2177be3494c012dffee569/ciri-0.6.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "aafa345c97546e34b5713780202103b0", "sha256": "4b73d908973b6a2a765ed0e29079be6cc643a85ef21c2db717c5e4480cf52dcb" }, "downloads": -1, "filename": "ciri-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aafa345c97546e34b5713780202103b0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.6", "size": 19629, "upload_time": "2019-07-21T22:34:50", "url": "https://files.pythonhosted.org/packages/7e/8c/75ac22c7e58f9a4b6d7d765633a3dde390732fb184bdab9164acb6ea03fb/ciri-0.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8fbe9d227dd107cc168d0ffe9d679054", "sha256": "633fa4e981def24352b679be9d3f750549264649aaa290d9aaca044ac07e86fc" }, "downloads": -1, "filename": "ciri-0.6.0.tar.gz", "has_sig": false, "md5_digest": "8fbe9d227dd107cc168d0ffe9d679054", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6", "size": 16755, "upload_time": "2019-07-21T22:34:52", "url": "https://files.pythonhosted.org/packages/fb/db/10ee86ae58d2c87ac91025449e3fd402718fda2177be3494c012dffee569/ciri-0.6.0.tar.gz" } ] }