{ "info": { "author": "mirmik", "author_email": "mirmikns@yandex.ru", "bugtrack_url": null, "classifiers": [], "description": "# EvalCache\nLazy tree evaluation cache library.\n\n## Brief\nThe library implements a cache of dependent lazy calculations for working with clean, time-consuming computational tasks, such as symbolic transformations, geometric, numerical algorithms.\n\nThe task of the library is to save the result of the computation once performed and, if necessary, load it, saving the computing resources. The algorithm for constructing the hashkey of the computed object uses the input data parameterizing this object, which makes it possible to track changes in the arguments of the lazy algorithm and to postpone the necessary calculations if the conditions have changed. If an lazy object is used as an argument or a generating function, its hashkey is used as its hash. This allows you to build a dependent computational tree. If the input data of an object changes, its hashkey and hashkeys of all objects computed on its basis change. And the subtree will be reevaluated.\n\nSince the library saves every computed object in the cache, including intermediate objects, it can pick up changes in the calculation tree from any step. Thus, previously received data, if they can be applied to a new calculation tree, will be used. This allows you to not make heavy preliminary calculations in separate files, and load them transparently, and also compare results with small changes in input parameters without multiple results remaking.\n\n## Install\n```sh\npython3 -m pip install evalcache\n```\n\n## Details\n### Base example\n```python\nimport evalcache\n\nlazy = evalcache.Lazy(cache = evalcache.DirCache(\".evalcache\"))\n\n@lazy\ndef func(a,b,c):\n return do_something(a,b,c)\n\nlazyresult = func(1,2,3)\nresult = lazyresult.unlazy() #alternative: result = evalcache.unlazy(lazyresult)\n```\n\nIn that example we can see based classes and objects:\nYou should instance \"evalcache.Lazy\" for start work. \"Lazy\" get \"cache\" as parametr. Cache is a dict-like object those will store and load our evaluation's results. \"Lazy\" instance \"lazy\" can be used as decorator for create \"LazyObjects\". Decorated object \"func\" is a LazyObject. \"func\" can generate another lazyobject, as \"lazyresult\", for example with callable interface. For get evaluation result we use \"unlazy\" method.\n\n### Diagnostic \nWe can visualize cache operations:\n```python\nlazy = evalcache.Lazy(cache = cache, diag = True)\n```\nin this mode, when you use unlazy, you will see console output: \nendp - get endpoint object. \nfget - get variable from local object store. \nload - get early stored value from cache. \nsave - evaluation executed and value stored.\neval - evaluated without storing\n\n### Hash algorithm \nYou can choose algorithm from hashlib or specify user's hashlib-like algorithm.\n```python\nlazy = evalcache.Lazy(cache = cache, algo = hashlib.sha512)\n```\n\n### DirCache\nDirCache is a dict-like object that used pickle to store values in key-named files.\nIt very simple cache and it can be changed to more progressive option if need. \n```python\nlazy = evalcache.Lazy(cache = evalcache.DirCache(\".evalcache\"))\n``` \n### Articles\n[\u0414\u0438\u0441\u043a\u043e\u0432\u043e\u0435 \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432 \u043b\u0435\u043d\u0438\u0432\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439](https://habr.com/post/422937/)\n\n### Contact\nmirmik(mirmikns@yandex.ru)\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mirmik/evalcache", "keywords": "caching,lazy", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "evalcache", "package_url": "https://pypi.org/project/evalcache/", "platform": "", "project_url": "https://pypi.org/project/evalcache/", "project_urls": { "Homepage": "https://github.com/mirmik/evalcache" }, "release_url": "https://pypi.org/project/evalcache/1.10.3/", "requires_dist": null, "requires_python": "", "summary": "Lazy computing tree cache library", "version": "1.10.3" }, "last_serial": 5995327, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "49bff378b3a1b88dff558528a0dd28f0", "sha256": "d77cb65199533a7636a237c01ac3e79fd3493a4d7ff4dd33a31254589266703b" }, "downloads": -1, "filename": "evalcache-0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "49bff378b3a1b88dff558528a0dd28f0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 2784, "upload_time": "2018-06-25T18:02:46", "url": "https://files.pythonhosted.org/packages/33/b0/09ee1b5636c58d9a9bbb6206bd076d5178cc9125d1724f03143cffec1f71/evalcache-0.0.1-py2.py3-none-any.whl" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "c32df2de3b306a05ac3e07c87533f852", "sha256": "6be5b19688bc5049990ec8ee8a45ffbd97dcd5784f81ec05bb2b45359d1be418" }, "downloads": -1, "filename": "evalcache-0.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c32df2de3b306a05ac3e07c87533f852", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4382, "upload_time": "2018-06-29T16:02:16", "url": "https://files.pythonhosted.org/packages/92/dd/afb06ecbe864bfe484ec975b274c748c732c15bda873820519e8307b45f0/evalcache-0.0.2-py2.py3-none-any.whl" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "2ea9ac79298fb9dffa850a8b7113819a", "sha256": "57b45756be2e66d9d7b56c6a8ae9f25b75359cd89b82f1c64631b227f23efbe4" }, "downloads": -1, "filename": "evalcache-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2ea9ac79298fb9dffa850a8b7113819a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4395, "upload_time": "2018-06-29T20:50:34", "url": "https://files.pythonhosted.org/packages/98/e4/79bd56e07614d004ae9a4d9e7f83595485c53edc044a5b81246f4a8bba4a/evalcache-0.1.0-py2.py3-none-any.whl" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "feaaf2a9d5acc9b393fd91162cd2d4cf", "sha256": "92666a90a912dea2c6aa5d472a4cd3f03069e7222cfab59d3fd36ce8af2f5dd3" }, "downloads": -1, "filename": "evalcache-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "feaaf2a9d5acc9b393fd91162cd2d4cf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4396, "upload_time": "2018-06-29T21:50:03", "url": "https://files.pythonhosted.org/packages/f3/9f/7669ae4cfdd7b7428d616f12e27b2248325b6c507721cceb5f6948560427/evalcache-0.1.1-py2.py3-none-any.whl" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "c644458f08e7e4742efe04c385ecc780", "sha256": "f85a37b48fe93907bcc0069ed96e63a572017cbee42bc1efbac6db43aaccd773" }, "downloads": -1, "filename": "evalcache-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c644458f08e7e4742efe04c385ecc780", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4414, "upload_time": "2018-08-28T06:19:13", "url": "https://files.pythonhosted.org/packages/4a/3e/4c3366d74ecbccc183083d2bec2d74485b1557faa9e345f4c582ba8d7d23/evalcache-0.2.0-py2.py3-none-any.whl" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "71a8c3b4f7b0bab0954b737f6aaf7cf0", "sha256": "6ae51428eb9b811d9b8b9311883c7429f50b4adb1f07aed73dd092115dec6ae9" }, "downloads": -1, "filename": "evalcache-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "71a8c3b4f7b0bab0954b737f6aaf7cf0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6414, "upload_time": "2018-09-01T13:35:12", "url": "https://files.pythonhosted.org/packages/8c/37/8193d1a9f8c72835331368ce37b150cafa9ad6c8cac64759ae1560bffd88/evalcache-0.3.0-py2.py3-none-any.whl" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "86282a6632668449b509f87dd84b3e3f", "sha256": "a447e0c37e2e162fe74501deb42ed4525501ad00d4df9e5d082f653291a33547" }, "downloads": -1, "filename": "evalcache-0.3.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "86282a6632668449b509f87dd84b3e3f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9069, "upload_time": "2018-09-01T14:28:29", "url": "https://files.pythonhosted.org/packages/d7/a9/276b285275e208ee0561aeec0863bec07f7c8aa0133ee075a9ea853ec764/evalcache-0.3.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1d16fff0aeb7da1e6c0a68d0e9f38955", "sha256": "8a235d7329772e2f8d0d99f09b04f75d37ef8247f1f6766d3b102604c53ee24c" }, "downloads": -1, "filename": "evalcache-0.3.6.tar.gz", "has_sig": false, "md5_digest": "1d16fff0aeb7da1e6c0a68d0e9f38955", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6298, "upload_time": "2018-09-01T14:28:30", "url": "https://files.pythonhosted.org/packages/b4/87/be7af83b6e9072d2b1efbc04be1fc74d7fcb6f7affcb15e67c9724333900/evalcache-0.3.6.tar.gz" } ], "0.3.7": [ { "comment_text": "", "digests": { "md5": "8125e03cd90e542b32792362f8883425", "sha256": "5e5094d73eb5e45ad87752b7bc8b65690baee2385161eace3b6ce207007afb35" }, "downloads": -1, "filename": "evalcache-0.3.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8125e03cd90e542b32792362f8883425", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7011, "upload_time": "2018-09-01T14:31:42", "url": "https://files.pythonhosted.org/packages/cc/b5/24ddc59aae9b7f7c068b687027b85e114f582390dc5301435b12bb6fe8fd/evalcache-0.3.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6381aad426e14db1f2394fb1d5fd7179", "sha256": "c7c9bae9f991b344211b5be64f16f6b45de9a7bd0e1ad24fb76ee61ad0ba2968" }, "downloads": -1, "filename": "evalcache-0.3.7.tar.gz", "has_sig": false, "md5_digest": "6381aad426e14db1f2394fb1d5fd7179", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6299, "upload_time": "2018-09-01T14:31:43", "url": "https://files.pythonhosted.org/packages/c2/3e/5b5fd2be3a3d8ace683ec1d12754b3e0c97cec44ebba5396fe2f879931c4/evalcache-0.3.7.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "184fa11e18ab090cc1eebe2df2a38f9b", "sha256": "76aa7dde3d7b6afd74eaacbc8677ea826b36abdd25ce086f1b1484b9e6c1bfab" }, "downloads": -1, "filename": "evalcache-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "184fa11e18ab090cc1eebe2df2a38f9b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7296, "upload_time": "2018-10-27T06:57:34", "url": "https://files.pythonhosted.org/packages/3a/e1/6c4c239f55d5f85f5be42a4864e04e4fa6466f83c39b988b3c6f5fc0453a/evalcache-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a51303433ef768695d613cd887a0ba8f", "sha256": "2985960f031d358e22193cb7df807b8b29daaa31979a6931494574075faff8ed" }, "downloads": -1, "filename": "evalcache-1.0.0.tar.gz", "has_sig": false, "md5_digest": "a51303433ef768695d613cd887a0ba8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6558, "upload_time": "2018-10-27T06:57:36", "url": "https://files.pythonhosted.org/packages/44/af/9da761f81801d7e28ce22772242ccb505040e16ce1d9dffb7a185516dae9/evalcache-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "87065b7a5d60bb898f44cd12b1f70dbe", "sha256": "f20a8ad5798c3c643111955da10a8c44b089665be98be5df2259d6d1d3a57911" }, "downloads": -1, "filename": "evalcache-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "87065b7a5d60bb898f44cd12b1f70dbe", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10526, "upload_time": "2018-10-29T19:38:26", "url": "https://files.pythonhosted.org/packages/84/d4/cde957ed271692e81a6f5e3961b23a7e05aff17b1f00db03e5a62de7c475/evalcache-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8669435a2b383c8b0079a96e721e1575", "sha256": "11f984709931af19f39e0fc67522a8c99424275903d1248ae22a425483fcea04" }, "downloads": -1, "filename": "evalcache-1.1.0.tar.gz", "has_sig": false, "md5_digest": "8669435a2b383c8b0079a96e721e1575", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7785, "upload_time": "2018-10-29T19:38:27", "url": "https://files.pythonhosted.org/packages/a9/a0/8fde798c9d47bf25de682e9c13fa9df7605f59f03930654cff5ca09113d3/evalcache-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "de347eb31d84084801c3430079543679", "sha256": "98142b1563cf597f73b17c21d82d6ba01e726b528d0d14d2d24936c3fd120cef" }, "downloads": -1, "filename": "evalcache-1.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "de347eb31d84084801c3430079543679", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10526, "upload_time": "2018-10-29T19:47:57", "url": "https://files.pythonhosted.org/packages/d4/3d/533fd701d22036dc33e8300c3ddd6c1d81a2689e259c2f3c86b3f5850a56/evalcache-1.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a8caea1d835071c6c37fa0c956152af8", "sha256": "b8ff3796c3fe5508a8a9732d5b059b568a6e80b68c49c0ef326ca3a5f2ed99c0" }, "downloads": -1, "filename": "evalcache-1.1.1.tar.gz", "has_sig": false, "md5_digest": "a8caea1d835071c6c37fa0c956152af8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7787, "upload_time": "2018-10-29T19:47:59", "url": "https://files.pythonhosted.org/packages/21/ea/c938e68d0655f173ce515549ef251d937106ee8f855676ffb6789be75f9e/evalcache-1.1.1.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "bb70281e5a60fb240bad0e530a0e9735", "sha256": "2483766a8c44967272589fd00faa12be6570beba1fbb6e0ea5a419c36fb8f539" }, "downloads": -1, "filename": "evalcache-1.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bb70281e5a60fb240bad0e530a0e9735", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8323, "upload_time": "2018-10-29T19:56:02", "url": "https://files.pythonhosted.org/packages/dd/43/97ce1d652062ee41f60fced7213db989b5c7f43e343d50c10ca6f213eac6/evalcache-1.1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3efae59e98179f6da5416e1a289c0012", "sha256": "44eb51fd2f648a0db7ffe6f39c5dee58159a016bcf9e243e2bcc13f9c11db3d0" }, "downloads": -1, "filename": "evalcache-1.1.4.tar.gz", "has_sig": false, "md5_digest": "3efae59e98179f6da5416e1a289c0012", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7791, "upload_time": "2018-10-29T19:56:04", "url": "https://files.pythonhosted.org/packages/9d/bf/942a81281d7f2a192a69e1b96d54e473806a1a43ff82658dc26096a6c530/evalcache-1.1.4.tar.gz" } ], "1.10.0": [ { "comment_text": "", "digests": { "md5": "5ae9b6710e55fa9dbe915900cf2b588f", "sha256": "f9a6cc671b59268378a62e3cffbe1390f37b465b6c2efb569af861a6e042a012" }, "downloads": -1, "filename": "evalcache-1.10.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5ae9b6710e55fa9dbe915900cf2b588f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12686, "upload_time": "2019-02-06T04:14:25", "url": "https://files.pythonhosted.org/packages/c6/fb/80808d07a57ffbd677f65dd57ac1fe19751609222e718359ef8f921856bf/evalcache-1.10.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1214782feb309a4278474db4afb27a7f", "sha256": "bc7c433f9f21af04b90d7856c01a39ddb18ac1ca486be768b25390a006d65458" }, "downloads": -1, "filename": "evalcache-1.10.0.tar.gz", "has_sig": false, "md5_digest": "1214782feb309a4278474db4afb27a7f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12046, "upload_time": "2019-02-06T04:14:27", "url": "https://files.pythonhosted.org/packages/66/1f/2f211625d347b298dab78d4df4bf6bfdacb84ad7fd98c6304f8b4cc12983/evalcache-1.10.0.tar.gz" } ], "1.10.1": [ { "comment_text": "", "digests": { "md5": "4b15ac9e6ef6bc8516fa6c8068b13440", "sha256": "91154800185f12b4c2f5561e922a2f11d278f7f8fe9fccd317de29d5ae3e1bc1" }, "downloads": -1, "filename": "evalcache-1.10.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4b15ac9e6ef6bc8516fa6c8068b13440", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12761, "upload_time": "2019-06-08T05:30:12", "url": "https://files.pythonhosted.org/packages/a2/de/59e09a41b05b3758d66c5f93f801ca8defc076c60b708dcc91acf79df619/evalcache-1.10.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "977e64c428965aaff483160458ae0ef8", "sha256": "19d951ce1a84997e35fe0cc77bc9602a4e26aca09ebb278754e0e5b4dbfefa55" }, "downloads": -1, "filename": "evalcache-1.10.1.tar.gz", "has_sig": false, "md5_digest": "977e64c428965aaff483160458ae0ef8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11976, "upload_time": "2019-06-08T05:30:13", "url": "https://files.pythonhosted.org/packages/d7/dd/8d2906635b50091315a3dc7bb33555801c7f1faef4eec7339c90e00de616/evalcache-1.10.1.tar.gz" } ], "1.10.2": [ { "comment_text": "", "digests": { "md5": "603ad29deb01e609a96f789fa042fb94", "sha256": "ab450c8ac256d8652276fd293acbdfc0c5fc29b0160fb85d4820b8cc86fc06e8" }, "downloads": -1, "filename": "evalcache-1.10.2-py3-none-any.whl", "has_sig": false, "md5_digest": "603ad29deb01e609a96f789fa042fb94", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12784, "upload_time": "2019-10-02T20:43:37", "url": "https://files.pythonhosted.org/packages/53/3d/f2dbc798c96b63cf6214f1fdc5b0b7a1913fa97a00a5e495940a7a9fcaad/evalcache-1.10.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9bb13795998725cca82ca29fea7ae59f", "sha256": "6122fe4e6e13d42c8205de8053f99bf9b93d969de9da857362274f2333c7e530" }, "downloads": -1, "filename": "evalcache-1.10.2.tar.gz", "has_sig": false, "md5_digest": "9bb13795998725cca82ca29fea7ae59f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12010, "upload_time": "2019-10-02T20:43:39", "url": "https://files.pythonhosted.org/packages/b2/05/48faf47c10264082273e25ff2fffc866266212eb22b483303c3072ee74f5/evalcache-1.10.2.tar.gz" } ], "1.10.3": [ { "comment_text": "", "digests": { "md5": "6f50711db1147a448cf04cd2f2766ff0", "sha256": "1c348401d99b3f79e0b1b36ffae5ef8875944e21d160acc508ea58c89909ffd9" }, "downloads": -1, "filename": "evalcache-1.10.3-py3-none-any.whl", "has_sig": false, "md5_digest": "6f50711db1147a448cf04cd2f2766ff0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13764, "upload_time": "2019-10-18T12:16:02", "url": "https://files.pythonhosted.org/packages/43/f1/8d4b1ef0629882d8e26ac5c17078a8a3ee1b22f0042c9275ed0d2460c3b1/evalcache-1.10.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8be6394f0adf26b2a1dab51d813707fa", "sha256": "59ebde9387aaad091965eac31af26025748bf177503534f846b6a213bca20b7e" }, "downloads": -1, "filename": "evalcache-1.10.3.tar.gz", "has_sig": false, "md5_digest": "8be6394f0adf26b2a1dab51d813707fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12973, "upload_time": "2019-10-18T12:16:04", "url": "https://files.pythonhosted.org/packages/2e/1c/80b91cbe0e9d1f6b00dea3b362381b27f497d6c36ef7de11a2354fd2247b/evalcache-1.10.3.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "cfa5d0e85b3897009fb33f644aa2b30a", "sha256": "f6bf2776c5352a52052b1f45810d1be8a420fc5e4ba73fa58ba89e5f9955edeb" }, "downloads": -1, "filename": "evalcache-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cfa5d0e85b3897009fb33f644aa2b30a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9458, "upload_time": "2018-10-31T06:24:01", "url": "https://files.pythonhosted.org/packages/e6/97/d1004d57a544a25f8fa9ade38ccb240e770959ed35af0b6aa6c56e98c2de/evalcache-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c717a83341a4aa08ef433ba8d2d6c661", "sha256": "9004ba4af5c36ab2dbed5da80a996046bcc24d12f7167fa76ed9d033d13316ba" }, "downloads": -1, "filename": "evalcache-1.2.0.tar.gz", "has_sig": false, "md5_digest": "c717a83341a4aa08ef433ba8d2d6c661", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8817, "upload_time": "2018-10-31T06:24:02", "url": "https://files.pythonhosted.org/packages/08/30/24c7b13850187b219fc2ad8195ae5c32eb1578b1ba59e55517a4a6765bfa/evalcache-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "e3e423fa8c7e0c11d239e82b232a19fe", "sha256": "76539207c82fd39c8d28f8a324cbe866d87414784f338a3c303048a59b6db1d4" }, "downloads": -1, "filename": "evalcache-1.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e3e423fa8c7e0c11d239e82b232a19fe", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9480, "upload_time": "2018-10-31T08:33:14", "url": "https://files.pythonhosted.org/packages/62/0d/115a65bfc2d2898785bbee84eb5c9919a85af16a141a6cfed9e5deae3730/evalcache-1.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b7778cf8d9df5e956ba1b8dd5e462c03", "sha256": "91bc3a5281d581fc0c0280e011f2801468c61e1bf6898788159c738c98ed7266" }, "downloads": -1, "filename": "evalcache-1.2.1.tar.gz", "has_sig": false, "md5_digest": "b7778cf8d9df5e956ba1b8dd5e462c03", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8838, "upload_time": "2018-10-31T08:33:15", "url": "https://files.pythonhosted.org/packages/da/c4/a719d40f54f1f38500cb4a5761292174d657e6ffb56338dd44264f782347/evalcache-1.2.1.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "2150974b175ba8f9a8efa0a9d02eea8f", "sha256": "bf99618384a228e1dd94d2057903d976ac4e87a856f80cafcf38d68ec9c949b7" }, "downloads": -1, "filename": "evalcache-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2150974b175ba8f9a8efa0a9d02eea8f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9587, "upload_time": "2018-11-03T08:51:10", "url": "https://files.pythonhosted.org/packages/2f/93/23403516895f89d0b8429fda7ae1b6bb38f8c5aa907e6f61075c110b93c5/evalcache-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e7eaf59d7950409d9b2f7c0d354483e6", "sha256": "b61676b4b26d716b3874f23ea7e4239cf78d64a6535121c8643adfe7bf45c56d" }, "downloads": -1, "filename": "evalcache-1.3.0.tar.gz", "has_sig": false, "md5_digest": "e7eaf59d7950409d9b2f7c0d354483e6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8926, "upload_time": "2018-11-03T08:51:12", "url": "https://files.pythonhosted.org/packages/79/9f/82ec2bfb3d0508ac89325c404a610a0d7b37efe0f919bfc535a5a7b82d0a/evalcache-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "68b080c5de774af367f3c4448c9863e9", "sha256": "ee01e7cad9ef5ff4c3cc2196e5e269be03cadd6b5787ad741a819e9e29a10372" }, "downloads": -1, "filename": "evalcache-1.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "68b080c5de774af367f3c4448c9863e9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9632, "upload_time": "2018-11-17T07:44:07", "url": "https://files.pythonhosted.org/packages/33/7c/d0d1810b788e9c1caaadfb5d03fc394e3dce64539edcb25e5577ab65d15f/evalcache-1.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8a7efafeee767c26a1ded209a5d8f77c", "sha256": "f170a062aef881cec5d9d19e839fca577299aa5ce8bafdfc53807dfb841a8b67" }, "downloads": -1, "filename": "evalcache-1.3.1.tar.gz", "has_sig": false, "md5_digest": "8a7efafeee767c26a1ded209a5d8f77c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8986, "upload_time": "2018-11-17T07:44:08", "url": "https://files.pythonhosted.org/packages/f3/90/5eba6d118757120b08eadfa506925e42a12bb6c11726b3e0a8a0ea1003d8/evalcache-1.3.1.tar.gz" } ], "1.4.2": [ { "comment_text": "", "digests": { "md5": "213ab693e8de2ac6403e30cd32922ed9", "sha256": "b66496cf93d2f59c5c13364cae90da06d60f56dc62e0ad9a0bd4e9ad4a1f673a" }, "downloads": -1, "filename": "evalcache-1.4.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "213ab693e8de2ac6403e30cd32922ed9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9659, "upload_time": "2018-11-17T09:20:06", "url": "https://files.pythonhosted.org/packages/57/ce/6cadbbc6fb8dde360da7004d11c7564aec0a3657e3ae7c2db7509c887329/evalcache-1.4.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4adf06202658ba1873218255c9cb0212", "sha256": "f8655390f3a8fa36e0b27ed393597e91638bd9f5cba5ff5384cec3886a2517c6" }, "downloads": -1, "filename": "evalcache-1.4.2.tar.gz", "has_sig": false, "md5_digest": "4adf06202658ba1873218255c9cb0212", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9025, "upload_time": "2018-11-17T09:20:07", "url": "https://files.pythonhosted.org/packages/02/30/83f28eeb66ab0c4f2b41fdfddf132590bb572b49f1e764b73d909f2bb08b/evalcache-1.4.2.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "075f894e486f8f2e7b8c149c181a6207", "sha256": "5f1448321cb506933c935bd4f04334aba590e7e6b4761255dee5612686c7ec01" }, "downloads": -1, "filename": "evalcache-1.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "075f894e486f8f2e7b8c149c181a6207", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10136, "upload_time": "2018-11-21T19:33:00", "url": "https://files.pythonhosted.org/packages/92/ed/c99e29c269216f6ffe8a0b396b003a6e876e37ad7fba3cded840499621da/evalcache-1.5.0-py3-none-any.whl" } ], "1.6.0": [ { "comment_text": "", "digests": { "md5": "f63d3b49f818f91d5d7f11e6ee723ef8", "sha256": "ceb2f9eaaf1015a9c05f17801610ca07ad4e40b6fbf17f78508f9039fbccfd74" }, "downloads": -1, "filename": "evalcache-1.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "f63d3b49f818f91d5d7f11e6ee723ef8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10537, "upload_time": "2019-01-03T18:06:27", "url": "https://files.pythonhosted.org/packages/d8/ec/7bb4d9fb0632b68044ca989ad2436f2a587cafd42fcc0bc70d2dec599472/evalcache-1.6.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1940292df304d557f0bd89c46acf3fcf", "sha256": "55b0f7fa46d65fa75867b6bc13fa26551b116c4b33823e978817cfb09c60c757" }, "downloads": -1, "filename": "evalcache-1.6.0.tar.gz", "has_sig": false, "md5_digest": "1940292df304d557f0bd89c46acf3fcf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10668, "upload_time": "2019-01-03T18:06:29", "url": "https://files.pythonhosted.org/packages/2d/56/c533fa5538c65b1dc1db25cca05ab5774002a47477687240eb7905339287/evalcache-1.6.0.tar.gz" } ], "1.6.1": [ { "comment_text": "", "digests": { "md5": "aad24509932fde6a77cdd7d890cdbc6c", "sha256": "ddacc72c8ce0a12d62a27fefd4035446e9d992c5b205d18e66893b35f4e9050b" }, "downloads": -1, "filename": "evalcache-1.6.1-py3-none-any.whl", "has_sig": false, "md5_digest": "aad24509932fde6a77cdd7d890cdbc6c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10559, "upload_time": "2019-01-03T19:42:58", "url": "https://files.pythonhosted.org/packages/53/e9/d48ca79d1457502fee494e13a7f2fae0a1b9a0768316c903f5cba16f8ca4/evalcache-1.6.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b30a15ef0e9118f4c5903a60e969e471", "sha256": "5f0813c522f470f640fab1ee15056cc223f6c773721a21d3aea9de4d7d95e2b8" }, "downloads": -1, "filename": "evalcache-1.6.1.tar.gz", "has_sig": false, "md5_digest": "b30a15ef0e9118f4c5903a60e969e471", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10687, "upload_time": "2019-01-03T19:43:00", "url": "https://files.pythonhosted.org/packages/cd/02/3e3a9887b1df6979139ace693940ea849b877475321a6e7fdecf0772e662/evalcache-1.6.1.tar.gz" } ], "1.6.2": [ { "comment_text": "", "digests": { "md5": "9324aaa9f1c7614a18aea1ee18f133b7", "sha256": "81eebe26ded9b9a96f4a868527dc3324542ccfed93c482f771b0363962b298a2" }, "downloads": -1, "filename": "evalcache-1.6.2-py3-none-any.whl", "has_sig": false, "md5_digest": "9324aaa9f1c7614a18aea1ee18f133b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10564, "upload_time": "2019-01-03T20:29:29", "url": "https://files.pythonhosted.org/packages/20/2b/0cb616a96edc0268ac246057a75f0776df301a58c2eeacb04038c7ef8417/evalcache-1.6.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0712146cdcbcd555fbd9698cffcc212e", "sha256": "5d9bcfa071aa5b87140ae5a5d70596a3a92eb575337872f605c68e44abeb3616" }, "downloads": -1, "filename": "evalcache-1.6.2.tar.gz", "has_sig": false, "md5_digest": "0712146cdcbcd555fbd9698cffcc212e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10694, "upload_time": "2019-01-03T20:29:31", "url": "https://files.pythonhosted.org/packages/db/dc/016c8e9b56b7fdef12939060951e5f1437c224d0cfff811a4c8b67a9d05d/evalcache-1.6.2.tar.gz" } ], "1.6.3": [ { "comment_text": "", "digests": { "md5": "790239efa59a832ed76e572f1fcc5c72", "sha256": "100af2be7029403f2c48bbe7fa8b8e79b36ea255d63b77d80193da0b17cb9b66" }, "downloads": -1, "filename": "evalcache-1.6.3-py3-none-any.whl", "has_sig": false, "md5_digest": "790239efa59a832ed76e572f1fcc5c72", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10712, "upload_time": "2019-01-03T21:08:25", "url": "https://files.pythonhosted.org/packages/16/c8/979454d1256165886a65d3b44adbb359fda5f59ab411d1d52c1366537c9f/evalcache-1.6.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d5e492a2f536b65f08aee604477ce777", "sha256": "1d3f7c1917918e24a637682394a94c8f446fd64d258e02274f4b3337addce212" }, "downloads": -1, "filename": "evalcache-1.6.3.tar.gz", "has_sig": false, "md5_digest": "d5e492a2f536b65f08aee604477ce777", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10705, "upload_time": "2019-01-03T21:08:26", "url": "https://files.pythonhosted.org/packages/f1/44/a6de89d6f23864f0302f0d1e41970469465019edd29d6c14fbd021531ad6/evalcache-1.6.3.tar.gz" } ], "1.7.0": [ { "comment_text": "", "digests": { "md5": "e8415fdb7f608df1561503185668fcbe", "sha256": "5e7ecb75e055c6a33e70103145cf460a404fd2415dde1197ec58452e9d918d46" }, "downloads": -1, "filename": "evalcache-1.7.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e8415fdb7f608df1561503185668fcbe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12262, "upload_time": "2019-01-04T21:38:59", "url": "https://files.pythonhosted.org/packages/6e/88/102cba13e0cb5669c9e23b58076d7292c4ae8833b973e1b5d5f4b4c27fb4/evalcache-1.7.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6b81a48ab81e6dee8f989f5be8c62302", "sha256": "e8c445d70095d9496806b2f8361ea52d90c592f3dbb40f490aba51186c4a2239" }, "downloads": -1, "filename": "evalcache-1.7.0.tar.gz", "has_sig": false, "md5_digest": "6b81a48ab81e6dee8f989f5be8c62302", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11930, "upload_time": "2019-01-04T21:39:01", "url": "https://files.pythonhosted.org/packages/24/b0/f11180528d3b37951c3e81bfb2b43c20129ca4fef04e230d42bdef17977b/evalcache-1.7.0.tar.gz" } ], "1.8.0": [ { "comment_text": "", "digests": { "md5": "ab32a9a1be414c1c709abc5b1f7408de", "sha256": "9073c5058b9fef4b7394b1c50650aec715c6f1fa9cf8227500c39dbf7ec30f1d" }, "downloads": -1, "filename": "evalcache-1.8.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ab32a9a1be414c1c709abc5b1f7408de", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12262, "upload_time": "2019-01-05T17:17:45", "url": "https://files.pythonhosted.org/packages/3f/13/1054bb849940ab5768393ea57bb83d1a8eaa08d339c610f9a2a160fbd011/evalcache-1.8.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c0f08a1dc8738871e824eb0e5dac2cbf", "sha256": "d7211608e661b2aeec126069ca3d87d68f097974bd4159aeaa6fa904d7d7350e" }, "downloads": -1, "filename": "evalcache-1.8.0.tar.gz", "has_sig": false, "md5_digest": "c0f08a1dc8738871e824eb0e5dac2cbf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11929, "upload_time": "2019-01-05T17:17:46", "url": "https://files.pythonhosted.org/packages/2c/9d/6d7463ac79be3585d5fa29b07664624a3565df2b48b038c1f77d71517fae/evalcache-1.8.0.tar.gz" } ], "1.9.0": [ { "comment_text": "", "digests": { "md5": "9492c1e2e09bb7dcd15bf9458302720f", "sha256": "d7eceef59926a5221e1a89fc7012e4e5649180321ec5559bde57af5d23a315b5" }, "downloads": -1, "filename": "evalcache-1.9.0-py3-none-any.whl", "has_sig": false, "md5_digest": "9492c1e2e09bb7dcd15bf9458302720f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12403, "upload_time": "2019-01-15T09:13:45", "url": "https://files.pythonhosted.org/packages/a1/46/18d15c21c7c610d627c9023b6ff9f237b15348dc9777d3ad5ded91bcc7dd/evalcache-1.9.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1e30484b9ec8fab15a484d35c9d72682", "sha256": "7212b22c8fbf0b0432e737d6f420da9098ec32fe920e95816dae390f52f77fc3" }, "downloads": -1, "filename": "evalcache-1.9.0.tar.gz", "has_sig": false, "md5_digest": "1e30484b9ec8fab15a484d35c9d72682", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11926, "upload_time": "2019-01-15T09:13:46", "url": "https://files.pythonhosted.org/packages/41/64/9770c887dec31ea4f1ffe452fa73d6d8665b3e82628f348944383f95a4fa/evalcache-1.9.0.tar.gz" } ], "1.9.1": [ { "comment_text": "", "digests": { "md5": "398319a68db1b30024a62bdd3d77a5bb", "sha256": "bbb7a99ece36ba198ee2901fb42693bd84a139cc7760fab74089e701e1ca00e8" }, "downloads": -1, "filename": "evalcache-1.9.1-py3-none-any.whl", "has_sig": false, "md5_digest": "398319a68db1b30024a62bdd3d77a5bb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12381, "upload_time": "2019-02-03T12:42:33", "url": "https://files.pythonhosted.org/packages/f7/e4/2981f612d93d38a01baf64a53b22afe44fb058efe953aea701e5ac16d59f/evalcache-1.9.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6fa5af4f65a4f07439396bd141299e4a", "sha256": "c87571ed5cee655fa9bbce20b2d34fceb38e2d785440361d5f3f3191d96d6298" }, "downloads": -1, "filename": "evalcache-1.9.1.tar.gz", "has_sig": false, "md5_digest": "6fa5af4f65a4f07439396bd141299e4a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11945, "upload_time": "2019-02-03T12:42:35", "url": "https://files.pythonhosted.org/packages/9a/54/41bd98ec1d18175e4eb7edc272f1cc258741bb1a1eab5625dbb4f70e7313/evalcache-1.9.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6f50711db1147a448cf04cd2f2766ff0", "sha256": "1c348401d99b3f79e0b1b36ffae5ef8875944e21d160acc508ea58c89909ffd9" }, "downloads": -1, "filename": "evalcache-1.10.3-py3-none-any.whl", "has_sig": false, "md5_digest": "6f50711db1147a448cf04cd2f2766ff0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13764, "upload_time": "2019-10-18T12:16:02", "url": "https://files.pythonhosted.org/packages/43/f1/8d4b1ef0629882d8e26ac5c17078a8a3ee1b22f0042c9275ed0d2460c3b1/evalcache-1.10.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8be6394f0adf26b2a1dab51d813707fa", "sha256": "59ebde9387aaad091965eac31af26025748bf177503534f846b6a213bca20b7e" }, "downloads": -1, "filename": "evalcache-1.10.3.tar.gz", "has_sig": false, "md5_digest": "8be6394f0adf26b2a1dab51d813707fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12973, "upload_time": "2019-10-18T12:16:04", "url": "https://files.pythonhosted.org/packages/2e/1c/80b91cbe0e9d1f6b00dea3b362381b27f497d6c36ef7de11a2354fd2247b/evalcache-1.10.3.tar.gz" } ] }