{ "info": { "author": "Grigory Statsenko", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3 :: Only", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "=========\nclassical\n=========\n\nConvenience tools for working with Python classes.\n\nSimplified subclassing:\n\n.. code-block:: python\n\n class MyClass:\n def __init__(self, *args, **kwargs):\n pass # do whatever\n\n # subclass with presets\n MySubClass = argumented_subclass(MyClass, 'MySubClass', arg1='value', arg2=4)\n\nVarious descriptors:\n\n.. code-block:: python\n\n class Thing:\n Red = ArgumentedSubclass(color='red')\n book = AutoProperty(has='pages')\n def __init__(self, color=None, has=None):\n self.color = color\n self.has = has\n\n Thing.Red # is a subclass of Thing and is 'red'\n Thing.Red.book # is an instance of Thing (and Thing.Red), is 'red' and has 'pages'\n\n\nSee the full documentation at http://classical.readthedocs.io/en/latest/\n\n\nInstallation\n~~~~~~~~~~~~\n\n.. code-block:: bash\n\n pip install classical\n\n\nTesting\n~~~~~~~\n\n.. code-block:: bash\n\n make test\n\nYou may need to install ``[develop]`` extras to run tests\n\n\nGenerating docs\n~~~~~~~~~~~~~~~\n\n.. code-block:: bash\n\n make docs\n\nYou may need to install ``[develop]`` extras to generate docs\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/altvod/classical", "keywords": "class utilities descriptors properties factories", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "classical", "package_url": "https://pypi.org/project/classical/", "platform": "", "project_url": "https://pypi.org/project/classical/", "project_urls": { "Homepage": "https://github.com/altvod/classical" }, "release_url": "https://pypi.org/project/classical/2.1.0/", "requires_dist": null, "requires_python": "", "summary": "Class Tools for Python", "version": "2.1.0" }, "last_serial": 3466818, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "8b15ecca90df6f2cdfcd77b70e8caed0", "sha256": "6e83bf55d2a6052558c2439794f9dda7d592972368db7343df97a8071c01c35b" }, "downloads": -1, "filename": "classical-1.0.0.tar.gz", "has_sig": false, "md5_digest": "8b15ecca90df6f2cdfcd77b70e8caed0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2303, "upload_time": "2017-03-09T19:05:23", "url": "https://files.pythonhosted.org/packages/a2/b9/862414ce624fe5823ef4ac8b3fa0a3c5e6b840ef9b446f6ec9a7e7beb2f4/classical-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "01ca4f0ed01c329d9239d65c6535f6ad", "sha256": "a7476182bf9e4dc80c8e88d2b002384d3512c3bd9d926b0c34fd625f21091b63" }, "downloads": -1, "filename": "classical-1.0.1.tar.gz", "has_sig": false, "md5_digest": "01ca4f0ed01c329d9239d65c6535f6ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2391, "upload_time": "2017-03-09T19:16:04", "url": "https://files.pythonhosted.org/packages/3f/62/5c2fbfef722dcf8ed9b219736a3c7b804fb1770a43c840bab47448a02ef2/classical-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "00d4160017aef7e0e46674d9ee326d90", "sha256": "7494bfc5cde97ca5f07eac251153e17c492d867b0bf64a699884c1b0d97a0578" }, "downloads": -1, "filename": "classical-1.0.2.tar.gz", "has_sig": false, "md5_digest": "00d4160017aef7e0e46674d9ee326d90", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2383, "upload_time": "2017-03-09T19:16:48", "url": "https://files.pythonhosted.org/packages/69/14/504934b9c2d9d756f9b7beb44dcd8261715f8975a061dacbe13e4de55a34/classical-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "7ed76e759d79bc20bc4880ca6a5151f1", "sha256": "3766f70d8088b0ebb94ae1360719d462de00bc43ee3bbfd1f731d20c6c2b6f22" }, "downloads": -1, "filename": "classical-1.0.3.tar.gz", "has_sig": false, "md5_digest": "7ed76e759d79bc20bc4880ca6a5151f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3106, "upload_time": "2017-04-15T21:25:45", "url": "https://files.pythonhosted.org/packages/42/21/0005b0e8e6060108fefe00180937f2e4afacd128f26931cc3075b001caaa/classical-1.0.3.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "4ab786aebcdba03b903c169b562ad226", "sha256": "0b292fac74d08432492196032bcebca579b3025ca753e510d8c5b87c0f05387b" }, "downloads": -1, "filename": "classical-1.1.3.tar.gz", "has_sig": false, "md5_digest": "4ab786aebcdba03b903c169b562ad226", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3437, "upload_time": "2017-04-16T09:05:11", "url": "https://files.pythonhosted.org/packages/05/a0/b1fc7115e731175cfb94e700ba087775591f3852e42bcde9f56f498b43ea/classical-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "0eb2e3d2f41758e12a7cc2769926959f", "sha256": "f923297c00753ad637c49ec653b3129d6bc83b5de27007f1f4716e5a438d0af8" }, "downloads": -1, "filename": "classical-1.1.4.tar.gz", "has_sig": false, "md5_digest": "0eb2e3d2f41758e12a7cc2769926959f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3466, "upload_time": "2017-04-16T09:13:51", "url": "https://files.pythonhosted.org/packages/f5/6c/84c62f6b677b331cc7aa9f27003652d980ae6a7c41595183494442fd6986/classical-1.1.4.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "ba437a4d0dfb2f1f0b37a2110c3324a2", "sha256": "aa52e181ede2c2ee476bc9759c9e24f0d4876bcf09c336fbc04548cefa1f1816" }, "downloads": -1, "filename": "classical-2.0.0.tar.gz", "has_sig": false, "md5_digest": "ba437a4d0dfb2f1f0b37a2110c3324a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4374, "upload_time": "2017-04-16T19:45:08", "url": "https://files.pythonhosted.org/packages/93/9a/89a5902d158275d6c2a8e2d13b2bcd3407d4e607026c6297910baed45493/classical-2.0.0.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "9395d4c5fcbd91ef112a6ce53b7fd5f4", "sha256": "dbc14a98476485b203fa01b1fe7f2dfdf2c9bf15c34ae7e597042e3ab6213976" }, "downloads": -1, "filename": "classical-2.1.0.tar.gz", "has_sig": false, "md5_digest": "9395d4c5fcbd91ef112a6ce53b7fd5f4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4513, "upload_time": "2018-01-06T11:09:19", "url": "https://files.pythonhosted.org/packages/4a/72/075ef2d22f60543e56307cdbd29401da1c905408a20fa22f6fe0fac585d5/classical-2.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9395d4c5fcbd91ef112a6ce53b7fd5f4", "sha256": "dbc14a98476485b203fa01b1fe7f2dfdf2c9bf15c34ae7e597042e3ab6213976" }, "downloads": -1, "filename": "classical-2.1.0.tar.gz", "has_sig": false, "md5_digest": "9395d4c5fcbd91ef112a6ce53b7fd5f4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4513, "upload_time": "2018-01-06T11:09:19", "url": "https://files.pythonhosted.org/packages/4a/72/075ef2d22f60543e56307cdbd29401da1c905408a20fa22f6fe0fac585d5/classical-2.1.0.tar.gz" } ] }