{ "info": { "author": "Peter Bengtsson", "author_email": "mail@peterbe.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "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.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "django-fancy-cache\n==================\n\nCopyright Peter Bengtsson, mail@peterbe.com, 2013-2016\n\n|Travis|\n\nLicense: BSD\n\nAbout django-fancy-cache\n------------------------\n\nA Django ``cache_page`` decorator on steroids.\n\nUnlike the stock ``django.views.decorators.cache.change_page`` this\ndecorator makes it possible to set a ``key_prefixer`` that is a\ncallable. This callable is passed the request and if it returns ``None``\nthe page is not cached.\n\nAlso, you can set another callable called ``post_process_response``\n(which is passed the response and the request) which can do some\nadditional changes to the response before it's set in cache.\n\nLastly, you can set ``post_process_response_always=True`` so that the\n``post_process_response`` callable is always called, even when the\nresponse is coming from the cache.\n\n\nHow to use it\n-------------\n\nIn your Django views:\n\n.. code:: python\n\n from fancy_cache import cache_page\n\n @cache_page(60 * 60)\n def myview(request):\n return render(request, 'page1.html')\n\n def prefixer(request):\n if request.method != 'GET':\n return None\n if request.GET.get('no-cache'):\n return None\n return 'myprefix'\n\n @cache_page(60 * 60, key_prefixer=prefixer)\n def myotherview(request):\n return render(request, 'page2.html')\n\n def post_processor(response, request):\n response.content += ''\n return response\n\n @cache_page(60 * 60,\n key_prefixer=prefixer,\n post_process_response=post_processor)\n def yetanotherotherview(request):\n return render(request, 'page3.html')\n\nOptional uses\n-------------\n\nIf you want to you can have ``django-fancy-cache`` record every URL it\ncaches. This can be useful for things like invalidation or curious\nstatistical inspection.\n\nYou can either switch this on on the decorator itself. Like this:\n\n.. code:: python\n\n from fancy_cache import cache_page\n\n @cache_page(60 * 60, remember_all_urls=True)\n def myview(request):\n return render(request, 'page1.html')\n\nOr, more conveniently to apply it to all uses of the ``cache_page``\ndecorator you can set the default in your settings with:\n\n.. code:: python\n\n FANCY_REMEMBER_ALL_URLS = True\n\nNow, suppose you have the this option enabled. Now you can do things\nlike this:\n\n.. code:: python\n\n >>> from fancy_cache.memory import find_urls\n >>> list(find_urls(['/some/searchpath', '/or/like/*/this.*']))\n >>> # or, to get all:\n >>> list(find_urls([]))\n\nThere is also another option to this and that is to purge (aka.\ninvalidate) the remembered URLs. You simply all the ``purge=True``\noption like this:\n\n.. code:: python\n\n >>> from fancy_cache.memory import find_urls\n >>> list(find_urls([], purge=True))\n\nNote: Since ``find_urls()`` returns a generator, the purging won't\nhappen unless you exhaust the generator. E.g. looping over it or\nturning it into a list.\n\nThe second way to inspect all recorded URLs is to use the\n``fancy-cache`` management command. This is only available if you have\nadded ``fancy_cache`` to your ``INSTALLED_APPS`` setting. Now you can do\nthis::\n\n $ ./manage.py fancy-cache --help\n $ ./manage.py fancy-cache\n $ ./manage.py fancy-cache /some/searchpath /or/like/*/this.*\n $ ./manage.py fancy-cache /some/place/* --purge\n $ # or to purge them all!\n $ ./manage.py fancy-cache --purge\n\nNote, it will only print out URLs that if found (and purged, if\napplicable).\n\nThe third way to inspect the recorded URLs is to add this to your root\n``urls.py``:\n\n.. code:: python\n\n url(r'fancy-cache', include('fancy_cache.urls')),\n\nNow, if you visit ``http://localhost:8000/fancy-cache`` you get a table\nlisting every URL that ``django-fancy-cache`` has recorded.\n\n\nOptional uses (for the exceptionally curious)\n---------------------------------------------\n\nIf you have enabled ``FANCY_REMEMBER_ALL_URLS`` you can also enable\n``FANCY_REMEMBER_STATS_ALL_URLS`` in your settings. What this does is\nthat it attempts to count the number of cache hits and cache misses\nyou have for each URL.\n\nThis counting of hits and misses is configured to last \"a long time\".\nPossibly longer than you cache your view. So, over time you can expect\nto have more than one miss because your view cache expires and it\nstarts over.\n\nYou can see the stats whenever you use any of the ways described in\nthe section above. For example like this:\n\n.. code:: python\n\n >>> from fancy_cache.memory import find_urls\n >>> found = list(find_urls([]))[0]\n >>> found[0]\n '/some/page.html'\n >>> found[2]\n {'hits': 1235, 'misses': 12}\n\nThere is obviously a small additional performance cost of using the\n``FANCY_REMEMBER_ALL_URLS`` and/or ``FANCY_REMEMBER_STATS_ALL_URLS`` in\nyour project so only use it if you don't have any smarter way to\ninvalidate, for debugging or if you really want make it possible to\npurge all cached responses when you run an upgrade of your site or\nsomething.\n\nRunning the test suite\n----------------------\n\nThe simplest way is to simply run::\n\n $ pip install tox\n $ tox\n\nOr to run it without ``tox`` you can simply run::\n\n $ export PYTHONPATH=`pwd`\n $ export DJANGO_SETTINGS_MODULE=fancy_tests.tests.settings\n $ django-admin.py test\n\n\n.. |Travis| image:: https://travis-ci.org/peterbe/django-fancy-cache.png?branch=master\n :target: https://travis-ci.org/peterbe/django-fancy-cache\n\n\nChangelog\n---------\n\n(Sorry, been poor in maintaining this. Let's get it right from now)\n\n0.11.0\n * Fix for ``parse_qs`` correctly between Python 2 and Python 3\n\n0.10.0\n * Fix for keeping blank strings in query strings. #39\n\n0.9.0\n * Django 1.10 support\n\n0.8.2\n * Remove deprecated way to define URL patterns and tests in python 3.5\n\n0.8.1\n * Ability to specify different cache backends to be used\n https://github.com/peterbe/django-fancy-cache/pull/31\n\n0.8.0\n * Started keeping a Changelog\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/peterbe/django-fancy-cache", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "django-fancy-cache", "package_url": "https://pypi.org/project/django-fancy-cache/", "platform": "", "project_url": "https://pypi.org/project/django-fancy-cache/", "project_urls": { "Homepage": "https://github.com/peterbe/django-fancy-cache" }, "release_url": "https://pypi.org/project/django-fancy-cache/0.11.0/", "requires_dist": [ "six" ], "requires_python": "", "summary": "A Django 'cache_page' decorator on steroids", "version": "0.11.0" }, "last_serial": 5212517, "releases": { "0.10.0": [ { "comment_text": "", "digests": { "md5": "d0bf420656ab9db68b9f56be8357e949", "sha256": "2a2a3471d5425991c33fcf2f0cfced9735377312be0dbac3f875867a4bd4fc31" }, "downloads": -1, "filename": "django_fancy_cache-0.10.0-py2-none-any.whl", "has_sig": false, "md5_digest": "d0bf420656ab9db68b9f56be8357e949", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 16430, "upload_time": "2018-07-02T20:20:07", "url": "https://files.pythonhosted.org/packages/8e/cc/6bcfa0d4f8552a33ea00a236439ec2608a7bc48a120790758a31472439bc/django_fancy_cache-0.10.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ece89efc056dd485242a158d05d8bf02", "sha256": "550ca3757fd8b484e60a4dfaec192863d16d537f6eef6e88f7a33edb27e73f70" }, "downloads": -1, "filename": "django_fancy_cache-0.10.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ece89efc056dd485242a158d05d8bf02", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16429, "upload_time": "2018-07-02T20:20:29", "url": "https://files.pythonhosted.org/packages/d7/ea/8445a581125e474fcf1293c768d7d19d7057e31f0dce5492ccab43a607ae/django_fancy_cache-0.10.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "72490e7304fcbcca510ef9989f897a23", "sha256": "fe86e8e6fa7f6e86e0880bb5b91764f47320997608633b55bc46f9e104bdcf08" }, "downloads": -1, "filename": "django-fancy-cache-0.10.0.tar.gz", "has_sig": false, "md5_digest": "72490e7304fcbcca510ef9989f897a23", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15455, "upload_time": "2018-07-02T20:20:08", "url": "https://files.pythonhosted.org/packages/58/1a/1fbc5ab7eb6fe607e3316b4abd46e85270b5af9c4c7a89ec61573b5a0ccc/django-fancy-cache-0.10.0.tar.gz" } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "b4ddbfe683cb230f4458b625455c3abf", "sha256": "966b919150ceb3e874cb7fd8a08e0dd952426656321e33805be78b2eef5100e5" }, "downloads": -1, "filename": "django_fancy_cache-0.11.0-py2-none-any.whl", "has_sig": false, "md5_digest": "b4ddbfe683cb230f4458b625455c3abf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 19975, "upload_time": "2019-05-01T12:21:40", "url": "https://files.pythonhosted.org/packages/49/1e/ba3a7a1bf1e9db894ea334fff4e627be89ab1c908ebd537ee9b287706352/django_fancy_cache-0.11.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9755d033dcef968c46b112945fcb1188", "sha256": "c8486b44629f2fa50fcf14cff4dcdf16d3241bef84f2a106491bd2561ba9264f" }, "downloads": -1, "filename": "django-fancy-cache-0.11.0.tar.gz", "has_sig": false, "md5_digest": "9755d033dcef968c46b112945fcb1188", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15265, "upload_time": "2019-05-01T12:21:42", "url": "https://files.pythonhosted.org/packages/77/61/318ad1af8635b48dde9a0d794213184dad4eda2fefdf3c9395810aae45c1/django-fancy-cache-0.11.0.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "a48b97421736ef619d1a587d42431be4", "sha256": "d9337ec834ff7f5506ac42e0f9c31b7aac0277c79acf1ce1880980a0b0c3994f" }, "downloads": -1, "filename": "django-fancy-cache-0.2.tar.gz", "has_sig": false, "md5_digest": "a48b97421736ef619d1a587d42431be4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8179, "upload_time": "2013-02-03T04:21:11", "url": "https://files.pythonhosted.org/packages/8c/87/d70283ba91b73582d48d63b36e83a204faa18779962fe85bb4a82140d41a/django-fancy-cache-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "57e905e716ce2922abb4a56b9666dc37", "sha256": "7bff54aa9d982c35f8d5de43020fe0c4209f81967cc7c223892db642a15c1e22" }, "downloads": -1, "filename": "django-fancy-cache-0.3.tar.gz", "has_sig": false, "md5_digest": "57e905e716ce2922abb4a56b9666dc37", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12838, "upload_time": "2013-02-03T23:19:03", "url": "https://files.pythonhosted.org/packages/e8/fa/01d8a9d3623f63a6dc0f319ef60aead5d2fee8075e79cdbf5c91d78204bb/django-fancy-cache-0.3.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "35890403b9a44a4fdcdf009d87e109dd", "sha256": "ab47c4361b3353e1b257fae6b48cffc6bf973c1aaaad1b5a2fd69550db21a99a" }, "downloads": -1, "filename": "django-fancy-cache-0.3.2.tar.gz", "has_sig": false, "md5_digest": "35890403b9a44a4fdcdf009d87e109dd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13454, "upload_time": "2013-02-13T16:29:19", "url": "https://files.pythonhosted.org/packages/c1/cf/fb17b12e8cc926219555dba74f2dee73d7b0cae3e39e32a1df988f7b523d/django-fancy-cache-0.3.2.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "0a684c6aaf5a130ae776c8008299e048", "sha256": "7e9d3d9cae2a70894fa4f26ab8b0b26c4bb5ebaf4dc21f62234a01af286c0226" }, "downloads": -1, "filename": "django-fancy-cache-0.4.0.tar.gz", "has_sig": false, "md5_digest": "0a684c6aaf5a130ae776c8008299e048", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13997, "upload_time": "2013-03-12T19:08:56", "url": "https://files.pythonhosted.org/packages/33/1d/51e6440f8acadb225341490012089bebe45cd9c62673b668a84bfab5fd70/django-fancy-cache-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "b2193d8b9352aef4045b02a0c8007092", "sha256": "a3d7b391612bb3e0d47d3126b8d3aca148a261d72d0b701873cc786291b3e67f" }, "downloads": -1, "filename": "django-fancy-cache-0.5.0.tar.gz", "has_sig": false, "md5_digest": "b2193d8b9352aef4045b02a0c8007092", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14146, "upload_time": "2013-10-02T22:19:49", "url": "https://files.pythonhosted.org/packages/04/71/03bde962fb86e36b09660fa2bbe2ff2deb1d96cc5ae3696cf6b9c199d6c1/django-fancy-cache-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "47557c3418047f80d3efebb943614d8f", "sha256": "975c68c66ea079c18c0550488fb6160731787e606da5cac27aa5f8ecde543fbf" }, "downloads": -1, "filename": "django-fancy-cache-0.6.0.tar.gz", "has_sig": false, "md5_digest": "47557c3418047f80d3efebb943614d8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14338, "upload_time": "2014-05-12T16:24:48", "url": "https://files.pythonhosted.org/packages/19/05/e75f033e38d6502604197df98685fc227dba714ef14a2e2ffa2705574be4/django-fancy-cache-0.6.0.tar.gz" } ], "0.7.2": [ { "comment_text": "", "digests": { "md5": "7d8f8649026440ca560258ba7ed25e59", "sha256": "db6744f99dd61830647fdfb205801035386118ea48b0381e6e59d1dfb23ac9cc" }, "downloads": -1, "filename": "django_fancy_cache-0.7.2-py2-none-any.whl", "has_sig": false, "md5_digest": "7d8f8649026440ca560258ba7ed25e59", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 18651, "upload_time": "2015-08-11T20:20:17", "url": "https://files.pythonhosted.org/packages/6f/a1/c6e94ea1b124776233625bdcba806874fc21b043f469141a34b1c833659a/django_fancy_cache-0.7.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6ba30ce9f7ab233e92db8dbb0d82fa80", "sha256": "50bfcf8cd11f56474554a47892eeef69fb0dbcb77a736b1d22ea57237de2440e" }, "downloads": -1, "filename": "django-fancy-cache-0.7.2.tar.gz", "has_sig": false, "md5_digest": "6ba30ce9f7ab233e92db8dbb0d82fa80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14682, "upload_time": "2015-08-11T20:20:14", "url": "https://files.pythonhosted.org/packages/f5/95/8a3e1314f9528eb71f73a45be1005c5b938b12ccdc6f3801129e1f9d530f/django-fancy-cache-0.7.2.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "c8cf52e1334a958cc28cde73f8ebc78a", "sha256": "6dc4045764c6d1833ed5de56ad29b35672c75fa55a28c6392cd4042c5cbfb3e8" }, "downloads": -1, "filename": "django_fancy_cache-0.8.0-py2-none-any.whl", "has_sig": false, "md5_digest": "c8cf52e1334a958cc28cde73f8ebc78a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 18399, "upload_time": "2016-02-10T13:34:16", "url": "https://files.pythonhosted.org/packages/e7/68/f07b42e699ba7b50f8cb6194a1abd5da95b81bd79d402e07d21f7013ff18/django_fancy_cache-0.8.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "011d346dc9cf501d07cc155caf2ac0e7", "sha256": "03a8f8229b0187cabbb4bb3e58aac9bb79464f6b05878f910891429d05ad0049" }, "downloads": -1, "filename": "django-fancy-cache-0.8.0.tar.gz", "has_sig": false, "md5_digest": "011d346dc9cf501d07cc155caf2ac0e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14569, "upload_time": "2016-02-10T13:34:21", "url": "https://files.pythonhosted.org/packages/63/34/359a3d9b010fc8280304591127dc2fa4dfa3f4d670d949da242441f82fc6/django-fancy-cache-0.8.0.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "36962e6c4dc28a3550888779f71ff29f", "sha256": "4b63b3cef1a8f0902a4348b523ef9fc2246b582ecf222d12abd6a6792c4d8518" }, "downloads": -1, "filename": "django_fancy_cache-0.8.1-py2-none-any.whl", "has_sig": false, "md5_digest": "36962e6c4dc28a3550888779f71ff29f", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 18870, "upload_time": "2016-10-31T14:33:10", "url": "https://files.pythonhosted.org/packages/b7/81/d20c9cedf994d63b9a0943b72c2154d1262d84b90e1614499d95767702fb/django_fancy_cache-0.8.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "206db85819eb7e0cf84889645ea231cb", "sha256": "d12e987bd3eda3af859c9c2c85f024ed460653603411aae89717e1a56b668402" }, "downloads": -1, "filename": "django-fancy-cache-0.8.1.tar.gz", "has_sig": false, "md5_digest": "206db85819eb7e0cf84889645ea231cb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15110, "upload_time": "2016-10-31T14:33:12", "url": "https://files.pythonhosted.org/packages/03/e7/abf19db0b82151cdcf72d0c3871024a77435db0c636f6c216925042ecd5f/django-fancy-cache-0.8.1.tar.gz" } ], "0.8.2": [ { "comment_text": "", "digests": { "md5": "8dbed06a0f75d9d0505b3a79078a8bce", "sha256": "4ff8e08c166cd06a0d029e2d01a7d6972c806348de16019999d78ef326014473" }, "downloads": -1, "filename": "django_fancy_cache-0.8.2-py2-none-any.whl", "has_sig": false, "md5_digest": "8dbed06a0f75d9d0505b3a79078a8bce", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 18935, "upload_time": "2016-12-09T02:55:09", "url": "https://files.pythonhosted.org/packages/72/d5/5aea0f1e299370b93ff541856e35448be69961b1db4eaf1dacea3da8075a/django_fancy_cache-0.8.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "82153b2a8ae3d565407f81a5a075e59d", "sha256": "c07966a4dbce1bc8699fdb31bec43a1a87bd123507b34fb213dbb3621c31580a" }, "downloads": -1, "filename": "django_fancy_cache-0.8.2-py3-none-any.whl", "has_sig": false, "md5_digest": "82153b2a8ae3d565407f81a5a075e59d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19587, "upload_time": "2017-02-03T00:53:20", "url": "https://files.pythonhosted.org/packages/5d/4b/44b56b68cb761f16b823b2ef7dc9b6c38ee62489df758001f392e06d1282/django_fancy_cache-0.8.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "07ec6dd64be76418ac8ebe3c8833723b", "sha256": "bc019aa6c21302b788e62055eea90b7207e90e4b38f7602c8442dc8c23c9fc4d" }, "downloads": -1, "filename": "django-fancy-cache-0.8.2.tar.gz", "has_sig": false, "md5_digest": "07ec6dd64be76418ac8ebe3c8833723b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15182, "upload_time": "2016-12-09T02:55:11", "url": "https://files.pythonhosted.org/packages/51/26/de0f2d53420fa054ca46969fd4bdb73a6edcf6fc578a748bebc2887e3b21/django-fancy-cache-0.8.2.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "907fd51aba70ceab020fa5fabd11ddd2", "sha256": "1352c317b639ca8e949118fdd40f54d13a782a4506335a1103f0c6ede0ab6e78" }, "downloads": -1, "filename": "django_fancy_cache-0.9.0-py2-none-any.whl", "has_sig": false, "md5_digest": "907fd51aba70ceab020fa5fabd11ddd2", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 19584, "upload_time": "2017-02-03T00:54:47", "url": "https://files.pythonhosted.org/packages/39/2c/e15e0be0237e12fa7f5c3cd78e7f8e4f5c2ff8caaabf4a1983e19eaf9484/django_fancy_cache-0.9.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a22cd51231c7bdbfa681834d1866ae5c", "sha256": "0e4221614c8a9cfe83ff593daa3b7c7a65307cdb51342a6c0963f31a45baa7d3" }, "downloads": -1, "filename": "django_fancy_cache-0.9.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a22cd51231c7bdbfa681834d1866ae5c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 19584, "upload_time": "2017-02-03T00:55:25", "url": "https://files.pythonhosted.org/packages/f2/b6/a04ae13c853f668d43e2b096b289a8572c9cdae2f805a2c4be967b9bcd08/django_fancy_cache-0.9.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "addcf4725c8e15b3888eab0442dbd2c0", "sha256": "3311362be228dfbf03432014e329574b299e35573629052c581f4dcaee0d8566" }, "downloads": -1, "filename": "django-fancy-cache-0.9.0.tar.gz", "has_sig": false, "md5_digest": "addcf4725c8e15b3888eab0442dbd2c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15459, "upload_time": "2017-02-03T00:54:49", "url": "https://files.pythonhosted.org/packages/25/05/3507121373834bb1be13dd55704d4eaaeec2ce844f960a37039f0e17839f/django-fancy-cache-0.9.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b4ddbfe683cb230f4458b625455c3abf", "sha256": "966b919150ceb3e874cb7fd8a08e0dd952426656321e33805be78b2eef5100e5" }, "downloads": -1, "filename": "django_fancy_cache-0.11.0-py2-none-any.whl", "has_sig": false, "md5_digest": "b4ddbfe683cb230f4458b625455c3abf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 19975, "upload_time": "2019-05-01T12:21:40", "url": "https://files.pythonhosted.org/packages/49/1e/ba3a7a1bf1e9db894ea334fff4e627be89ab1c908ebd537ee9b287706352/django_fancy_cache-0.11.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9755d033dcef968c46b112945fcb1188", "sha256": "c8486b44629f2fa50fcf14cff4dcdf16d3241bef84f2a106491bd2561ba9264f" }, "downloads": -1, "filename": "django-fancy-cache-0.11.0.tar.gz", "has_sig": false, "md5_digest": "9755d033dcef968c46b112945fcb1188", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15265, "upload_time": "2019-05-01T12:21:42", "url": "https://files.pythonhosted.org/packages/77/61/318ad1af8635b48dde9a0d794213184dad4eda2fefdf3c9395810aae45c1/django-fancy-cache-0.11.0.tar.gz" } ] }