{ "info": { "author": "Phillip J. Eby", "author_email": "peak@eby-sarna.com", "bugtrack_url": null, "classifiers": [], "description": "Want to use decorators, but still need to support Python 2.3? Wish you could\nhave class decorators, decorate arbitrary assignments, or match decorated\nfunction signatures to their original functions? Want to get metaclass\nfeatures without creating metaclasses? How about synchronized methods?\n\n\"DecoratorTools\" gets you all of this and more. Some quick examples::\n\n # Method decorator example\n from peak.util.decorators import decorate\n\n class Demo1(object):\n decorate(classmethod) # equivalent to @classmethod\n def example(cls):\n print \"hello from\", cls\n\n\n # Class decorator example\n from peak.util.decorators import decorate_class\n\n def my_class_decorator():\n def decorator(cls):\n print \"decorating\", cls\n return cls\n decorate_class(decorator)\n\n class Demo2:\n my_class_decorator()\n\n # \"decorating \" will be printed when execution gets here\n\n\nInstalling DecoratorTools (using ``\"easy_install DecoratorTools\"`` or\n``\"setup.py install\"``) gives you access to the ``peak.util.decorators``\nmodule. The tools in this module have been bundled for years inside of PEAK,\nPyProtocols, RuleDispatch, and the zope.interface package, so they have been\nwidely used and tested. (Unit tests are also included, of course.)\n\nThis standalone version is backward-compatible with the bundled versions, so you\ncan mix and match decorators from this package with those provided by\nzope.interface, TurboGears, etc.\n\nFor complete documentation, see the `DecoratorTools manual`_.\n\nChanges since version 1.7:\n\n * The ``@template_function`` decorator now supports using a return value\n instead of a docstring, in order to work with the \"-OO\" option to Python;\n it's highly recommended that you update your template functions to use\n a return value instead of a docstring. (The error message has also been\n improved for the missing docstring case.)\n\n * Fixed metaclass collisions in ``classy`` subclasses that mix in abstract\n classes (e.g. ``collections.Sequence``) in Python 2.6+.\n\nChanges since version 1.6:\n\n * Added ``synchronized`` decorator to support locking objects during method\n execution.\n\nChanges since version 1.5:\n\n * Added ``classy`` base class that allows you to do the most often-needed\n metaclass behviors *without* needing an actual metaclass.\n\nChanges since version 1.4:\n\n * Added ``enclosing_frame()`` function, so that complex decorators that call\n DecoratorTools functions while being called *by* DecoratorTools functions,\n will work correctly.\n\nChanges since version 1.3:\n\n * Added support for debugging generated code, including the code generated\n by ``rewrap()`` and ``template_function``.\n\nChanges since version 1.2:\n\n * Added ``rewrap()`` function and ``template_function`` decorator to support\n signature matching for decorated functions. (These features are similar to\n the ones provided by Michele Simionato's \"decorator\" package, but do not\n require Python 2.4 and don't change the standard idioms for creating\n decorator functions.)\n\n * ``decorate_class()`` will no longer apply duplicate class decorator\n callbacks unless the ``allow_duplicates`` argument is true.\n\nChanges since version 1.1:\n\n * Fixed a problem where instances of different struct types could equal each\n other\n\nChanges since version 1.0:\n\n * The ``struct()`` decorator makes it easy to create tuple-like data\n structure types, by decorating a constructor function.\n\n.. _DecoratorTools Manual: http://peak.telecommunity.com/DevCenter/DecoratorTools#toc\n\n.. _toc:", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://cheeseshop.python.org/pypi/DecoratorTools", "keywords": null, "license": "PSF or ZPL", "maintainer": null, "maintainer_email": null, "name": "DecoratorTools", "package_url": "https://pypi.org/project/DecoratorTools/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/DecoratorTools/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://cheeseshop.python.org/pypi/DecoratorTools" }, "release_url": "https://pypi.org/project/DecoratorTools/1.8/", "requires_dist": null, "requires_python": null, "summary": "Class, function, and metaclass decorators -- even in Python 2.3 (now with source debugging for generated code)!", "version": "1.8" }, "last_serial": 784077, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "34099d0ab4588946f2f59e6118719c2a", "sha256": "e24084bd1c98f297e25ca1c9e0d3428f35b752fe867b06ed7279dc3a20340d1b" }, "downloads": -1, "filename": "DecoratorTools-1.0-py2.3.egg", "has_sig": false, "md5_digest": "34099d0ab4588946f2f59e6118719c2a", "packagetype": "bdist_egg", "python_version": "2.3", "requires_python": null, "size": 23438, "upload_time": "2006-05-25T01:59:28", "url": "https://files.pythonhosted.org/packages/e0/f7/c20b47b5b4bdbdc9ef86f22a86f6e5a5fc3f5951e1adfcb37031546fab89/DecoratorTools-1.0-py2.3.egg" }, { "comment_text": "", "digests": { "md5": "ed51f33aaf43a948e8949f5014fd0138", "sha256": "434ec1c5f200530096bd54a2aaae740b3183cc366c82ea9a0e74ead4a337cd46" }, "downloads": -1, "filename": "DecoratorTools-1.0-py2.4.egg", "has_sig": false, "md5_digest": "ed51f33aaf43a948e8949f5014fd0138", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 9717, "upload_time": "2006-05-25T01:59:51", "url": "https://files.pythonhosted.org/packages/21/d7/59f253b740248e4a52ca6db0b7b2f681f50c8c5364ab7abaa2c29e06e24c/DecoratorTools-1.0-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "e40c5aedb07117a970951b82e152a3b8", "sha256": "274d3872e946dc0c0c9936f29e3949a0bce7763595f43e9ef2618634b31d7667" }, "downloads": -1, "filename": "DecoratorTools-1.0.zip", "has_sig": false, "md5_digest": "e40c5aedb07117a970951b82e152a3b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15232, "upload_time": "2006-05-25T01:59:27", "url": "https://files.pythonhosted.org/packages/ca/31/87e5996c0cc410c10119233a03f90bcd7665a8ba1d860623d6fe2f8e7840/DecoratorTools-1.0.zip" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "e9ceb63dc6381d0c7abef3daa037ed0e", "sha256": "302761fcb6053922cc896db38f6fef88efe24395379587b489d204e291029aef" }, "downloads": -1, "filename": "DecoratorTools-1.1-py2.3.egg", "has_sig": false, "md5_digest": "e9ceb63dc6381d0c7abef3daa037ed0e", "packagetype": "bdist_egg", "python_version": "2.3", "requires_python": null, "size": 29533, "upload_time": "2006-07-04T17:02:43", "url": "https://files.pythonhosted.org/packages/60/79/7fdc15c9d6b8ebc4a15f05438a64ef005e03d95a4657916068ee91d7021e/DecoratorTools-1.1-py2.3.egg" }, { "comment_text": "", "digests": { "md5": "eb198005e67fe9dba6155724d30c6e19", "sha256": "fc6a8c4e146d8e400a2d0bbe3b7ce76cf788c57ce343f46d92a6907d88f4a7e1" }, "downloads": -1, "filename": "DecoratorTools-1.1-py2.4.egg", "has_sig": false, "md5_digest": "eb198005e67fe9dba6155724d30c6e19", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 11757, "upload_time": "2006-07-04T17:02:52", "url": "https://files.pythonhosted.org/packages/83/b6/c77e5c8503b1335ef1f687d61e1ed4a57f62419d275c34dc56ccf036938c/DecoratorTools-1.1-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "69674d3418294ca96a850cb01c0239c4", "sha256": "f09f6d3f5c0e1f10b89ef3e318de406e60d85140653091613e03ee5586ba93d5" }, "downloads": -1, "filename": "DecoratorTools-1.1.zip", "has_sig": false, "md5_digest": "69674d3418294ca96a850cb01c0239c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17640, "upload_time": "2006-07-04T17:02:42", "url": "https://files.pythonhosted.org/packages/8e/28/db02b7c2bbef6929a9b8e02d4c85ba890c74e82083dbcfd6d1850a687cbe/DecoratorTools-1.1.zip" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "c87e9267b693dfda995ef8b14b89dbc4", "sha256": "b1a75f23d0a19333ab9a82b687d2eaa346ba1c2e098feed44a9e69b5d49f114e" }, "downloads": -1, "filename": "DecoratorTools-1.2-py2.3.egg", "has_sig": false, "md5_digest": "c87e9267b693dfda995ef8b14b89dbc4", "packagetype": "bdist_egg", "python_version": "2.3", "requires_python": null, "size": 29681, "upload_time": "2006-07-05T02:03:51", "url": "https://files.pythonhosted.org/packages/2b/1d/5b6e5526ef3ced880425366fccb17d96c45e8ff315ae721a4d2022541a7c/DecoratorTools-1.2-py2.3.egg" }, { "comment_text": "", "digests": { "md5": "37cfa67c05e1286269a03e7443816f35", "sha256": "849b1172d36a9977327d628d85409eb1f900664caa2c96e9a0cd3c767999a4a0" }, "downloads": -1, "filename": "DecoratorTools-1.2-py2.4.egg", "has_sig": false, "md5_digest": "37cfa67c05e1286269a03e7443816f35", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 11834, "upload_time": "2006-07-05T02:03:57", "url": "https://files.pythonhosted.org/packages/d1/a7/8bd276accc285b876497e46330c1906c2d307e8aecac04ee39e1ef352f12/DecoratorTools-1.2-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "bdd1b376aa1aeacdc3a88ec5d9941297", "sha256": "3300aaabf316a3d95c8e1d1a1bba62e52524c4b6026b351486c52992008dbca3" }, "downloads": -1, "filename": "DecoratorTools-1.2.zip", "has_sig": false, "md5_digest": "bdd1b376aa1aeacdc3a88ec5d9941297", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18105, "upload_time": "2006-07-05T02:03:49", "url": "https://files.pythonhosted.org/packages/b2/a8/90a6136a2beac4e1e61a8fec28a39cf821919827a40416abd0397d38f880/DecoratorTools-1.2.zip" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "7e56a55f4cd57d3e8edcbdf3088ef6e3", "sha256": "f838863508b60a4ddbd122daa13d07e2d759391028cce0d4044e591dfd9fc450" }, "downloads": -1, "filename": "DecoratorTools-1.3-py2.3.egg", "has_sig": false, "md5_digest": "7e56a55f4cd57d3e8edcbdf3088ef6e3", "packagetype": "bdist_egg", "python_version": "2.3", "requires_python": null, "size": 62114, "upload_time": "2007-02-24T20:31:38", "url": "https://files.pythonhosted.org/packages/e7/ad/3ae79b6d97244392e46501eb9cd3592ba3c690e4756186db78dd1c565b83/DecoratorTools-1.3-py2.3.egg" }, { "comment_text": "", "digests": { "md5": "4052cbdd046a50742a887c870fd6839d", "sha256": "a741963c4d63e8d7ed6e8d8a15514cce94e3a409399099801322032f3d8f3ae0" }, "downloads": -1, "filename": "DecoratorTools-1.3-py2.4.egg", "has_sig": false, "md5_digest": "4052cbdd046a50742a887c870fd6839d", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 23110, "upload_time": "2007-02-24T20:32:32", "url": "https://files.pythonhosted.org/packages/25/df/b3d3954cf0188b0f0bee89a6302874f7519cae4623d7e9aa0e62c66aa7d7/DecoratorTools-1.3-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "7743d47d5acce85bcb9318ad8d63efe2", "sha256": "4a7d59bf44e14afb9a507ad83026fd2fe06a4501c32a2d132ca3962a019c1d00" }, "downloads": -1, "filename": "DecoratorTools-1.3-py2.5.egg", "has_sig": false, "md5_digest": "7743d47d5acce85bcb9318ad8d63efe2", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 22740, "upload_time": "2007-02-24T20:32:42", "url": "https://files.pythonhosted.org/packages/b5/e9/0319416e54aaacbb6dd89b7148ee3e85bc38c15ad2cbf6d477a19b822799/DecoratorTools-1.3-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "ef0c7a0379422d47c8a51dcfc90135cd", "sha256": "f42cd70c1eaa4a0418dd3a919587815f77dfbd83bb34d9dd6a508c2f4fa0f084" }, "downloads": -1, "filename": "DecoratorTools-1.3.zip", "has_sig": false, "md5_digest": "ef0c7a0379422d47c8a51dcfc90135cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21957, "upload_time": "2007-02-24T20:31:36", "url": "https://files.pythonhosted.org/packages/04/76/dee6722bdf3b6f2879045b93be394ec26361a387ae3c4261a4112ab4f540/DecoratorTools-1.3.zip" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "730ee52a76c780948d2ba113ca5d6c9e", "sha256": "2788d001dc1af0045e2d015157b5d49be737ae7d567838ca72272f87c4bca1e4" }, "downloads": -1, "filename": "DecoratorTools-1.4-py2.3.egg", "has_sig": false, "md5_digest": "730ee52a76c780948d2ba113ca5d6c9e", "packagetype": "bdist_egg", "python_version": "2.3", "requires_python": null, "size": 67576, "upload_time": "2007-02-28T04:49:36", "url": "https://files.pythonhosted.org/packages/2d/81/fe53e0ccb8939431264b1b7cfa515c6eec5f8d100ef10e9f4e5736647838/DecoratorTools-1.4-py2.3.egg" }, { "comment_text": "", "digests": { "md5": "cf52143c5d79f3553c9dca35a3ecdd59", "sha256": "ac1c5d157df6b18530205c18641fdbb67975c2737a0c087de152827bcdf58040" }, "downloads": -1, "filename": "DecoratorTools-1.4-py2.4.egg", "has_sig": false, "md5_digest": "cf52143c5d79f3553c9dca35a3ecdd59", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 24848, "upload_time": "2007-02-28T04:49:46", "url": "https://files.pythonhosted.org/packages/84/ec/7e526cdc2f29c11a6f7c8c60d6033b61fe1a73fd194eace77a21e20c4602/DecoratorTools-1.4-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "c383d145770eae60552d22830e752e10", "sha256": "e3389b8033cb1b25ee34d785c0bc38982ff389e6a8557e1ef26b9f432a699261" }, "downloads": -1, "filename": "DecoratorTools-1.4-py2.5.egg", "has_sig": false, "md5_digest": "c383d145770eae60552d22830e752e10", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 24370, "upload_time": "2007-02-28T04:49:51", "url": "https://files.pythonhosted.org/packages/44/64/5c6002f80ecedafef1424e8e79045ae324dbf3b830ea2fc067d3ba9ac29d/DecoratorTools-1.4-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "8b073d17ba19d9d053731e668a4e36e0", "sha256": "a21dfda98c792b8008bdc65b1320595cab7016d612e1e74813ee0f6310a338d6" }, "downloads": -1, "filename": "DecoratorTools-1.4.zip", "has_sig": false, "md5_digest": "8b073d17ba19d9d053731e668a4e36e0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23645, "upload_time": "2007-02-28T04:49:34", "url": "https://files.pythonhosted.org/packages/24/37/baa9fc4ceda5772a122e5111f31e5837e648205fe85156498eec5525c3ba/DecoratorTools-1.4.zip" } ], "1.5": [ { "comment_text": "", "digests": { "md5": "af2a39479896e5dec79a4f088fcd1e2f", "sha256": "c4237554e2b68e7b4e51b189a380eb2a422d3edd30a92fb0fa48d07993196f1c" }, "downloads": -1, "filename": "DecoratorTools-1.5-py2.3.egg", "has_sig": false, "md5_digest": "af2a39479896e5dec79a4f088fcd1e2f", "packagetype": "bdist_egg", "python_version": "2.3", "requires_python": null, "size": 69099, "upload_time": "2007-07-14T14:34:28", "url": "https://files.pythonhosted.org/packages/89/9e/7a6fae2d5254cf621fc7349e7615a9e02834e1b07bca9fca3ea43a5f6730/DecoratorTools-1.5-py2.3.egg" }, { "comment_text": "", "digests": { "md5": "012d276c087fb8660abffd1bcb39ec48", "sha256": "933158cd9c00fde60ab3c988988ef4fbaa1f2e467cb6f3c6d86f064c6bec9e65" }, "downloads": -1, "filename": "DecoratorTools-1.5-py2.4.egg", "has_sig": false, "md5_digest": "012d276c087fb8660abffd1bcb39ec48", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 25315, "upload_time": "2007-07-14T14:34:03", "url": "https://files.pythonhosted.org/packages/e9/7d/802365e410ef6427431b9132758e4963ab2ac7373b729e52704dafeff383/DecoratorTools-1.5-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "c3b9e99b6a42de79b49fb1b19f64a4b6", "sha256": "57917d9a2f6e08ba544c94cd99747a47c767810529d6c4ef36d65e1bb7bbec71" }, "downloads": -1, "filename": "DecoratorTools-1.5-py2.5.egg", "has_sig": false, "md5_digest": "c3b9e99b6a42de79b49fb1b19f64a4b6", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 24871, "upload_time": "2007-07-14T14:33:52", "url": "https://files.pythonhosted.org/packages/e3/e4/8780f7040451cf6168837e053eab4b1c32d74da6e6d51aa4e591540d5912/DecoratorTools-1.5-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "cbdf17cde5b5f2ce00ab3da490fee0df", "sha256": "1aa61601b13a27f0f5f7fb6eb40edf766c82bbda3ab1fe6e4c72b58a1c58503f" }, "downloads": -1, "filename": "DecoratorTools-1.5.zip", "has_sig": false, "md5_digest": "cbdf17cde5b5f2ce00ab3da490fee0df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24468, "upload_time": "2007-07-14T14:33:51", "url": "https://files.pythonhosted.org/packages/49/44/8f20d9f44e990bf40958f9aaf74de18fdfeac602b0320a911c702a6eaec5/DecoratorTools-1.5.zip" } ], "1.6": [ { "comment_text": "", "digests": { "md5": "6f2b245bd4075ebf437f4889aeedf3be", "sha256": "48e8b684354552858b175c01ad1b55a1379c5d8a03b0b68560b2e9e98988851d" }, "downloads": -1, "filename": "DecoratorTools-1.6-py2.3.egg", "has_sig": false, "md5_digest": "6f2b245bd4075ebf437f4889aeedf3be", "packagetype": "bdist_egg", "python_version": "2.3", "requires_python": null, "size": 76246, "upload_time": "2007-11-01T21:48:32", "url": "https://files.pythonhosted.org/packages/ce/d4/8ec23d3c30c010b59c25c8b968bcc0bccbfd6dd61e035e6b6742a5eefdf1/DecoratorTools-1.6-py2.3.egg" }, { "comment_text": "", "digests": { "md5": "fd8b28833fb7186440cc58d8cf4474fa", "sha256": "1529fe6d9c06eb090c7732bc88e4b2da6fe94cf14d388a531836f95f14337d08" }, "downloads": -1, "filename": "DecoratorTools-1.6-py2.4.egg", "has_sig": false, "md5_digest": "fd8b28833fb7186440cc58d8cf4474fa", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 26953, "upload_time": "2007-11-01T21:48:43", "url": "https://files.pythonhosted.org/packages/8d/f9/245ecdc9344e578c58f24ff8ee2a33804206be2a60440f130ebf3937963a/DecoratorTools-1.6-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "08c8541db5c509ffbf49433fe18c2dd1", "sha256": "1dd4dc8e89c4ea4d8ad7d221f2b757f67d7f5952184a9c37d2c7bf3b10790b94" }, "downloads": -1, "filename": "DecoratorTools-1.6-py2.5.egg", "has_sig": false, "md5_digest": "08c8541db5c509ffbf49433fe18c2dd1", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 26457, "upload_time": "2007-11-01T21:48:48", "url": "https://files.pythonhosted.org/packages/66/5f/9e185b45682a54613238b1f6a09c0857569622f33ba3b4657df98ffb91a3/DecoratorTools-1.6-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "ecfbdb2448cd9ceab09cd6fb9dd90b58", "sha256": "f7313aa692aab6a5918b6de12d9bde7eea80b02e79ff2c7569c62a1e21d52e79" }, "downloads": -1, "filename": "DecoratorTools-1.6.zip", "has_sig": false, "md5_digest": "ecfbdb2448cd9ceab09cd6fb9dd90b58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26205, "upload_time": "2007-11-01T21:48:29", "url": "https://files.pythonhosted.org/packages/3f/f0/9551aaba582a09979cc69b3cc7dcb0899b1852ace20b1091902c2daeab94/DecoratorTools-1.6.zip" } ], "1.7": [ { "comment_text": "", "digests": { "md5": "996acd2d49f7ae96fcc593d597c36a3c", "sha256": "f9c804e20d05ad18cf0bf5e52c5afb53665034f425215923059f1064dbea7a6a" }, "downloads": -1, "filename": "DecoratorTools-1.7-py2.3.egg", "has_sig": false, "md5_digest": "996acd2d49f7ae96fcc593d597c36a3c", "packagetype": "bdist_egg", "python_version": "2.3", "requires_python": null, "size": 81742, "upload_time": "2008-01-07T22:57:17", "url": "https://files.pythonhosted.org/packages/fc/a0/d308dfe406f6380c75d4d1613aa7ce8d6bd66aecafc39405d9196de68f51/DecoratorTools-1.7-py2.3.egg" }, { "comment_text": "", "digests": { "md5": "4f850ac078879e5f38b80bcd90db9999", "sha256": "5990e62e921eef3a4e3bd32ab59bae10c2602840b3a609d5e26f7669008f8aaf" }, "downloads": -1, "filename": "DecoratorTools-1.7-py2.4.egg", "has_sig": false, "md5_digest": "4f850ac078879e5f38b80bcd90db9999", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 28566, "upload_time": "2008-01-07T22:57:24", "url": "https://files.pythonhosted.org/packages/17/6e/d589165198159db3686d5bc61bc2551e84e30a1eec8c37b7d8591eab6087/DecoratorTools-1.7-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "d205a59fc13405c8a2f1c355ee12a599", "sha256": "cb8ad66bffb215ad1aa8a83e59549ee0062042d70c077bf66322e4a0da58d2a8" }, "downloads": -1, "filename": "DecoratorTools-1.7-py2.5.egg", "has_sig": false, "md5_digest": "d205a59fc13405c8a2f1c355ee12a599", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 28062, "upload_time": "2008-01-07T22:57:09", "url": "https://files.pythonhosted.org/packages/76/59/b0a30760bf0b6528d0f52dc39f2ad3119bbbad16a5b3f186c47f952b7fa3/DecoratorTools-1.7-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "84df0a86aabec6a7d802439ffaa17585", "sha256": "55283e6acc4e5f66cb6e104f98d08f93b1bd29823d17d7e2f852541738a53a11" }, "downloads": -1, "filename": "DecoratorTools-1.7.zip", "has_sig": false, "md5_digest": "84df0a86aabec6a7d802439ffaa17585", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27481, "upload_time": "2008-01-07T22:57:08", "url": "https://files.pythonhosted.org/packages/f0/b0/16578ca82cc725d8d9085584c57f92e541642d2868db785c84845e06fd60/DecoratorTools-1.7.zip" } ], "1.8": [ { "comment_text": "", "digests": { "md5": "f161004115c3d04ed976c230c8a91d87", "sha256": "da73f03a9fab80a205c8febcecee83f8a989eab8ce81affd7989210e4a3d9ea8" }, "downloads": -1, "filename": "DecoratorTools-1.8.zip", "has_sig": false, "md5_digest": "f161004115c3d04ed976c230c8a91d87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29566, "upload_time": "2010-05-06T21:19:56", "url": "https://files.pythonhosted.org/packages/86/78/8de8bc5f64c125d17be429c5da33344bf1690f745f121737d5b6fbfe828c/DecoratorTools-1.8.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f161004115c3d04ed976c230c8a91d87", "sha256": "da73f03a9fab80a205c8febcecee83f8a989eab8ce81affd7989210e4a3d9ea8" }, "downloads": -1, "filename": "DecoratorTools-1.8.zip", "has_sig": false, "md5_digest": "f161004115c3d04ed976c230c8a91d87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29566, "upload_time": "2010-05-06T21:19:56", "url": "https://files.pythonhosted.org/packages/86/78/8de8bc5f64c125d17be429c5da33344bf1690f745f121737d5b6fbfe828c/DecoratorTools-1.8.zip" } ] }