{ "info": { "author": "Young King", "author_email": "yanckin@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: ISC License (ISCL)", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4" ], "description": "===============================\nTwo Level Local Cache\n===============================\n\n.. image:: https://img.shields.io/travis/youngking/tlcache.svg\n :target: https://travis-ci.org/youngking/tlcache\n\n.. image:: https://img.shields.io/pypi/v/tlcache.svg\n :target: https://pypi.python.org/pypi/tlcache\n\n\nTwo Level Local Cache\n\n* Free software: ISC license\n* Documentation: https://tlcache.readthedocs.org.\n\n\nUsage\n--------\n\n* simple use\n\n>>> from tlcache import TLCache\n>>> cache = TLCache(cache_dir=\"/tmp/xxxxdir\")\n>>> lst = []\n>>> @cache.cache()\n... def apppend():\n... lst.append(1)\n... return lst\n>>> append() == [1]\n>>> append() == [1]\n\n* cache refresh\n\n>>> with cache.with_refresh():\n... append() == [1, 1]\n... append() == [1, 1, 1]\n>>> append() == [1, 1, 1]\n\n\n\n\nFeatures\n--------\n\n* Two level cache, first level is memory, and second level is the filesystem\n\n\n\n\nHistory\n\n0.2.1 (2017-06-21)\n-------------------\n* Fix missing exception stack\n\n0.2.0 (2016-08-07)\n-------------------\n* Even cache when got empty results\n* When exception, use old data to cache degraded\n\n0.1.7 (2016-4-14)\n-----------------\n* cache refresh manager, should be used with lock\n\n0.1.6 (2016-4-14)\n-----------------\n* add cache refresh context manager\n\n0.1.5 (2016-4-14)\n------------------\n* decrese logging warnings\n\n0.1.4 (2016-3-16)\n-------------------\n* make sure fd is closed when fdopen occus exception\n* set memory before file\n\n0.1.3 (2015-11-24)\n------------------\n* Don't cache when results is empty\n\n0.1.2 (2015-11-13)\n__________________\n* Fix a bug that which causes when cache invalidate wil not cached again.\n\n0.1.1 (2015-11-10)\n--------------------\n* Inside the tlcache's `add` method, use the filecache's `set` method internally.\n\n0.1.0 (2015-11-10)\n---------------------\n\n* First release on PyPI.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/youngking/tlcache", "keywords": "tlcache", "license": "ISCL", "maintainer": null, "maintainer_email": null, "name": "tlcache", "package_url": "https://pypi.org/project/tlcache/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/tlcache/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/youngking/tlcache" }, "release_url": "https://pypi.org/project/tlcache/0.2.1/", "requires_dist": null, "requires_python": null, "summary": "Two Level Local Cache", "version": "0.2.1" }, "last_serial": 2963919, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "9cc3c4927fc39322fd35b20cf517b9f6", "sha256": "a2b6732ef22656db4838fe7d232341dd91c6c2a941bb1656d37c75d7de6d1d53" }, "downloads": -1, "filename": "tlcache-0.1.0.tar.gz", "has_sig": false, "md5_digest": "9cc3c4927fc39322fd35b20cf517b9f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14839, "upload_time": "2015-11-10T08:40:31", "url": "https://files.pythonhosted.org/packages/d8/48/4663c0974c6604e1ab28956274d7ffb5f2dd12fe9c5c293bb0a497bd301d/tlcache-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "772ffa738a6f2603d3d3907a271122a3", "sha256": "cc22148b01c3f3cc572f5191a095ff4a1852e99f4bc23a0f2b8adb61804e6e96" }, "downloads": -1, "filename": "tlcache-0.1.1.tar.gz", "has_sig": false, "md5_digest": "772ffa738a6f2603d3d3907a271122a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14938, "upload_time": "2015-11-10T12:33:05", "url": "https://files.pythonhosted.org/packages/e5/ad/ce2763fda10b9a94eaf89cc2af4873e2da8a799b81dd6b15ffd31cf7b99d/tlcache-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "9a9cce315d28f0144c32d1e663fe909b", "sha256": "718cd28c6a1dae792674ff1720a170ac72f527151552c9293591c8407efd9ec0" }, "downloads": -1, "filename": "tlcache-0.1.2.tar.gz", "has_sig": false, "md5_digest": "9a9cce315d28f0144c32d1e663fe909b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15097, "upload_time": "2015-11-13T09:04:28", "url": "https://files.pythonhosted.org/packages/6f/3d/8f4d376995cca57539368830fb234c02156ccf3ea0158f079b04fcecd7d6/tlcache-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "3693f49792af1222fe790bae3e471509", "sha256": "96423bfa25b89f448f6db222afff3fece2cd9ab92d6c2d486c3151a201bcabcb" }, "downloads": -1, "filename": "tlcache-0.1.3.tar.gz", "has_sig": false, "md5_digest": "3693f49792af1222fe790bae3e471509", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15191, "upload_time": "2015-11-24T05:05:43", "url": "https://files.pythonhosted.org/packages/e2/78/627ada36cf5c44220ae04a64caa13f3c5507d9913104db86ac99aa701563/tlcache-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "ae1097f852ad3f31ee16f30b55077e51", "sha256": "1fd2d3d5824674c77c0f59c3027513242e4dea0e2442d3ae8babcf49cf7ad944" }, "downloads": -1, "filename": "tlcache-0.1.4.tar.gz", "has_sig": false, "md5_digest": "ae1097f852ad3f31ee16f30b55077e51", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15344, "upload_time": "2016-03-16T08:41:29", "url": "https://files.pythonhosted.org/packages/e9/45/9737a372572ec08e46f791839dfa1295e88b5f886dff0a34e284f1cc7f52/tlcache-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "bcb2610b688504827e4b096e38d6643b", "sha256": "c67ecc3f46c94836c55df604b3577d475860b17cf4d42a63c529566f47364a77" }, "downloads": -1, "filename": "tlcache-0.1.5.tar.gz", "has_sig": false, "md5_digest": "bcb2610b688504827e4b096e38d6643b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15423, "upload_time": "2016-04-14T06:19:24", "url": "https://files.pythonhosted.org/packages/71/66/fcc76bc8276e8eeea86bbd9095cf04bf04cfe77bfe0a61f59f53bb853895/tlcache-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "6fe7afe4c4a570b121e5e5f21ffd04f7", "sha256": "dc4085c9740be3ac230b2d63a135f56b3e3f23296e6641f77ebcd32e4eb0a08f" }, "downloads": -1, "filename": "tlcache-0.1.6.tar.gz", "has_sig": false, "md5_digest": "6fe7afe4c4a570b121e5e5f21ffd04f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15828, "upload_time": "2016-04-14T07:44:35", "url": "https://files.pythonhosted.org/packages/ee/10/a47c9f6a80af68d6dce152ef84e7e825c3171277b160a8ef1701935aa75c/tlcache-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "e2dba384bde21a1311463df97ad3d786", "sha256": "15c8312effa55de05ca0e93864628d79071bfcc16141a282fea3b0cff7a1f825" }, "downloads": -1, "filename": "tlcache-0.1.7.tar.gz", "has_sig": false, "md5_digest": "e2dba384bde21a1311463df97ad3d786", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15872, "upload_time": "2016-04-14T08:16:54", "url": "https://files.pythonhosted.org/packages/e9/0d/4b1bf42d81bf2de962ad2994a3ba5843bf511c38b8141f74b0173d501d6d/tlcache-0.1.7.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "9be54bd898e00ee5be9eefdf6cb4b656", "sha256": "318666ff8aab0e376a9f0081c30f33c54c8d8ac4c51708bad96d3ee25f8823a4" }, "downloads": -1, "filename": "tlcache-0.2.0.tar.gz", "has_sig": false, "md5_digest": "9be54bd898e00ee5be9eefdf6cb4b656", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16194, "upload_time": "2016-08-08T03:41:39", "url": "https://files.pythonhosted.org/packages/52/bb/dd74b5efe5558498cdfd72e4bac4d0eb150c4924d10aabef1234db363dcf/tlcache-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "e36b35fdb9f9954fad3633557b1ccea0", "sha256": "6fd545023e81473334f57122be2022ce0025784919c10d3becb3cb5da519febb" }, "downloads": -1, "filename": "tlcache-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e36b35fdb9f9954fad3633557b1ccea0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16071, "upload_time": "2017-06-21T05:04:15", "url": "https://files.pythonhosted.org/packages/8b/32/a807719630785bb0de0cb1f3f10c74778e9113a0f6779773dbde714e38a9/tlcache-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e36b35fdb9f9954fad3633557b1ccea0", "sha256": "6fd545023e81473334f57122be2022ce0025784919c10d3becb3cb5da519febb" }, "downloads": -1, "filename": "tlcache-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e36b35fdb9f9954fad3633557b1ccea0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16071, "upload_time": "2017-06-21T05:04:15", "url": "https://files.pythonhosted.org/packages/8b/32/a807719630785bb0de0cb1f3f10c74778e9113a0f6779773dbde714e38a9/tlcache-0.2.1.tar.gz" } ] }