{ "info": { "author": "Fraser Tweedale", "author_email": "frase@frase.id.au", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Topic :: Software Development", "Topic :: Software Development :: Libraries" ], "description": "Synopsis\n--------\n\n::\n\n import elk\n\n\n class Point(elk.Elk):\n x = elk.ElkAttribute(mode='rw', type=int)\n y = elk.ElkAttribute(mode='rw', type=int)\n\n def clear(self):\n self.x = 0\n self.y = 0\n\n\n class Point3D(Point):\n z = elk.ElkAttribute(mode='rw', type=int)\n\n @elk.after('clear')\n def clear_z(self):\n self.z = 0\n\n\nWhat is Elk?\n------------\n\nElk (homepage_) is an object system for Python inspired by Moose_\nfor Perl. It implements many of the features of Moose including:\n\n* attribute delegation\n* default attribute values\n* lazy attribute initialisation\n* read-only attributes\n* required attributes\n* attribute type constraints\n* roles\n* method modifiers\n\n.. _homepage: http://frasertweedale.github.io/elk\n.. _Moose: https://metacpan.org/module/Moose\n\nElk is written in pure Python and there are no dependencies beyond\nthe standard library.\n\n\nHow does Elk differ from Moose?\n-------------------------------\n\nMoose has many features that are not (yet) implemented in Elk.\n\nWhile Elk tries to faithfully implement Moose paradigms and patterns\nin Python, it uses Python idioms and language features as much as\npossible. There are also some differences in terminology in order\nto be consistent with Python terminology or idioms.\n\nThere is not yet a namespace for Elk extensions, nor any convenient\nmechanism for extending it.\n\n\nInstallation\n------------\n\n::\n\n pip install elk\n\n\nLicense\n-------\n\nElk is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\n\nContributing\n------------\n\nThe Elk source code is available from\nhttps://github.com/frasertweedale/elk.\n\nBug reports, patches, feature requests, code review and\ndocumentation are welcomed.\n\nTo submit a patch, please use ``git send-email`` or generate a pull\nrequest. Write a `well formed commit message`_. If your patch is\nnontrivial, update the copyright notice at the top of each changed\nfile.\n\n.. _well formed commit message: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://frasertweedale.github.io/elk", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "elk", "package_url": "https://pypi.org/project/elk/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/elk/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://frasertweedale.github.io/elk" }, "release_url": "https://pypi.org/project/elk/0.3/", "requires_dist": null, "requires_python": null, "summary": "Moose-like object system for Python", "version": "0.3" }, "last_serial": 1674459, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "33b96e25a0fe566c217b728cbdb4537f", "sha256": "097ef7a12b7c32c7ac7714b7a71e05541d31667126ce054fc27b8bdd2f584dec" }, "downloads": -1, "filename": "elk-0.1.tar.gz", "has_sig": true, "md5_digest": "33b96e25a0fe566c217b728cbdb4537f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32811, "upload_time": "2013-07-03T09:22:08", "url": "https://files.pythonhosted.org/packages/fe/68/804e3f8a14b8f75ff06d20e89a106801093d4c97100b96ce2257e4f2beec/elk-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "45422e59414d3eae3ba48f1fc4dcf672", "sha256": "2696060aaeebe3f3ca32c05b1d92a4f85bf49d232c7348ebe3eef26a8ec16b82" }, "downloads": -1, "filename": "elk-0.2.tar.gz", "has_sig": true, "md5_digest": "45422e59414d3eae3ba48f1fc4dcf672", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36728, "upload_time": "2013-08-11T11:48:33", "url": "https://files.pythonhosted.org/packages/e5/6b/4f1dddf27ae9dcbbf75d411b52b7b1e32f730f8863748583a9d1ede8709b/elk-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "25ae3e2d8bb793d80ed8bf89f145b2b4", "sha256": "08f02690d51b7a144b5d760e290f466e8ae281899c0f033f054b8d8ff498fe5e" }, "downloads": -1, "filename": "elk-0.2.1.tar.gz", "has_sig": true, "md5_digest": "25ae3e2d8bb793d80ed8bf89f145b2b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36951, "upload_time": "2014-11-23T06:37:59", "url": "https://files.pythonhosted.org/packages/78/13/a506537df9ca0cf50001f6c8e615d57be094aacfc10d9c6afeaafda9ab36/elk-0.2.1.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "370459e8ba2f8e7d47ec38bed6388558", "sha256": "7b0bae87846fbc10b0f78b89135c18f573e5ab762002f5e27d39ee635f12766b" }, "downloads": -1, "filename": "elk-0.3.tar.gz", "has_sig": true, "md5_digest": "370459e8ba2f8e7d47ec38bed6388558", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36828, "upload_time": "2015-08-12T12:57:35", "url": "https://files.pythonhosted.org/packages/7b/0e/044f2029412085adf81d667068b79a08e1c870b923519f9d7b2e8f3f3ee2/elk-0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "370459e8ba2f8e7d47ec38bed6388558", "sha256": "7b0bae87846fbc10b0f78b89135c18f573e5ab762002f5e27d39ee635f12766b" }, "downloads": -1, "filename": "elk-0.3.tar.gz", "has_sig": true, "md5_digest": "370459e8ba2f8e7d47ec38bed6388558", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36828, "upload_time": "2015-08-12T12:57:35", "url": "https://files.pythonhosted.org/packages/7b/0e/044f2029412085adf81d667068b79a08e1c870b923519f9d7b2e8f3f3ee2/elk-0.3.tar.gz" } ] }