{ "info": { "author": "Hanno Schlichting", "author_email": "hanno@hannosch.eu", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Plone", "Framework :: Zope2", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython" ], "description": "Overview\n--------\n\nConfiguration and code reload for Zope 2 and Plone without server restarts.\n\nUsage\n-----\n\nWhile being logged into the ZMI as an user with the Manager role visit\n``/@@reload`` on your Zope application root via a browser. If your Zope is\nconfigured to listen on port 8080 on localhost this is::\n\n http://localhost:8080/@@reload\n\nIf you get a `Resource not found` error, make sure you have loaded the\n`configure.zcml` file from this library and you really use the ZODB application\nroot and not a Plone site as the base url.\n\nWhen you press the `Reload Code` button, all modules that have been changed\nsince the last time they were loaded are reloaded. You'll get a status message\ntelling you which modules have been reloaded.\n\nTo reload all ZCML without a restart, press the 'Reload Code and ZCML' button.\n\nThe action to perform is determined via a simple query string, so once you\ndid a 'Reload Code' once, you can simply reload the browser page to execute\nthe action once again.\n\nCaveats: There's some code structures which cannot be reloaded via the\napproach underlying this library. Plone portlets and content types are two\nexamples of this. In general decorators will currently not always work.\n\nDevelopment\n-----------\n\nThe code and issue tracker can be found on GitHub at:\nhttps://github.com/plone/plone.reload\n\nThanks\n------\n\nThis code is heavily based on the `Products.RefreshNG` product found at\nhttp://launchpad.net/refreshng.\n\nThe original `xreload.py` written by Guido van Rossum can be found at\n``http://svn.python.org/projects/sandbox/trunk/xreload/xreload.py``\n\nIt has some enhancements, but those seem to break more code than do any good\nin a Zope environment with patched in meta classes and monkey patches all over\nthe place.\n\nContributors\n------------\n\n* Hanno Schlichting (primary author)\n* Martin Aspeli (test contribution)\n\nChangelog\n=========\n\n3.0.0 (2018-11-05)\n------------------\n\n- Call invalidate_caches and remove the __pycache__ in Python 3\n\n- Add Python 3.4, 3.5 and 3.6 support. Drop Python 2.6 support.\n\n- Test against Zope 4, while keeping compatibility with Zope 2.13.\n\n2.0.2 (2016-08-18)\n------------------\n\n- Use zope.interface decorator.\n [gforcada]\n\n2.0.1 (2016-02-11)\n------------------\n\n- Minor packaging fixes. [gforcada, maurits]\n\n2.0 (2011-06-04)\n----------------\n\n- Update test assertions to avoid deprecation warnings under Python 2.7.\n [hannosch]\n\n- Relicensed to BSD.\n [hannosch]\n\n- Minor PEP8 cleanup.\n [hannosch]\n\n- Exclude tests from the shipped source distribution.\n [hannosch, iElectric]\n\n2.0b1 (2011-04-03)\n------------------\n\n- Require at least Zope 2.12 / Python 2.6 and add preliminary support for\n Zope 2.13 with Python 2.6 and 2.7.\n [hannosch]\n\n1.5 (2010-07-18)\n----------------\n\n- Update license to GPL version 2 only.\n [hannosch]\n\n1.4 (2010-05-27)\n----------------\n\n- Fixed some tests that relied on a specific directory layout.\n [hannosch]\n\n- Fixed a bug in dealing with class descriptors, like Five's BoundTemplateFile.\n We replaced the descriptor with the descriptor result, leading to strange\n problems. We check for those by looking directly into the ``__dict__`` and\n comparing it to the result of a normal ``getattr`` call.\n [hannosch, optilude]\n\n1.3 (2010-01-16)\n----------------\n\n- Use a different hook for providing the initial setup of tracked code files.\n In Zope 2.12+ there's a proper event published right before the process has\n started. If this is available we use it, instead of our no longer working\n approach to hook ``setupFinalLogging``.\n [hannosch]\n\n1.2 (2009-11-21)\n----------------\n\n- Moved the template reloading support into an extra.\n [hannosch]\n\n- Added test_suite functions to the test modules.\n [hannosch]\n\n1.1 (2009-10-19)\n----------------\n\n- Added CMF specific functionality: We support explicitly reloading all file\n system based objects from skins folders while running in production mode.\n [hannosch]\n\n1.0 (2009-10-11)\n----------------\n\n- Avoid the `ENABLED` config flag and check against Globals.DevelopmentMode in\n the browser view.\n [hannosch]\n\n- Make sure the import of the Globals module happens after the variable has\n been set. This should make it compatible with Zope 2.10.9+.\n [hannosch]\n\n1.0b1 (2009-08-11)\n------------------\n\n- Got the test coverage for the code reloading part up to 100%.\n [hannosch]\n\n- Fixed reloading of the module scope. The func_globals of functions is now\n updated with new names introduced into the module scope, so adding new\n import statements will work.\n [hannosch]\n\n- Specified package dependencies, added development buildout and added\n extensive test coverage.\n [hannosch]\n\n- Figured out a way to support reloading code that uses decorators.\n [hannosch]\n\n0.11 (2009-05-30)\n-----------------\n\n- Added the z3c.autoinclude entry point so that plone.reload is automatically\n loaded on Plone 3.3 and above.\n [optilude]\n\n0.10 (2009-03-22)\n-----------------\n\n- Do not remove attributes from classes when reloading. ZCML directives and\n other wiring is liable to add attributes to class that will then disappear\n on reload. This means that if you have removed a class attribute, it will\n *not* disappear on reload. In this case: restart. :)\n [optilude]\n\n\n0.9 (2008-07-23)\n----------------\n\n- Removed the manual cleanup approach for extra registries populated by ZCML\n parsing. Instead we use the registry of cleanup functions inside\n zope.testing.cleanup to automatically pick up all cleaning functions.\n [hannosch]\n\n0.8 (2008-06-30)\n----------------\n\n- Wrap the setupFinalLogging method of the Zope2 starter objects to initialize\n our internal modified times registry once after Zope is finished loading.\n This is the closest I could find that resembles a `Zope is finished loading`\n event and should help to remove the double-reload behavior.\n [hannosch]\n\n- Only expose the reload view in Zope 2 development mode.\n [hannosch]\n\n- In case of errors during ZCML reload, restore the original global site\n manager state, instead of leaving it in a broken state. This allows you to\n fix and retry the ZCML reload as many times as you need.\n [hannosch]\n\n0.7 (2008-06-17)\n----------------\n\n- Merged the two distinct views into one called @@reload. Added a somewhat\n nicer UI to it and explain some of the current limitations on that page.\n [hannosch]\n\n- Refactored ZCML loading code a bit. Always do an automatic code reload\n before reloading ZCML.\n [hannosch]\n\n- Removed all blacklisting code.\n [hannosch]\n\n0.6 (2008-06-11)\n----------------\n\n- Disabled blacklist until it can be made configurable. The speedup is hardly\n noticeable anyway, and it can block too much (especially if plone.reload\n is being used in a lib/python style deployment rather than as an egg).\n [optilude]\n\n0.5 (2008-05-24)\n----------------\n\n- Merged r20 from http://bazaar.launchpad.net/~refreshng-dev/refreshng/dev.\n This fixes https://bugs.launchpad.net/refreshng/+bug/175898.\n [hannosch]\n\n- Removed various levels of caching which turned out to be premature and\n caused lots of modules not to be found.\n [hannosch]\n\n0.4 (2008-03-01)\n----------------\n\n- Made the code reload available as its own @@code_reload view.\n [hannosch]\n\n- Integrated xreload.py from RefreshNG and added a first working version of a\n general manual code reload feature.\n [hannosch]\n\n0.3 (2008-02-21)\n----------------\n\n- Fixed caching issues by invalidating all ZODB caches. If you have local site\n managers spread across multiple FileStorages this might still not work as\n expected.\n [hannosch]\n\n- Added cleanup for CMFCore and PAS.\n [hannosch]\n\n0.2 (2008-01-25)\n----------------\n\n- Added compatibility with Zope 2.10 / Plone 3.0.\n [hannosch]\n\n0.1 (2008-01-25)\n----------------\n\n- Initial implementation based heavily on Products.RefreshNG.\n [hannosch]\n\n- Initial package structure.\n [zopeskel]\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://pypi.org/project/plone.reload", "keywords": "zope plone reload", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "plone.reload", "package_url": "https://pypi.org/project/plone.reload/", "platform": "", "project_url": "https://pypi.org/project/plone.reload/", "project_urls": { "Homepage": "https://pypi.org/project/plone.reload" }, "release_url": "https://pypi.org/project/plone.reload/3.0.0/", "requires_dist": [ "setuptools", "six", "zope.component", "zope.interface", "zope.processlifetime", "zope.publisher", "zope.site", "zope.testing", "Zope2 (>=2.13)", "Products.CMFCore; extra == 'cmf'" ], "requires_python": "", "summary": "Configuration and code reload without server restarts.", "version": "3.0.0" }, "last_serial": 4451063, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "eaeb30b0af4f4dd83ad1ed4a4d5c7ea7", "sha256": "b789c7d242e9cc57a34dd9083dfca19c1b35ab926bfcd457fc38d6a9b14a8b96" }, "downloads": -1, "filename": "plone.reload-0.1.tar.gz", "has_sig": true, "md5_digest": "eaeb30b0af4f4dd83ad1ed4a4d5c7ea7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7812, "upload_time": "2008-01-25T00:14:42", "url": "https://files.pythonhosted.org/packages/f9/c6/f3557f2b4be79706de85e96912c9b0fc2e20e69edb4f4a7914e5f791be9b/plone.reload-0.1.tar.gz" } ], "0.10": [ { "comment_text": "", "digests": { "md5": "067bdaef69e366c090dfbae30a4cd453", "sha256": "e14be7382faabd7d24851a82e478e592a2d46f68f60aa8e4ddfc6389c57c673c" }, "downloads": -1, "filename": "plone.reload-0.10.tar.gz", "has_sig": false, "md5_digest": "067bdaef69e366c090dfbae30a4cd453", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16552, "upload_time": "2009-03-22T04:50:12", "url": "https://files.pythonhosted.org/packages/f3/7e/e982a6b679e06a096e46e34f56780ba5871199ee04ec50fc82cc7d7ed408/plone.reload-0.10.tar.gz" } ], "0.11": [ { "comment_text": "", "digests": { "md5": "557db6408986a68d784b23e6f335957a", "sha256": "21ad4d105a2ae883b8dec96200156e5c143c6113b1d11387f0a9f81c50b322c3" }, "downloads": -1, "filename": "plone.reload-0.11.tar.gz", "has_sig": false, "md5_digest": "557db6408986a68d784b23e6f335957a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16848, "upload_time": "2009-05-31T18:01:11", "url": "https://files.pythonhosted.org/packages/df/9a/c8ad896bfef2652f4f1d9a4cf08e2447247a529008d783d3905d3f1b9b1e/plone.reload-0.11.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "cc7ba40b3ec35ad3517b33362d03d803", "sha256": "ebf411d8b6e71121f03ee45dc59013ef4e04ac0bc9514d8eebffd654fc5b9392" }, "downloads": -1, "filename": "plone.reload-0.2.tar.gz", "has_sig": true, "md5_digest": "cc7ba40b3ec35ad3517b33362d03d803", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8078, "upload_time": "2008-01-25T09:29:00", "url": "https://files.pythonhosted.org/packages/c6/c8/ec2351950d11ddc4f6ed121a5f4d712ce2d14681c173895ba410eba1916e/plone.reload-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "8c5090f4cedab4a0efe5e66cbcf98ae0", "sha256": "f24ac6b2e3a31f17fedf4b59c2528ecac8e2b0e310f8927405e5175e6b563a9d" }, "downloads": -1, "filename": "plone.reload-0.3.tar.gz", "has_sig": true, "md5_digest": "8c5090f4cedab4a0efe5e66cbcf98ae0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10632, "upload_time": "2008-02-21T13:25:29", "url": "https://files.pythonhosted.org/packages/c6/1c/0b143f0a0a0d0b39721dc5c1b0235f6555c05397f932f69bd4a5ecc84f17/plone.reload-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "6f5c9ac4eab71f50c55ea44458e10a33", "sha256": "76876e3c5e547f0052d723e6305153d21d5cdf947469c363caec40e1ae3ebada" }, "downloads": -1, "filename": "plone.reload-0.4.tar.gz", "has_sig": true, "md5_digest": "6f5c9ac4eab71f50c55ea44458e10a33", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11447, "upload_time": "2008-03-01T20:26:02", "url": "https://files.pythonhosted.org/packages/b3/d5/02d36f5c75d1330981f0bc00d3adbe28ab614c31b49b618a019b1f5ac74e/plone.reload-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "b8bf51436e79ad27b9651661fe8f8b97", "sha256": "8bead24c52215a22c24d61be390cf1dd658523d26a98c29544a268b1da8e0e4d" }, "downloads": -1, "filename": "plone.reload-0.5.tar.gz", "has_sig": true, "md5_digest": "b8bf51436e79ad27b9651661fe8f8b97", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11835, "upload_time": "2008-05-24T10:33:57", "url": "https://files.pythonhosted.org/packages/5a/3d/d362eb9ba24dabc1712585fdc107c3fe0ec4abc995db155a3399ddc87c3a/plone.reload-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "7ea45120c254e260ef8531ea8d6d6249", "sha256": "d9b434530e89c75eaeeadaf78ce169ce29f0005ac40284eaa0886066962042a7" }, "downloads": -1, "filename": "plone.reload-0.6.tar.gz", "has_sig": false, "md5_digest": "7ea45120c254e260ef8531ea8d6d6249", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11938, "upload_time": "2008-06-11T20:22:25", "url": "https://files.pythonhosted.org/packages/3d/1c/b08ebef140d84f83ef2d1faa2f98f679b45e439145956aa10ea35ad97a95/plone.reload-0.6.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "13ebf9ba6e8126604f277a8f9c968b00", "sha256": "6df8303f8fcc41d1f2f6a72019d37a4034552d385e3e34c75792ba2ec1c11954" }, "downloads": -1, "filename": "plone.reload-0.7.tar.gz", "has_sig": true, "md5_digest": "13ebf9ba6e8126604f277a8f9c968b00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12996, "upload_time": "2008-06-17T08:21:35", "url": "https://files.pythonhosted.org/packages/d6/16/4fa1e0fb2713267f36f6b95aa0c717a20d9e6a6d4b7066ea20e41199a073/plone.reload-0.7.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "fd8ba70ace520926063a03ad7f35bec5", "sha256": "1e0ccb2a5c4f709004eaa1757e3c687e907b7fed62ee4881f89c5c4d9ae3fbf2" }, "downloads": -1, "filename": "plone.reload-0.8.tar.gz", "has_sig": true, "md5_digest": "fd8ba70ace520926063a03ad7f35bec5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16244, "upload_time": "2008-06-30T20:32:47", "url": "https://files.pythonhosted.org/packages/dc/63/23b792da6ff79317c25ddf943fe9287227be42fdcdf7c9d1e70ceb1bcfeb/plone.reload-0.8.tar.gz" } ], "0.9": [ { "comment_text": "", "digests": { "md5": "b079af6d3c6359de11bf462e072d887a", "sha256": "1dd623e5b0c3c46d9da402110c5bf4b81ca215bf6f052752d6209f12c4a11ab7" }, "downloads": -1, "filename": "plone.reload-0.9.tar.gz", "has_sig": true, "md5_digest": "b079af6d3c6359de11bf462e072d887a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16273, "upload_time": "2008-07-23T16:30:41", "url": "https://files.pythonhosted.org/packages/b4/4d/266c9f6e402ed1a7b1750bcc5134879dd5cae11876cae47fec1c78aab413/plone.reload-0.9.tar.gz" } ], "1.0": [ { "comment_text": "", "digests": { "md5": "b51df62d4b7c38cc0261d9b6e6e52396", "sha256": "d345d1e08e1fd4a223c5aea28eb99fba021e00af51f16350cde848b26746ba74" }, "downloads": -1, "filename": "plone.reload-1.0.zip", "has_sig": true, "md5_digest": "b51df62d4b7c38cc0261d9b6e6e52396", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29467, "upload_time": "2009-10-11T11:57:44", "url": "https://files.pythonhosted.org/packages/3c/dc/1f212e2d86579f1ec5efbcd296d61489dc3ffa10b210c52516b228070270/plone.reload-1.0.zip" } ], "1.0b1": [ { "comment_text": "", "digests": { "md5": "0b1b7fdb60c80e447f3c99c080a55952", "sha256": "992484e0c1eb856679120a59130b430b6da931878365e6781f0ed3d49048a038" }, "downloads": -1, "filename": "plone.reload-1.0b1.zip", "has_sig": true, "md5_digest": "0b1b7fdb60c80e447f3c99c080a55952", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29301, "upload_time": "2009-08-11T19:31:55", "url": "https://files.pythonhosted.org/packages/5a/8a/f11657a8da028b6bd0ab57a50d2cfdb38aa16ac335fe9919237d7a1cbe06/plone.reload-1.0b1.zip" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "d6702ae0e564305f28dab57d45a766a4", "sha256": "19317ec5e2423e0e724fefbd5a3e0d62fb098ac0527c14ed673c7ab04f87eb61" }, "downloads": -1, "filename": "plone.reload-1.1.zip", "has_sig": true, "md5_digest": "d6702ae0e564305f28dab57d45a766a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30238, "upload_time": "2009-10-19T16:06:16", "url": "https://files.pythonhosted.org/packages/50/e9/4995936385c4f55725b158f55cae5756827c0d44e8c32ad45cb2b6733ae0/plone.reload-1.1.zip" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "22dfffe9205be1c63de770a917e8bc68", "sha256": "1dc309b78adfa1467e556fccc0359b818f3acbab6b83ccbcd7ffca690f6c29a9" }, "downloads": -1, "filename": "plone.reload-1.2.zip", "has_sig": false, "md5_digest": "22dfffe9205be1c63de770a917e8bc68", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30884, "upload_time": "2009-11-21T15:00:07", "url": "https://files.pythonhosted.org/packages/1a/60/29e6d60b624e89a032b3722796ac3122ad085440c9aab23d7525764c8136/plone.reload-1.2.zip" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "469865fd3f707226887dc964978319df", "sha256": "ae6b856b06bc037a82a1bf8a696f7efacd2535d0cd73fa0b88679f6b37f3db90" }, "downloads": -1, "filename": "plone.reload-1.3.zip", "has_sig": false, "md5_digest": "469865fd3f707226887dc964978319df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31510, "upload_time": "2010-01-16T22:55:50", "url": "https://files.pythonhosted.org/packages/1f/01/704826843624ae645875408f27e429e383e497e40a745b28db323b113624/plone.reload-1.3.zip" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "aa7ca85c7450467887a06af8ad3ee77f", "sha256": "c7bdbf1b2854fadc194135a85a865b4ec32ab57f7631822cb1930afb4a095a5b" }, "downloads": -1, "filename": "plone.reload-1.4.zip", "has_sig": false, "md5_digest": "aa7ca85c7450467887a06af8ad3ee77f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32645, "upload_time": "2010-05-27T21:54:46", "url": "https://files.pythonhosted.org/packages/f1/80/150833499bd9a6802c2c20314395262eace16dab5d459d277bf0b138ca0c/plone.reload-1.4.zip" } ], "1.5": [ { "comment_text": "", "digests": { "md5": "a1ff4566bdeb0f55216fbae32d0b63f8", "sha256": "ec486d618d61931525e6ecc3fe3ef250bbbf00533a1265d5b9ed2b28d01577c2" }, "downloads": -1, "filename": "plone.reload-1.5.zip", "has_sig": false, "md5_digest": "a1ff4566bdeb0f55216fbae32d0b63f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33911, "upload_time": "2010-07-18T16:08:00", "url": "https://files.pythonhosted.org/packages/19/39/d3fe6e0cfceb08742f0a4cddb9b705c0e8e925883fccdeebfd696e604f0d/plone.reload-1.5.zip" } ], "2.0": [ { "comment_text": "", "digests": { "md5": "49eab593c81b78a9b80d54786aa4ad72", "sha256": "4358a9803befb9bc0134311ed27f769ec08e477ada936e3b74c04c79101ff108" }, "downloads": -1, "filename": "plone.reload-2.0.zip", "has_sig": false, "md5_digest": "49eab593c81b78a9b80d54786aa4ad72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31270, "upload_time": "2011-06-04T18:17:44", "url": "https://files.pythonhosted.org/packages/67/3d/304159bf1c4cb9f2dbd66a53ece4babd307ca6a0126637f801f60dd6bdb9/plone.reload-2.0.zip" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "4f28b329a36f18ff70738510f2fb5bf5", "sha256": "9f841e04bcf8d121bd4c5022adb478193b24a43871ea0770b3c0e96fa49d36ac" }, "downloads": -1, "filename": "plone.reload-2.0.1.tar.gz", "has_sig": false, "md5_digest": "4f28b329a36f18ff70738510f2fb5bf5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18855, "upload_time": "2016-02-11T21:04:09", "url": "https://files.pythonhosted.org/packages/b7/99/b26bbd734ed94b3ef4b036bd63fccc630a97d11f64bda8f8c4e4b9a47e55/plone.reload-2.0.1.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "e6abc6fc2dbe2be29902d080c3b21b7b", "sha256": "bf7d03663b020be8e00b7f307fa5f9f7b591ada73b84cb64d687a7c263677fa5" }, "downloads": -1, "filename": "plone.reload-2.0.2.tar.gz", "has_sig": false, "md5_digest": "e6abc6fc2dbe2be29902d080c3b21b7b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18922, "upload_time": "2016-08-17T23:34:57", "url": "https://files.pythonhosted.org/packages/4e/09/5a312b4a0bdcf45d841fd991ccfba960de6ff9a8a3853beb492ae54994fa/plone.reload-2.0.2.tar.gz" } ], "2.0b1": [ { "comment_text": "", "digests": { "md5": "3ecffc3f4d4e19f0a5bf3eee86aedb0d", "sha256": "e9d697c9408cc6212d78683f0f075e79fd5c3f980bd890cb4f47673e85eb443b" }, "downloads": -1, "filename": "plone.reload-2.0b1.zip", "has_sig": false, "md5_digest": "3ecffc3f4d4e19f0a5bf3eee86aedb0d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36701, "upload_time": "2011-04-03T17:35:19", "url": "https://files.pythonhosted.org/packages/1c/c0/841b2b5842dc0165b749079c2d02efabcb05ba04727e04e99ea0930322ce/plone.reload-2.0b1.zip" } ], "3.0.0": [ { "comment_text": "", "digests": { "md5": "3e480fd956cc695c9b445d47edac414a", "sha256": "c39af202e1ca41229e5d003dbaf10f6bd4243792e2e4b4f33ee5b6b9869c7aa2" }, "downloads": -1, "filename": "plone.reload-3.0.0-py2-none-any.whl", "has_sig": false, "md5_digest": "3e480fd956cc695c9b445d47edac414a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 17247, "upload_time": "2018-11-05T00:27:22", "url": "https://files.pythonhosted.org/packages/cf/7f/cdc622f15b1a47a4a0b750c4d8b65cbea21937dd84afe1240bf100fc6ab2/plone.reload-3.0.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7b65cb927e99598e7c12c41bbbf9a35e", "sha256": "23c860b4682ce78fc703f60e0cc4958fd5cf87b8399119d33f8d25be36cf8cc9" }, "downloads": -1, "filename": "plone.reload-3.0.0.tar.gz", "has_sig": false, "md5_digest": "7b65cb927e99598e7c12c41bbbf9a35e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16772, "upload_time": "2018-11-05T00:27:24", "url": "https://files.pythonhosted.org/packages/e2/96/d0bd960d4b6b7f4111be8f04a015d271da856f8ecf132e34d3596fc9de2b/plone.reload-3.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3e480fd956cc695c9b445d47edac414a", "sha256": "c39af202e1ca41229e5d003dbaf10f6bd4243792e2e4b4f33ee5b6b9869c7aa2" }, "downloads": -1, "filename": "plone.reload-3.0.0-py2-none-any.whl", "has_sig": false, "md5_digest": "3e480fd956cc695c9b445d47edac414a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 17247, "upload_time": "2018-11-05T00:27:22", "url": "https://files.pythonhosted.org/packages/cf/7f/cdc622f15b1a47a4a0b750c4d8b65cbea21937dd84afe1240bf100fc6ab2/plone.reload-3.0.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7b65cb927e99598e7c12c41bbbf9a35e", "sha256": "23c860b4682ce78fc703f60e0cc4958fd5cf87b8399119d33f8d25be36cf8cc9" }, "downloads": -1, "filename": "plone.reload-3.0.0.tar.gz", "has_sig": false, "md5_digest": "7b65cb927e99598e7c12c41bbbf9a35e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16772, "upload_time": "2018-11-05T00:27:24", "url": "https://files.pythonhosted.org/packages/e2/96/d0bd960d4b6b7f4111be8f04a015d271da856f8ecf132e34d3596fc9de2b/plone.reload-3.0.0.tar.gz" } ] }