{ "info": { "author": "Simon Knibbs", "author_email": "simon.knibbs@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Topic :: Software Development :: Libraries" ], "description": "Dataclasses JSON Schema\n=======================\n\n.. image:: https://github.com/s-knibbs/dataclasses-jsonschema/workflows/Tox%20tests/badge.svg?branch=master\n :target: https://github.com/s-knibbs/dataclasses-jsonschema/actions\n\n.. image:: https://badge.fury.io/py/dataclasses-jsonschema.svg\n :target: https://badge.fury.io/py/dataclasses-jsonschema\n\n.. image:: https://img.shields.io/lgtm/grade/python/g/s-knibbs/dataclasses-jsonschema.svg?logo=lgtm&logoWidth=18\n :target: https://lgtm.com/projects/g/s-knibbs/dataclasses-jsonschema/context:python\n :alt: Language grade: Python\n\n**Please Note:** This project is in maintenance mode. I'm currently only making urgent bugfixes.\n\nA library to generate JSON Schema from python 3.7 dataclasses. Python 3.6 is supported through the `dataclasses backport `_. Aims to be a more lightweight alternative to similar projects such as `marshmallow `_ & `pydantic `_.\n\nFeature Overview\n----------------\n\n* Support for draft-04, draft-06, Swagger 2.0 & OpenAPI 3 schema types\n* Serialisation and deserialisation\n* Data validation against the generated schema\n* `APISpec `_ support. Example below_:\n\nInstallation\n------------\n\n.. code:: bash\n\n ~$ pip install dataclasses-jsonschema\n\nFor improved validation performance using `fastjsonschema `_, install with:\n\n.. code:: bash\n\n ~$ pip install dataclasses-jsonschema[fast-validation]\n\nExamples\n--------\n\n.. code:: python\n\n from dataclasses import dataclass\n\n from dataclasses_jsonschema import JsonSchemaMixin\n\n\n @dataclass\n class Point(JsonSchemaMixin):\n \"A 2D point\"\n x: float\n y: float\n\n\nSchema Generation\n^^^^^^^^^^^^^^^^^\n\n.. code:: python\n\n >>> pprint(Point.json_schema())\n {\n 'description': 'A 2D point',\n 'type': 'object',\n 'properties': {\n 'x': {'format': 'float', 'type': 'number'},\n 'y': {'format': 'float', 'type': 'number'}\n },\n 'required': ['x', 'y']\n }\n\nData Serialisation\n^^^^^^^^^^^^^^^^^^\n.. code:: python\n\n >>> Point(x=3.5, y=10.1).to_dict()\n {'x': 3.5, 'y': 10.1}\n\nDeserialisation\n^^^^^^^^^^^^^^^\n\n.. code:: python\n\n >>> Point.from_dict({'x': 3.14, 'y': 1.5})\n Point(x=3.14, y=1.5)\n >>> Point.from_dict({'x': 3.14, y: 'wrong'})\n dataclasses_jsonschema.ValidationError: 'wrong' is not of type 'number'\n\nGenerating multiple schemas\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. code:: python\n\n from dataclasses_jsonschema import JsonSchemaMixin, SchemaType\n\n @dataclass\n class Address(JsonSchemaMixin):\n \"\"\"Postal Address\"\"\"\n building: str\n street: str\n city: str\n\n @dataclass\n class Company(JsonSchemaMixin):\n \"\"\"Company Details\"\"\"\n name: str\n address: Address\n\n >>> pprint(JsonSchemaMixin.all_json_schemas(schema_type=SchemaType.SWAGGER_V3))\n {'Address': {'description': 'Postal Address',\n 'properties': {'building': {'type': 'string'},\n 'city': {'type': 'string'},\n 'street': {'type': 'string'}},\n 'required': ['building', 'street', 'city'],\n 'type': 'object'},\n 'Company': {'description': 'Company Details',\n 'properties': {'address': {'$ref': '#/components/schemas/Address'},\n 'name': {'type': 'string'}},\n 'required': ['name', 'address'],\n 'type': 'object'}}\n\n\nCustom validation using `NewType `_\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. code:: python\n\n from dataclasses_jsonschema import JsonSchemaMixin, FieldEncoder\n\n PhoneNumber = NewType('PhoneNumber', str)\n\n class PhoneNumberField(FieldEncoder):\n\n @property\n def json_schema(self):\n return {'type': 'string', 'pattern': r'^(\\([0-9]{3}\\))?[0-9]{3}-[0-9]{4}$'}\n\n JsonSchemaMixin.register_field_encoders({PhoneNumber: PhoneNumberField()})\n\n @dataclass\n class Person(JsonSchemaMixin):\n name: str\n phone_number: PhoneNumber\n\nFor more examples `see the tests `_\n\n.. _below:\n\nAPISpec Plugin\n--------------\n**New in v2.5.0**\n\nOpenAPI & Swagger specs can be generated using the apispec plugin:\n\n.. code:: python\n\n from typing import Optional, List\n from dataclasses import dataclass\n\n from apispec import APISpec\n from apispec_webframeworks.flask import FlaskPlugin\n from flask import Flask, jsonify\n import pytest\n\n from dataclasses_jsonschema.apispec import DataclassesPlugin\n from dataclasses_jsonschema import JsonSchemaMixin\n\n\n # Create an APISpec\n spec = APISpec(\n title=\"Swagger Petstore\",\n version=\"1.0.0\",\n openapi_version=\"3.0.2\",\n plugins=[FlaskPlugin(), DataclassesPlugin()],\n )\n\n\n @dataclass\n class Category(JsonSchemaMixin):\n \"\"\"Pet category\"\"\"\n name: str\n id: Optional[int]\n\n @dataclass\n class Pet(JsonSchemaMixin):\n \"\"\"A pet\"\"\"\n categories: List[Category]\n name: str\n\n\n app = Flask(__name__)\n\n\n @app.route(\"/random\")\n def random_pet():\n \"\"\"A cute furry animal endpoint.\n ---\n get:\n description: Get a random pet\n responses:\n 200:\n content:\n application/json:\n schema: Pet\n \"\"\"\n pet = get_random_pet()\n return jsonify(pet.to_dict())\n\n # Dependant schemas (e.g. 'Category') are added automatically\n spec.components.schema(\"Pet\", schema=Pet)\n with app.test_request_context():\n spec.path(view=random_pet)\n\nTODO\n----\n\n* Add benchmarks against alternatives such as `pydantic `_ and `marshmallow `_\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/s-knibbs/dataclasses-jsonschema", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "dataclasses-jsonschema", "package_url": "https://pypi.org/project/dataclasses-jsonschema/", "platform": null, "project_url": "https://pypi.org/project/dataclasses-jsonschema/", "project_urls": { "Homepage": "https://github.com/s-knibbs/dataclasses-jsonschema" }, "release_url": "https://pypi.org/project/dataclasses-jsonschema/2.15.1/", "requires_dist": [ "python-dateutil", "jsonschema", "dataclasses ; python_version < \"3.7\"", "typing-extensions ; python_version < \"3.8\"", "apispec ; extra == 'apispec'", "fastjsonschema ; extra == 'fast-validation'" ], "requires_python": "", "summary": "JSON schema generation from dataclasses", "version": "2.15.1", "yanked": false, "yanked_reason": null }, "last_serial": 13374948, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "f2cc58acf2b6d7cb4b2830442445583e", "sha256": "e7859ea448d639e483f271562dba849f47db37a00fbd57478f32ce3b51e44ba4" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.0.0.tar.gz", "has_sig": false, "md5_digest": "f2cc58acf2b6d7cb4b2830442445583e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3966, "upload_time": "2018-07-12T18:10:22", "upload_time_iso_8601": "2018-07-12T18:10:22.083148Z", "url": "https://files.pythonhosted.org/packages/e7/61/0225262773ceac08ff2ab09c6c67417e076d6602a76618ee89a9e45a56f7/dataclasses-jsonschema-1.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "638a4c034cf235b83438e6b208f3258c", "sha256": "6795ad4cd0f68b53c8f250996811ffa32c1aec97794c9756c7ba25a0e96bf9f3" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.0.1.tar.gz", "has_sig": false, "md5_digest": "638a4c034cf235b83438e6b208f3258c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6833, "upload_time": "2018-07-16T09:04:00", "upload_time_iso_8601": "2018-07-16T09:04:00.100301Z", "url": "https://files.pythonhosted.org/packages/40/76/8043a904c63ab2c1a2dddaf03d5595a1922e01d07a3bd8b33a0edbf12cd2/dataclasses-jsonschema-1.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "8988ffeedd3840a0943d1e4f53633f02", "sha256": "018f12b14354e5a08ba8b9211fc8a136a3a9ad674895fc8d8297d24ed8323120" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.0.2.tar.gz", "has_sig": false, "md5_digest": "8988ffeedd3840a0943d1e4f53633f02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6878, "upload_time": "2018-07-17T08:42:48", "upload_time_iso_8601": "2018-07-17T08:42:48.115639Z", "url": "https://files.pythonhosted.org/packages/42/ce/2274525b3a8c03fb03a5aef9c300adcc97a91f3a824b8abe708d72d7af77/dataclasses-jsonschema-1.0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "2e61e8d210b1b27f610e20e8cffad956", "sha256": "a425dcea21af10b6c96635422f8c93c7b0a9964951d884c65b9b15df6d1bb1e9" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.1.0.tar.gz", "has_sig": false, "md5_digest": "2e61e8d210b1b27f610e20e8cffad956", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7085, "upload_time": "2018-07-18T16:37:38", "upload_time_iso_8601": "2018-07-18T16:37:38.537179Z", "url": "https://files.pythonhosted.org/packages/c9/98/d59d30b2b858e4305295e756b60f350783f7c8247a0ac6a681da6cfdce62/dataclasses-jsonschema-1.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "25b5cfedfc8858dc172a27bbe54e813f", "sha256": "0c7cf44ad337b382be49e4e888a7bcfc07e349074c5a41761c70a3a0f1611d9a" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.1.1.tar.gz", "has_sig": false, "md5_digest": "25b5cfedfc8858dc172a27bbe54e813f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7221, "upload_time": "2018-07-26T16:03:23", "upload_time_iso_8601": "2018-07-26T16:03:23.350122Z", "url": "https://files.pythonhosted.org/packages/6a/d2/acdf43400541d062dec1a91aab742b7d18edf3735e2940771bab096bb124/dataclasses-jsonschema-1.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "5edac1667503b067dc3ef8feab0697a6", "sha256": "3358c25d26e4ba6759c66b4215b388632044ee1146a71c463a4599b64cc3ecdf" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.2.0.tar.gz", "has_sig": false, "md5_digest": "5edac1667503b067dc3ef8feab0697a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7621, "upload_time": "2018-08-07T14:10:47", "upload_time_iso_8601": "2018-08-07T14:10:47.466410Z", "url": "https://files.pythonhosted.org/packages/32/9e/7394e5faa1f70eb8e9d34518339795b76ddc71049ef7b9b530b41f88c9c8/dataclasses-jsonschema-1.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "a0a5f5d53e014515f6ec716104759648", "sha256": "e88a0a57a5ee07b7ad5170eff23174646813b8f7b35c0acf315d231d9ded58c8" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.2.1.tar.gz", "has_sig": false, "md5_digest": "a0a5f5d53e014515f6ec716104759648", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7927, "upload_time": "2018-08-16T11:54:39", "upload_time_iso_8601": "2018-08-16T11:54:39.993601Z", "url": "https://files.pythonhosted.org/packages/b6/e8/e2efa760759d36e3ab18e2362ca52d1bd1fa109b4f3eef35fb9841477565/dataclasses-jsonschema-1.2.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "89da4d0dad139ac92d19bbb08e5a19f3", "sha256": "b95008ff766221f310949057a1719b1962bd67da774b43902cbad14f7b92e7ce" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.3.0.tar.gz", "has_sig": false, "md5_digest": "89da4d0dad139ac92d19bbb08e5a19f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7995, "upload_time": "2018-09-10T10:51:30", "upload_time_iso_8601": "2018-09-10T10:51:30.654453Z", "url": "https://files.pythonhosted.org/packages/81/70/6a2ea82f8c7bb297bab4a172febdb3b161b907b2cab521d919401652cf5e/dataclasses-jsonschema-1.3.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "0646cf386ca4f85cdac7d97fea5af358", "sha256": "b70aab4e953b8baf1763e38d8e59802fea8c7b3705abcb28d858ac574d7b0b71" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.4.0.tar.gz", "has_sig": false, "md5_digest": "0646cf386ca4f85cdac7d97fea5af358", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8369, "upload_time": "2018-11-05T09:31:38", "upload_time_iso_8601": "2018-11-05T09:31:38.109642Z", "url": "https://files.pythonhosted.org/packages/67/3f/08de541e4c22c4507faeb95d6a7311f800abff802247e42cebd9aa81ba78/dataclasses-jsonschema-1.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.1": [ { "comment_text": "", "digests": { "md5": "e7d3c00b67c1ca2279cc84fa035fd15e", "sha256": "ca24685340886e5d1830da9939b4ca4d0ee6de079aa5f7e174ac08a3b35d1d55" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.4.1.tar.gz", "has_sig": false, "md5_digest": "e7d3c00b67c1ca2279cc84fa035fd15e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8680, "upload_time": "2018-12-10T11:55:01", "upload_time_iso_8601": "2018-12-10T11:55:01.519665Z", "url": "https://files.pythonhosted.org/packages/f3/38/5580478e0309b50c8bc14e46e4736e642c230e6a01cfdf2aa305cc9c45d9/dataclasses-jsonschema-1.4.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.2": [ { "comment_text": "", "digests": { "md5": "6a18ebb2ed219d5d84462d1eb9949223", "sha256": "bb38f45d7276e2e4b85ff70edf8ea4aeaf8e890bcbf2f58d1a2546914b78203d" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.4.2.tar.gz", "has_sig": false, "md5_digest": "6a18ebb2ed219d5d84462d1eb9949223", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8687, "upload_time": "2019-01-14T10:49:33", "upload_time_iso_8601": "2019-01-14T10:49:33.572389Z", "url": "https://files.pythonhosted.org/packages/46/b7/ea474f4a9c53ff8a55bfad4b3c9daba3dd4e170e8ba010de7032f9a25133/dataclasses-jsonschema-1.4.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.3": [ { "comment_text": "", "digests": { "md5": "8d32f5a19edd048d570d77bc3eb663dc", "sha256": "723ca5b4638d042be7a7d0fceff1f3728dce9ec2209574ea9001d81a36e0e1fe" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.4.3.tar.gz", "has_sig": false, "md5_digest": "8d32f5a19edd048d570d77bc3eb663dc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9007, "upload_time": "2019-01-16T10:55:08", "upload_time_iso_8601": "2019-01-16T10:55:08.553361Z", "url": "https://files.pythonhosted.org/packages/37/76/13c66a94fe2fb5b9c3ff3627d4660b68558daeb6337572320a5de264c2aa/dataclasses-jsonschema-1.4.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "8f829fff8525b85187f94c38ca4d7b74", "sha256": "05bb80f8ee0585cc04ede4c8b1885e27354f1c8c9ca973493b65e51c81338104" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.5.0.tar.gz", "has_sig": false, "md5_digest": "8f829fff8525b85187f94c38ca4d7b74", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9033, "upload_time": "2019-01-17T11:49:07", "upload_time_iso_8601": "2019-01-17T11:49:07.777889Z", "url": "https://files.pythonhosted.org/packages/12/16/85ba2134b355e01568dffbe506a79d6d8abd0d5953bab6b918cf6899a9c2/dataclasses-jsonschema-1.5.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.5.1": [ { "comment_text": "", "digests": { "md5": "8adb7e13f123559db75baaac6847db4c", "sha256": "958b280949790659b9f38c29e0657f046e71c39b1e16016bc7fb98c081ad999a" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.5.1.tar.gz", "has_sig": false, "md5_digest": "8adb7e13f123559db75baaac6847db4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9368, "upload_time": "2019-01-18T11:30:57", "upload_time_iso_8601": "2019-01-18T11:30:57.395257Z", "url": "https://files.pythonhosted.org/packages/5d/af/71f203694d2ddc347a7aaa8806760c29dc21835d84cb0dff4acee1e37f76/dataclasses-jsonschema-1.5.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.5.2": [ { "comment_text": "", "digests": { "md5": "5059219058209a4ab1b6b4706b7f40f9", "sha256": "be58ff55853dd9beb8fec8632fa5de0a038c4babfb909255f6ec1110bfe1cf1b" }, "downloads": -1, "filename": "dataclasses-jsonschema-1.5.2.tar.gz", "has_sig": false, "md5_digest": "5059219058209a4ab1b6b4706b7f40f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9365, "upload_time": "2019-01-31T09:45:38", "upload_time_iso_8601": "2019-01-31T09:45:38.160885Z", "url": "https://files.pythonhosted.org/packages/33/e3/b4f44e859fec69065e653b7aac66cd8169fd7fa66a0fe2df97be2fd97df5/dataclasses-jsonschema-1.5.2.tar.gz", "yanked": false, "yanked_reason": null } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "09657996b450a39ad1ff396a81afbd49", "sha256": "054d19fdc21d065ddf5245b717915103a54d1a13ac140d48fa6c32c8387fddc4" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.0.0.tar.gz", "has_sig": false, "md5_digest": "09657996b450a39ad1ff396a81afbd49", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10653, "upload_time": "2019-02-05T18:36:24", "upload_time_iso_8601": "2019-02-05T18:36:24.448586Z", "url": "https://files.pythonhosted.org/packages/55/80/7a995d077145fcc04ce15985783cc191cc004fb1f74384590a8392444fb2/dataclasses-jsonschema-2.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "c1c104e3f185e56195025bcd7027f775", "sha256": "2ccc80696adbea7d48f977f064dfadc1af46837bf86786512b52a39406b76a60" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.1.0.tar.gz", "has_sig": false, "md5_digest": "c1c104e3f185e56195025bcd7027f775", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12338, "upload_time": "2019-02-17T17:18:21", "upload_time_iso_8601": "2019-02-17T17:18:21.466294Z", "url": "https://files.pythonhosted.org/packages/51/c6/12e36533396be22afdaccfb6f6cea09bfd60a557831f17bdb9c102a1be7b/dataclasses-jsonschema-2.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "27fde17f6cb82712761990e04ccc23f7", "sha256": "171201a03f11096eb1e7756296f43b82651163c9ac8a634be81e1003551cd55c" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.1.1.tar.gz", "has_sig": false, "md5_digest": "27fde17f6cb82712761990e04ccc23f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12410, "upload_time": "2019-02-20T15:17:04", "upload_time_iso_8601": "2019-02-20T15:17:04.935432Z", "url": "https://files.pythonhosted.org/packages/7c/ec/1c639f3e85052ce96598623dffec83069398623f35968ae1be0759eb6e63/dataclasses-jsonschema-2.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "2.1.2": [ { "comment_text": "", "digests": { "md5": "5b693272ef097df0456e5baa4115efec", "sha256": "4760dfcb76997cf8adf5461dbc35d2e2d1f481356be7f7b6037e7712058fd9dc" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.1.2.tar.gz", "has_sig": false, "md5_digest": "5b693272ef097df0456e5baa4115efec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13010, "upload_time": "2019-03-26T15:42:23", "upload_time_iso_8601": "2019-03-26T15:42:23.402783Z", "url": "https://files.pythonhosted.org/packages/a0/b2/d9dadfc3f369f913511ffe50fc4eb5043c67de7076ade694d8786121bc8e/dataclasses-jsonschema-2.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "2.10.0": [ { "comment_text": "", "digests": { "md5": "d6827a400df4f2bc4b5c6fcb123e2c95", "sha256": "603ca4aba8d972ff13abd3e5c4a771c9c46684ac84aa9cc980cd7442c801ffc5" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.10.0.tar.gz", "has_sig": false, "md5_digest": "d6827a400df4f2bc4b5c6fcb123e2c95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23789, "upload_time": "2019-10-01T15:58:59", "upload_time_iso_8601": "2019-10-01T15:58:59.735037Z", "url": "https://files.pythonhosted.org/packages/38/35/e3932e7720344c049909ea799a982c6b04a350237e542e0ea486fdfa4038/dataclasses-jsonschema-2.10.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.10.1": [ { "comment_text": "", "digests": { "md5": "9b608bd25dffd9144f63d1763572109b", "sha256": "cb1f0c6eec56cc01ab83f9e0a15477a51a643185d2a5d5184e036998fdc0f28e" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.10.1.tar.gz", "has_sig": false, "md5_digest": "9b608bd25dffd9144f63d1763572109b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23808, "upload_time": "2019-10-09T14:08:57", "upload_time_iso_8601": "2019-10-09T14:08:57.520605Z", "url": "https://files.pythonhosted.org/packages/40/10/21f1a8184a604f88a60101d932a2fc039698a28dfd3b56f480a6b11759a2/dataclasses-jsonschema-2.10.1.tar.gz", "yanked": false, "yanked_reason": null } ], "2.11.0": [ { "comment_text": "", "digests": { "md5": "fbc3338410e2d9a71d2b22bf70d65154", "sha256": "cca8425cd9604bdfbd384b2fb4317b6e1ffebdf80da189b58ea1d9181e037fc5" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.11.0.tar.gz", "has_sig": false, "md5_digest": "fbc3338410e2d9a71d2b22bf70d65154", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24449, "upload_time": "2019-10-21T09:01:36", "upload_time_iso_8601": "2019-10-21T09:01:36.638778Z", "url": "https://files.pythonhosted.org/packages/5d/e8/5ded93d2a7addcda74a71e91de1bea3658b117ac3e2b6965fc96d591089d/dataclasses-jsonschema-2.11.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.11.1": [ { "comment_text": "", "digests": { "md5": "1be3d35493ed42e0db6db85a341e2a93", "sha256": "dc314c082c17536683c8fc642ca005bbe185df00ff2f80e5ab2927f1d1d96dab" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.11.1.tar.gz", "has_sig": false, "md5_digest": "1be3d35493ed42e0db6db85a341e2a93", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24600, "upload_time": "2019-11-08T15:09:35", "upload_time_iso_8601": "2019-11-08T15:09:35.096656Z", "url": "https://files.pythonhosted.org/packages/6c/b8/5e24d01bcfd241705be0103d481c47fba2566910d8d6d6c0baf5e2843d05/dataclasses-jsonschema-2.11.1.tar.gz", "yanked": false, "yanked_reason": null } ], "2.12.0": [ { "comment_text": "", "digests": { "md5": "f09fbbf0cbad09a00311e33965c048e9", "sha256": "37afaac146231dd5018ec032cc5c9af64da353351c39c27e63e88d132f92cf0d" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.12.0.tar.gz", "has_sig": false, "md5_digest": "f09fbbf0cbad09a00311e33965c048e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24754, "upload_time": "2019-12-10T12:57:06", "upload_time_iso_8601": "2019-12-10T12:57:06.049566Z", "url": "https://files.pythonhosted.org/packages/a9/82/18cc07e631272066efa1b719c016664a33f65d64ac4339acbf5fbc462169/dataclasses-jsonschema-2.12.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.12.1": [ { "comment_text": "", "digests": { "md5": "8eadb0429c7d13af688ca3c3d4b2b3fc", "sha256": "2f66eeaff21cc9e5dd64f629ea72c7d7a61ee6183b23fba6095dc7e2c12544fa" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.12.1.tar.gz", "has_sig": false, "md5_digest": "8eadb0429c7d13af688ca3c3d4b2b3fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24655, "upload_time": "2020-09-11T14:18:09", "upload_time_iso_8601": "2020-09-11T14:18:09.652488Z", "url": "https://files.pythonhosted.org/packages/1d/47/b69df6e9dca9e367bf1b7bb11f2d47a1af2650b8c443371beb3809e8ba29/dataclasses-jsonschema-2.12.1.tar.gz", "yanked": false, "yanked_reason": null } ], "2.13.0": [ { "comment_text": "", "digests": { "md5": "3924077e9c41e5a33f2c614c5ebd7881", "sha256": "a5ba439d2ff5cdea7e42baf69c5fc5c7b576aefe325b4b32ebaa5b1418b4c06c" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.13.0.tar.gz", "has_sig": false, "md5_digest": "3924077e9c41e5a33f2c614c5ebd7881", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22950, "upload_time": "2020-10-08T12:04:14", "upload_time_iso_8601": "2020-10-08T12:04:14.509810Z", "url": "https://files.pythonhosted.org/packages/81/81/8d16eb3f57f36a0ec3dc4774952e681410584250d5e64ce665868d3ac727/dataclasses-jsonschema-2.13.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.14.0": [ { "comment_text": "", "digests": { "md5": "a27fcd27c1c32f0bc0aa2af1bd217e5f", "sha256": "5291c9180f4b74151de9769116c4c4404436fff86b91fafe6fe36bf0364587fd" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.14.0.tar.gz", "has_sig": false, "md5_digest": "a27fcd27c1c32f0bc0aa2af1bd217e5f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27789, "upload_time": "2021-01-25T12:19:23", "upload_time_iso_8601": "2021-01-25T12:19:23.147221Z", "url": "https://files.pythonhosted.org/packages/5a/48/5a54a1c18d4d39d3ce896d4f23c01b7ab9987803ea4eb51de65165cfcc59/dataclasses-jsonschema-2.14.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.14.1": [ { "comment_text": "", "digests": { "md5": "119cc3e74096e5bed96e6fb1bf2d08d2", "sha256": "a51fcb9523ce7aaa6daec2b42ce05f512f795192321c0ca5918b69125023dbc3" }, "downloads": -1, "filename": "dataclasses_jsonschema-2.14.1-py3-none-any.whl", "has_sig": false, "md5_digest": "119cc3e74096e5bed96e6fb1bf2d08d2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17596, "upload_time": "2021-02-18T10:27:16", "upload_time_iso_8601": "2021-02-18T10:27:16.229960Z", "url": "https://files.pythonhosted.org/packages/b9/a8/238b71460c733472aa45d43f9b9ccc77cdb09cfc82f6733b100a790e7b8f/dataclasses_jsonschema-2.14.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "0cf6008bfc743770cc4d7955fc345fba", "sha256": "4f0ba1ee882f2a79afa7e36d98e063fd7c71f15b54affeebf9116238e73e7b94" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.14.1.tar.gz", "has_sig": false, "md5_digest": "0cf6008bfc743770cc4d7955fc345fba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27991, "upload_time": "2021-02-09T14:36:14", "upload_time_iso_8601": "2021-02-09T14:36:14.514515Z", "url": "https://files.pythonhosted.org/packages/31/3e/1b5e7915cb74be8d46d44b78e669a6e3e96f523faf80ee405c65a0e7ed46/dataclasses-jsonschema-2.14.1.tar.gz", "yanked": false, "yanked_reason": null } ], "2.15.0": [ { "comment_text": "", "digests": { "md5": "71844eea91728d5a9578e59aae93e998", "sha256": "4385a9a0dfaf2cd7adb1d087eefed8a7789628e7651d04e843d177261ff70738" }, "downloads": -1, "filename": "dataclasses_jsonschema-2.15.0-py3-none-any.whl", "has_sig": false, "md5_digest": "71844eea91728d5a9578e59aae93e998", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17918, "upload_time": "2021-10-01T09:09:56", "upload_time_iso_8601": "2021-10-01T09:09:56.825618Z", "url": "https://files.pythonhosted.org/packages/ac/3b/b8c305a40c349be355da736c1acb8ff24e7d7a1c626d85d82f9e4061219b/dataclasses_jsonschema-2.15.0-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "2.15.1": [ { "comment_text": "", "digests": { "md5": "ad5a50c57f0ae99637c829298b0ef35b", "sha256": "baa7c5414fb24e103ed131263e95622e3842909481d59ca42a4e639d12faa017" }, "downloads": -1, "filename": "dataclasses_jsonschema-2.15.1-py3-none-any.whl", "has_sig": false, "md5_digest": "ad5a50c57f0ae99637c829298b0ef35b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17990, "upload_time": "2022-04-01T14:46:39", "upload_time_iso_8601": "2022-04-01T14:46:39.348215Z", "url": "https://files.pythonhosted.org/packages/85/e5/5828b0f33927a75f29441215ff521e54c696e9c09c04db43bc4abca09524/dataclasses_jsonschema-2.15.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ed4ed7bcb17612d7a85ec85facb95155", "sha256": "e3726a76b3d24b6c1f2198982be9278c14fdec84b8652294037558403b0aa5bb" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.15.1.tar.gz", "has_sig": false, "md5_digest": "ed4ed7bcb17612d7a85ec85facb95155", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29209, "upload_time": "2022-04-01T14:46:41", "upload_time_iso_8601": "2022-04-01T14:46:41.023383Z", "url": "https://files.pythonhosted.org/packages/6f/4a/5d66ccd0d51885d85497cde41993cf3c970421e4c695fbbfc0e8b52db97e/dataclasses-jsonschema-2.15.1.tar.gz", "yanked": false, "yanked_reason": null } ], "2.2.0": [ { "comment_text": "", "digests": { "md5": "363e3843cee6179fc9fd6cb0bb50bc8b", "sha256": "7c17bab6bee9f123e2e2a3b3b8ea1ffa6b1ac7e7bee001531d48042c207aa7a8" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.2.0.tar.gz", "has_sig": false, "md5_digest": "363e3843cee6179fc9fd6cb0bb50bc8b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13279, "upload_time": "2019-04-07T11:50:55", "upload_time_iso_8601": "2019-04-07T11:50:55.162782Z", "url": "https://files.pythonhosted.org/packages/78/ff/5fb3c3551289efa3069653818b35265c52101466299cac0874a5410a0637/dataclasses-jsonschema-2.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.3.0": [ { "comment_text": "", "digests": { "md5": "d72b65203e451ef62be1102a25f6b2ba", "sha256": "d320b467e9c660f34a1d0b701a1a9ecd613136b4e86a39fb967f0a7e6210dab8" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.3.0.tar.gz", "has_sig": false, "md5_digest": "d72b65203e451ef62be1102a25f6b2ba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13947, "upload_time": "2019-05-20T13:46:31", "upload_time_iso_8601": "2019-05-20T13:46:31.537542Z", "url": "https://files.pythonhosted.org/packages/d7/77/c5515b805ca50843bb9b055d6841e42173eebed37e896ec73ea65f7afb52/dataclasses-jsonschema-2.3.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.4.0": [ { "comment_text": "", "digests": { "md5": "309310fdd00db68661069f2fc61f331b", "sha256": "4d5c69a3dd612a2ad01bda5ba331e6e79d6c60f61fda6fe328684f936071dd93" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.4.0.tar.gz", "has_sig": false, "md5_digest": "309310fdd00db68661069f2fc61f331b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17534, "upload_time": "2019-07-01T08:39:27", "upload_time_iso_8601": "2019-07-01T08:39:27.245879Z", "url": "https://files.pythonhosted.org/packages/63/bc/8dcc02c016ba9e7ec7600554b09ae85950f5820ed6aa7c857b19efd66506/dataclasses-jsonschema-2.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.5.0": [ { "comment_text": "", "digests": { "md5": "069909533f44c91473672bc201c4cb56", "sha256": "161df82ca745e94f1640448f2c11031326cd796b60b9064f0411270bf17e3ca0" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.5.0.tar.gz", "has_sig": false, "md5_digest": "069909533f44c91473672bc201c4cb56", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20016, "upload_time": "2019-07-08T09:42:48", "upload_time_iso_8601": "2019-07-08T09:42:48.090166Z", "url": "https://files.pythonhosted.org/packages/27/91/a0a813aa3d4f77190b61046c9e2d02627b97ff372e5e592a4ac53f57bebb/dataclasses-jsonschema-2.5.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.6.0": [ { "comment_text": "", "digests": { "md5": "22f8e5c800faa3f12a23cf4acaedf6dd", "sha256": "4d791e88e2f049fbdc0e3492b0654bc6a447bc2c193dc072955adf28f2295bf6" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.6.0.tar.gz", "has_sig": false, "md5_digest": "22f8e5c800faa3f12a23cf4acaedf6dd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21122, "upload_time": "2019-07-10T13:03:36", "upload_time_iso_8601": "2019-07-10T13:03:36.078064Z", "url": "https://files.pythonhosted.org/packages/27/d2/9bd5405d348b95d5cd2368b5e1e92716bf9387604cb15c9846d02eb535c3/dataclasses-jsonschema-2.6.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.6.1": [ { "comment_text": "", "digests": { "md5": "49efc5b800d42f47ea957d8cff516ea9", "sha256": "201b3c496e7155b0a29d0728d5e8e3da40848866fe7679d325ea63da79b6bd4b" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.6.1.tar.gz", "has_sig": false, "md5_digest": "49efc5b800d42f47ea957d8cff516ea9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21074, "upload_time": "2019-07-11T10:16:27", "upload_time_iso_8601": "2019-07-11T10:16:27.721304Z", "url": "https://files.pythonhosted.org/packages/0d/bd/26cf7a8a8675c2257fa5fc00b0a8510abec7f79abcab9a1ddb1681ed7102/dataclasses-jsonschema-2.6.1.tar.gz", "yanked": false, "yanked_reason": null } ], "2.6.2": [ { "comment_text": "", "digests": { "md5": "96bde113cccfe9d340d091ac5dfde59d", "sha256": "07c7dfee6aa19ecd18689c94c90260497bd6e4a50b4edd9b35fbb3300b35629d" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.6.2.tar.gz", "has_sig": false, "md5_digest": "96bde113cccfe9d340d091ac5dfde59d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21117, "upload_time": "2019-07-12T15:52:56", "upload_time_iso_8601": "2019-07-12T15:52:56.282437Z", "url": "https://files.pythonhosted.org/packages/3c/a5/1c2a0466da290fb09e2117073b6321228694103bad936c66230e59924474/dataclasses-jsonschema-2.6.2.tar.gz", "yanked": false, "yanked_reason": null } ], "2.7.2": [ { "comment_text": "", "digests": { "md5": "1b88c25220f5a2e49b0ccd3f44608233", "sha256": "2d99e83c8f52180d797414cd4cdddc182e941f261e1c4b4be7ac56832a6c1e40" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.7.2.tar.gz", "has_sig": false, "md5_digest": "1b88c25220f5a2e49b0ccd3f44608233", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21334, "upload_time": "2019-08-05T15:09:04", "upload_time_iso_8601": "2019-08-05T15:09:04.638868Z", "url": "https://files.pythonhosted.org/packages/34/64/5da0ff6c6330006e7276ab6cdffeef413195a92764c3a6b956d1e6ac8f64/dataclasses-jsonschema-2.7.2.tar.gz", "yanked": false, "yanked_reason": null } ], "2.7.3": [ { "comment_text": "", "digests": { "md5": "8f8a33572bfe11d30a70ec6ed342be42", "sha256": "3dafca4b8a4a3a40d28982f77d5342c1c498287bfce2bc7ade19acbc6471f596" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.7.3.tar.gz", "has_sig": false, "md5_digest": "8f8a33572bfe11d30a70ec6ed342be42", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21378, "upload_time": "2019-08-07T14:41:32", "upload_time_iso_8601": "2019-08-07T14:41:32.634032Z", "url": "https://files.pythonhosted.org/packages/68/41/08e200d1c5654ef3dbe378fa4df06cdce71376f3e1c4518a96bf5129bd8c/dataclasses-jsonschema-2.7.3.tar.gz", "yanked": false, "yanked_reason": null } ], "2.8.0": [ { "comment_text": "", "digests": { "md5": "ffe70615dbfcd66d754975dfb9e006bd", "sha256": "e5c5eb4c8dd176727afe75acb8c927099f15c3e276981d07b28e910fecac2804" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.8.0.tar.gz", "has_sig": false, "md5_digest": "ffe70615dbfcd66d754975dfb9e006bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22548, "upload_time": "2019-08-12T08:59:10", "upload_time_iso_8601": "2019-08-12T08:59:10.767814Z", "url": "https://files.pythonhosted.org/packages/c8/60/d52ed85ca476cc7efba37c37ebfa46663ea9956c8582fc3f3bbc2db0eb13/dataclasses-jsonschema-2.8.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.9.0": [ { "comment_text": "", "digests": { "md5": "15c91e83e611573ebe9db9662699ea91", "sha256": "602f956e8495bf7df22d7dc5abf7e84c850f67be800553f05a4882e6df8b97a1" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.9.0.tar.gz", "has_sig": false, "md5_digest": "15c91e83e611573ebe9db9662699ea91", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22945, "upload_time": "2019-09-10T13:30:36", "upload_time_iso_8601": "2019-09-10T13:30:36.836729Z", "url": "https://files.pythonhosted.org/packages/ec/2d/4d51b9821c4177083be4e9afe4086fb5f117575d9da56a7553201772c903/dataclasses-jsonschema-2.9.0.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ad5a50c57f0ae99637c829298b0ef35b", "sha256": "baa7c5414fb24e103ed131263e95622e3842909481d59ca42a4e639d12faa017" }, "downloads": -1, "filename": "dataclasses_jsonschema-2.15.1-py3-none-any.whl", "has_sig": false, "md5_digest": "ad5a50c57f0ae99637c829298b0ef35b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17990, "upload_time": "2022-04-01T14:46:39", "upload_time_iso_8601": "2022-04-01T14:46:39.348215Z", "url": "https://files.pythonhosted.org/packages/85/e5/5828b0f33927a75f29441215ff521e54c696e9c09c04db43bc4abca09524/dataclasses_jsonschema-2.15.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ed4ed7bcb17612d7a85ec85facb95155", "sha256": "e3726a76b3d24b6c1f2198982be9278c14fdec84b8652294037558403b0aa5bb" }, "downloads": -1, "filename": "dataclasses-jsonschema-2.15.1.tar.gz", "has_sig": false, "md5_digest": "ed4ed7bcb17612d7a85ec85facb95155", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29209, "upload_time": "2022-04-01T14:46:41", "upload_time_iso_8601": "2022-04-01T14:46:41.023383Z", "url": "https://files.pythonhosted.org/packages/6f/4a/5d66ccd0d51885d85497cde41993cf3c970421e4c695fbbfc0e8b52db97e/dataclasses-jsonschema-2.15.1.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }