{ "info": { "author": "Eric V. Smith", "author_email": "eric@python.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": ".. image:: https://img.shields.io/pypi/v/dataclasses.svg\n :target: https://pypi.org/project/dataclasses/\n\n\nThis is an implementation of PEP 557, Data Classes. It is a backport\nfor Python 3.6. Because dataclasses will be included in Python 3.7,\nany discussion of dataclass features should occur on the python-dev\nmailing list at https://mail.python.org/mailman/listinfo/python-dev.\nAt this point this repo should only be used for historical purposes\n(it's where the original dataclasses discussions took place) and for\ndiscussion of the actual backport to Python 3.6.\n\nSee https://www.python.org/dev/peps/pep-0557/ for the details of how\nData Classes work.\n\nA test file can be found at\nhttps://github.com/ericvsmith/dataclasses/blob/master/test/test_dataclasses.py,\nor in the sdist file.\n\nInstallation\n-------------\n\n.. code-block::\n\n pip install dataclasses\n\n\nExample Usage\n-------------\n\n.. code-block:: python\n\n from dataclasses import dataclass\n\n @dataclass\n class InventoryItem:\n name: str\n unit_price: float\n quantity_on_hand: int = 0\n\n def total_cost(self) -> float:\n return self.unit_price * self.quantity_on_hand\n\n item = InventoryItem('hammers', 10.49, 12)\n print(item.total_cost())\n\nSome additional tools can be found in dataclass_tools.py, included in\nthe sdist.\n\nCompatibility\n-------------\n\nThis backport assumes that dict objects retain their sort order. This\nis true in the language spec for Python 3.7 and greater. Since this\nis a backport to Python 3.6, it raises an interesting question: does\nthat guarantee apply to 3.6? For CPython 3.6 it does. As of the time\nof this writing, it's also true for all other Python implementations\nthat claim to be 3.6 compatible, of which there are none. Any new\n3.6 implementations are expected to have ordered dicts. See the\nanalysis at the end of this email:\n\nhttps://mail.python.org/pipermail/python-dev/2017-December/151325.html\n\nAs of version 0.4, this code no longer works with Python 3.7. For 3.7,\nuse the built-in dataclasses module.\n\nRelease History\n---------------\n\n+---------+------------+-------------------------------------+\n| Version | Date | Description |\n+=========+============+=====================================+\n| 0.7 | 2019-10-20 | Require python 3.6 only |\n+---------+------------+-------------------------------------+\n| 0.6 | 2018-05-17 | Equivalent to Python 3.7.0rc1 |\n+---------+------------+-------------------------------------+\n| 0.5 | 2018-03-28 | Equivalent to Python 3.7.0b3 |\n+---------+------------+-------------------------------------+\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/ericvsmith/dataclasses", "keywords": "", "license": "Apache", "maintainer": "", "maintainer_email": "", "name": "dataclasses", "package_url": "https://pypi.org/project/dataclasses/", "platform": "", "project_url": "https://pypi.org/project/dataclasses/", "project_urls": { "Homepage": "https://github.com/ericvsmith/dataclasses" }, "release_url": "https://pypi.org/project/dataclasses/0.7/", "requires_dist": null, "requires_python": ">=3.6, <3.7", "summary": "A backport of the dataclasses module for Python 3.6", "version": "0.7" }, "last_serial": 6003690, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "ebf1f005f4bcfbbfcc93b4016d1c9cb9", "sha256": "7453d237c07b54fbe7f34269cb50bdd14b247f161e2e40fd36cd0d572696ec91" }, "downloads": -1, "filename": "dataclasses-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "ebf1f005f4bcfbbfcc93b4016d1c9cb9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7968, "upload_time": "2017-09-10T23:50:09", "url": "https://files.pythonhosted.org/packages/c2/1a/f071ef9c0ca0de699888a0216f03e461ca52a6606b4e4e67a3fd0945cc57/dataclasses-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "58c654cd417ce0d5868f2e4e1357bdff", "sha256": "a20c07c7fb59b0f1b7484ba4845ce1d3a5fd9fa28ac07b4c1b7b17d4b2f6c8da" }, "downloads": -1, "filename": "dataclasses-0.1.tar.gz", "has_sig": false, "md5_digest": "58c654cd417ce0d5868f2e4e1357bdff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13268, "upload_time": "2017-09-10T23:50:10", "url": "https://files.pythonhosted.org/packages/18/f6/c65a5cafa61d5e1aeb56b5b0ce08eeb7a49255e7af612f4ffb68d5afbf32/dataclasses-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "ee427879a203254f452450dd4854aa75", "sha256": "88ef405c36c11623db398a3efc28bb05cc219717def604b3011f51497d36d6e2" }, "downloads": -1, "filename": "dataclasses-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "ee427879a203254f452450dd4854aa75", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12085, "upload_time": "2017-11-30T01:44:01", "url": "https://files.pythonhosted.org/packages/63/3b/97b1df59a8bbf6366a10ae37e8794681993729c15726f093d81d500041a7/dataclasses-0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c3ee978fac83eeace5dc82aca3364d5a", "sha256": "cb0862ffeed52910182bffa56b50c439b790ae6169b59897c045d332cc030395" }, "downloads": -1, "filename": "dataclasses-0.2.tar.gz", "has_sig": false, "md5_digest": "c3ee978fac83eeace5dc82aca3364d5a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21767, "upload_time": "2017-11-30T01:44:04", "url": "https://files.pythonhosted.org/packages/b2/1b/c9440e565f8582d6abc7fa40d037e1b5f6d66e938a8629b5efdb15cf3d7e/dataclasses-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "2a0c0ea6d2d7533e9b527b5333c52c11", "sha256": "5e9c6144acb2113b6d7fdcbfa352a9639322c38752323503ef04710d8b8e68ce" }, "downloads": -1, "filename": "dataclasses-0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "2a0c0ea6d2d7533e9b527b5333c52c11", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12084, "upload_time": "2017-12-02T13:58:27", "url": "https://files.pythonhosted.org/packages/c5/0f/509bf941c92e2e52330e736f7a7c66eb5147fb86f6c41d64a5819ccbc847/dataclasses-0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dab4fd8c10dba2c378232869a18925f9", "sha256": "5ea21f4d75eee0a6c316b76782f0426e6ac63915815de99eda7313ce35e14ecb" }, "downloads": -1, "filename": "dataclasses-0.3.tar.gz", "has_sig": false, "md5_digest": "dab4fd8c10dba2c378232869a18925f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22371, "upload_time": "2017-12-02T13:58:28", "url": "https://files.pythonhosted.org/packages/a5/84/548d2f6c7cbd17a3ba89f1cadd6bb18f3b990b56b08cfe90d42044eb641c/dataclasses-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "ada16beae5a5cd60ba357d38ab8f87a8", "sha256": "068953b730c80cbb13ca6aac6ceedaa5d483fb6081a372ac4788aa5179ed9597" }, "downloads": -1, "filename": "dataclasses-0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "ada16beae5a5cd60ba357d38ab8f87a8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11945, "upload_time": "2018-01-28T15:54:55", "url": "https://files.pythonhosted.org/packages/1a/5c/1b3c26c66fe52d05519a6240eb8d27481dc955dd303cd10cba47412c3566/dataclasses-0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3056bcdcd07c5a21f2f9536826703898", "sha256": "0f75133f21f6c9bd0fe82bc75d9908e46f531682911c9cffa75bce0e40ef09ef" }, "downloads": -1, "filename": "dataclasses-0.4.tar.gz", "has_sig": false, "md5_digest": "3056bcdcd07c5a21f2f9536826703898", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24274, "upload_time": "2018-01-28T15:54:56", "url": "https://files.pythonhosted.org/packages/f7/46/d95afb5e1291f6ec18175b249a8fb2f168b1b19c7f9dcce0e1584924be22/dataclasses-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "f6e0758dfe34ab36751e59e3d8e57476", "sha256": "7127de1976d5c6d4f374c9826aefe6564b612690a60ca957cbd5c64483326dc1" }, "downloads": -1, "filename": "dataclasses-0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "f6e0758dfe34ab36751e59e3d8e57476", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13070, "upload_time": "2018-03-28T07:39:02", "url": "https://files.pythonhosted.org/packages/e6/aa/06d69f3084fcf49bc02db6f39a8126a7d5a1f3ebfdf4ae69bcbc68141e01/dataclasses-0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5f26de2b272ad6a9a1e2524b69b11f08", "sha256": "3f20420c953ecf4c4df68f3aaee48dea69a87935aaeceffce1176b5366b08f1e" }, "downloads": -1, "filename": "dataclasses-0.5.tar.gz", "has_sig": false, "md5_digest": "5f26de2b272ad6a9a1e2524b69b11f08", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27624, "upload_time": "2018-03-28T07:39:03", "url": "https://files.pythonhosted.org/packages/47/6b/78d693919f14438cea61ecf1ff20cbfaace33f41c95618fd9a848aa2a844/dataclasses-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "cc987fdfba4e1c07cee4f6919055ba6e", "sha256": "454a69d788c7fda44efd71e259be79577822f5e3f53f029a22d08004e951dc9f" }, "downloads": -1, "filename": "dataclasses-0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "cc987fdfba4e1c07cee4f6919055ba6e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14757, "upload_time": "2018-05-18T11:09:16", "url": "https://files.pythonhosted.org/packages/26/2f/1095cdc2868052dd1e64520f7c0d5c8c550ad297e944e641dbf1ffbb9a5d/dataclasses-0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "127fcfe8c4a99d2968e31efdb0362ed7", "sha256": "6988bd2b895eef432d562370bb707d540f32f7360ab13da45340101bc2307d84" }, "downloads": -1, "filename": "dataclasses-0.6.tar.gz", "has_sig": false, "md5_digest": "127fcfe8c4a99d2968e31efdb0362ed7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36819, "upload_time": "2018-05-18T11:09:17", "url": "https://files.pythonhosted.org/packages/59/e4/2f921edfdf1493bdc07b914cbea43bc334996df4841a34523baf73d1fb4f/dataclasses-0.6.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "6f2bb66b4815b820a78a47792ffce4c6", "sha256": "3459118f7ede7c8bea0fe795bff7c6c2ce287d01dd226202f7c9ebc0610a7836" }, "downloads": -1, "filename": "dataclasses-0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "6f2bb66b4815b820a78a47792ffce4c6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <3.7", "size": 18967, "upload_time": "2019-10-20T18:01:36", "url": "https://files.pythonhosted.org/packages/e1/d2/6f02df2616fd4016075f60157c7a0452b38d8f7938ae94343911e0fb0b09/dataclasses-0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "969e12cac2b69ddc280758f76b481372", "sha256": "494a6dcae3b8bcf80848eea2ef64c0cc5cd307ffc263e17cdf42f3e5420808e6" }, "downloads": -1, "filename": "dataclasses-0.7.tar.gz", "has_sig": false, "md5_digest": "969e12cac2b69ddc280758f76b481372", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <3.7", "size": 35690, "upload_time": "2019-10-20T18:01:38", "url": "https://files.pythonhosted.org/packages/7a/71/fdbab71f1f714e03ead2d264bf444f88379bc09b2937d54ec83894057f80/dataclasses-0.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6f2bb66b4815b820a78a47792ffce4c6", "sha256": "3459118f7ede7c8bea0fe795bff7c6c2ce287d01dd226202f7c9ebc0610a7836" }, "downloads": -1, "filename": "dataclasses-0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "6f2bb66b4815b820a78a47792ffce4c6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <3.7", "size": 18967, "upload_time": "2019-10-20T18:01:36", "url": "https://files.pythonhosted.org/packages/e1/d2/6f02df2616fd4016075f60157c7a0452b38d8f7938ae94343911e0fb0b09/dataclasses-0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "969e12cac2b69ddc280758f76b481372", "sha256": "494a6dcae3b8bcf80848eea2ef64c0cc5cd307ffc263e17cdf42f3e5420808e6" }, "downloads": -1, "filename": "dataclasses-0.7.tar.gz", "has_sig": false, "md5_digest": "969e12cac2b69ddc280758f76b481372", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <3.7", "size": 35690, "upload_time": "2019-10-20T18:01:38", "url": "https://files.pythonhosted.org/packages/7a/71/fdbab71f1f714e03ead2d264bf444f88379bc09b2937d54ec83894057f80/dataclasses-0.7.tar.gz" } ] }