{ "info": { "author": "Heungsub Lee", "author_email": "sub@subl.ee", "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", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Software Development" ], "description": "Lets\n~~~~\n\nUtilities for gevent_.\n\n.. _gevent: http://gevent.org/\n\nThere're several ``gevent.Greenlet`` subclasses:\n\n* ``Processlet`` -- maximizing multi-core use in gevent environment.\n* ``Transparentlet`` -- keeping exc_info rather than printing exception.\n\nAnd etc.:\n\n* ``ObjectPool`` -- pooling objects. (e.g. connection pool)\n\nSee the next examples.\n\nExamples\n========\n\nProcesslet for bcrypt\n---------------------\n\nbcrypt_ is a library to hash password. That the hashing is very heavy\nCPU-bound task. You can't guarantee concurrency with only gevent. Use\n``Processlet`` instead:\n\n.. _bcrypt: https://github.com/pyca/bcrypt/\n\n.. sourcecode:: python\n\n import bcrypt\n import gevent\n from lets import Processlet\n\n # bcrypt.hashpw is very heavy cpu-bound task. it can spend a few seconds.\n def hash_password(password, salt=bcrypt.gensalt()):\n return bcrypt.hashpw(str(password), salt)\n\n def tictoc(delay=0.1):\n while True:\n print '.'\n gevent.sleep(delay)\n\n passwords = ['alfa', 'bravo', 'charlie', 'delta', 'echo', 'foxtrot',\n 'golf', 'hotel', 'india', 'juliett', 'kilo', 'lima', 'mike',\n 'november', 'oscar', 'papa', 'quebec', 'romeo', 'sierra',\n 'tango', 'uniform', 'victor', 'whiskey', 'xray', 'yankee',\n 'zulu']\n\n # start tictoc\n gevent.spawn(tictoc)\n\n # Greenlet, tictoc pauses for a few seconds\n greenlet = gevent.spawn(hash_password, passwords[0])\n password_hash_0 = greenlet.get()\n\n # Processlet, tictoc never pauses\n processlet_1 = Processlet.spawn(hash_password, passwords[1])\n processlet_2 = Processlet.spawn(hash_password, passwords[2])\n password_hash_1 = processlet_1.get()\n password_hash_2 = processlet_2.get()\n\nYou can also limit the number of child processes with ``ProcessPool``:\n\n.. sourcecode:: python\n\n import multiprocessing\n from lets import ProcessPool\n\n pool_size = max(multiprocessing.cpu_count() - 1, 1)\n pool = ProcessPool(pool_size)\n password_hashes = pool.map(hash_password, passwords)\n\nMemcached connection pool\n-------------------------\n\nGreenlet-safe connection pool can be easily implemented by ``ObjectPool``:\n\n.. sourcecode:: python\n\n import memcache\n from lets import ObjectPool\n\n mc_pool = ObjectPool(10, memcache.Client, [('localhost', 11211)])\n\n def save(key, val):\n with mc_pool.reserve() as mc:\n mc.set(key, val)\n\n for x, password_hash in enumerate(password_hashes):\n gevent.spawn(save, 'password_hashes[%d]' % x, password_hash)\n\n gevent.wait()\n\nLinks\n=====\n\n* `GitHub repository `_\n* `development version\n `_", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/sublee/lets", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "lets", "package_url": "https://pypi.org/project/lets/", "platform": "any", "project_url": "https://pypi.org/project/lets/", "project_urls": { "Homepage": "https://github.com/sublee/lets" }, "release_url": "https://pypi.org/project/lets/0.1.6/", "requires_dist": null, "requires_python": "", "summary": "Several gevent utilities", "version": "0.1.6" }, "last_serial": 3535762, "releases": { "0.0.0": [], "0.0.1": [ { "comment_text": "", "digests": { "md5": "ef1379107e6c9f0bed3abef7f1d50005", "sha256": "d396cfb8456db2990c5478f3138e99d7f3ce5a39ef3886f198da69d0bfbfe1ac" }, "downloads": -1, "filename": "lets-0.0.1.tar.gz", "has_sig": false, "md5_digest": "ef1379107e6c9f0bed3abef7f1d50005", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2700, "upload_time": "2013-10-07T16:01:54", "url": "https://files.pythonhosted.org/packages/7d/54/0bba4f75af64f197b4c33017c9f03a35ca930097282a9c8432d65e9c9e44/lets-0.0.1.tar.gz" } ], "0.0.10": [ { "comment_text": "", "digests": { "md5": "3f01356a69061bacddccb8b5596b7d26", "sha256": "01efe2890725052cdd20ff1faf6ff9faa0ffae9778c016c6ea4841853c0fd635" }, "downloads": -1, "filename": "lets-0.0.10.tar.gz", "has_sig": false, "md5_digest": "3f01356a69061bacddccb8b5596b7d26", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6865, "upload_time": "2015-07-16T04:36:30", "url": "https://files.pythonhosted.org/packages/81/56/d09afbebc9d978447358e12c3288f03226617e677dc89aa618edeb970419/lets-0.0.10.tar.gz" } ], "0.0.11": [ { "comment_text": "", "digests": { "md5": "4aaed629f8f8a9c7c90865c4e6109c94", "sha256": "0c37c90b10fecdb10fc81c2c9665ce4f27d69022f6ba0d6f420479a45c8e19b2" }, "downloads": -1, "filename": "lets-0.0.11.tar.gz", "has_sig": false, "md5_digest": "4aaed629f8f8a9c7c90865c4e6109c94", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6882, "upload_time": "2015-07-24T01:58:08", "url": "https://files.pythonhosted.org/packages/70/42/5207df861d1093da6b554f2cd1a563282f9ea86b63c01c71fec3f30d98ea/lets-0.0.11.tar.gz" } ], "0.0.12": [ { "comment_text": "", "digests": { "md5": "b20fe0a8e8b6caa13a4a3d273aa58aa9", "sha256": "6249bf29aba1bdbf5243b2f7504171c5ecda60a94cd0a8005a736b306539c157" }, "downloads": -1, "filename": "lets-0.0.12.tar.gz", "has_sig": false, "md5_digest": "b20fe0a8e8b6caa13a4a3d273aa58aa9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6966, "upload_time": "2015-10-27T11:49:03", "url": "https://files.pythonhosted.org/packages/06/bc/e9c30ba34455fcf3c940dbe98e3b02d7f19d58aa711576e26a10965d4ac6/lets-0.0.12.tar.gz" } ], "0.0.13": [ { "comment_text": "", "digests": { "md5": "108db68ccf380c12ebdb41508797db40", "sha256": "e9cd8b389b62e83d599d008ee568820becfaba231ef22d22ab0548636618ce6e" }, "downloads": -1, "filename": "lets-0.0.13.tar.gz", "has_sig": false, "md5_digest": "108db68ccf380c12ebdb41508797db40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7291, "upload_time": "2015-11-23T07:02:51", "url": "https://files.pythonhosted.org/packages/46/d2/80d2e30d6e5d64064a6187c6eab84693854d3f05c38c1b2891f4dc6bc28b/lets-0.0.13.tar.gz" } ], "0.0.14": [ { "comment_text": "", "digests": { "md5": "836d49f94f75abf4e1b120ed0a8dded6", "sha256": "a3b82fab03c648c00662538da7e5f5f75f3d6f3069e47b715341ab0c31391d1d" }, "downloads": -1, "filename": "lets-0.0.14.tar.gz", "has_sig": false, "md5_digest": "836d49f94f75abf4e1b120ed0a8dded6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7813, "upload_time": "2015-12-31T05:08:16", "url": "https://files.pythonhosted.org/packages/bf/89/c72035375941ae0d623db638a332def0a24b76edc1f5e9c36d7be4b8ac8d/lets-0.0.14.tar.gz" } ], "0.0.15": [ { "comment_text": "", "digests": { "md5": "1e54b7bf82661eb3f3119b056c3647db", "sha256": "4553fea8ce27bef435bdb45ee43ab09fdbf84aaa3399db3549951d9d62d49deb" }, "downloads": -1, "filename": "lets-0.0.15.tar.gz", "has_sig": false, "md5_digest": "1e54b7bf82661eb3f3119b056c3647db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8113, "upload_time": "2015-12-31T14:20:15", "url": "https://files.pythonhosted.org/packages/c5/c2/7e78c99a2704d07daddd1dd391e2abc9d23a1955b0338bdc7cbed93c2a68/lets-0.0.15.tar.gz" } ], "0.0.16": [ { "comment_text": "", "digests": { "md5": "61f234566a6a1a29de1a8b905e2fafb3", "sha256": "bbfa1b12af411d932747a048fd9878f39380c55aadd2f4ea510c41f5d1bee9f4" }, "downloads": -1, "filename": "lets-0.0.16.tar.gz", "has_sig": false, "md5_digest": "61f234566a6a1a29de1a8b905e2fafb3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8657, "upload_time": "2016-01-04T01:36:45", "url": "https://files.pythonhosted.org/packages/2a/0d/2b80671ab45fc4ad6dda962772505d77cd2fe9e64c700c29796851e4d206/lets-0.0.16.tar.gz" } ], "0.0.17": [ { "comment_text": "", "digests": { "md5": "3f96f7b7b6fbbc44525cbeab31ed59d1", "sha256": "021566032828be297430b74116bb413ac3d286dd2170c61fc6a889aaa4eaa29f" }, "downloads": -1, "filename": "lets-0.0.17.tar.gz", "has_sig": false, "md5_digest": "3f96f7b7b6fbbc44525cbeab31ed59d1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9084, "upload_time": "2016-01-04T13:11:03", "url": "https://files.pythonhosted.org/packages/9a/55/4ffd6799305946ddff7c96ea49b8c3f847816fc20e6a3e2d513f5dae3c76/lets-0.0.17.tar.gz" } ], "0.0.18": [ { "comment_text": "", "digests": { "md5": "0ff9b60d43420e443af8b4d8da4b7eb3", "sha256": "45b0624e7dd432a7423155a58f426c99c9ef613ed3e25486f215d948d2db624b" }, "downloads": -1, "filename": "lets-0.0.18.tar.gz", "has_sig": false, "md5_digest": "0ff9b60d43420e443af8b4d8da4b7eb3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9241, "upload_time": "2016-02-01T07:26:38", "url": "https://files.pythonhosted.org/packages/e5/9c/88b1d2e01faf697a139346d61e20674d3c36beb9d928dbaa71b0074cf4d2/lets-0.0.18.tar.gz" } ], "0.0.19": [ { "comment_text": "", "digests": { "md5": "d81b5dc90e848ee694c6b4dc6653e5b3", "sha256": "060ab0205e9e110b2fe15989a1b6f5822d8f3cea81a232d8a3b41a51767a0c30" }, "downloads": -1, "filename": "lets-0.0.19.tar.gz", "has_sig": false, "md5_digest": "d81b5dc90e848ee694c6b4dc6653e5b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9649, "upload_time": "2016-03-04T06:22:43", "url": "https://files.pythonhosted.org/packages/f6/3e/5400471fcdf16d55ef614a25bb8aa6e7a52326e9a7b1953fb808f4d784fa/lets-0.0.19.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "b7e6ec38b731471ac3ac3e41b328b07a", "sha256": "939900c986b8bb1c48e1fbacfef7cb92116126da952ae434c1671362a9a74697" }, "downloads": -1, "filename": "lets-0.0.2.tar.gz", "has_sig": false, "md5_digest": "b7e6ec38b731471ac3ac3e41b328b07a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3041, "upload_time": "2013-10-08T16:06:40", "url": "https://files.pythonhosted.org/packages/d1/34/4ff1afd6408868a5d7438612780dd9525bf9c47206ef733f1668cffa7834/lets-0.0.2.tar.gz" } ], "0.0.20": [ { "comment_text": "", "digests": { "md5": "a5d8a03e3e13dcd0ed4d08cf46c26a24", "sha256": "556779fe88f5f3fcb9afebe3592009a7351ee9c8e0291595bf73eec93786479a" }, "downloads": -1, "filename": "lets-0.0.20.tar.gz", "has_sig": false, "md5_digest": "a5d8a03e3e13dcd0ed4d08cf46c26a24", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9560, "upload_time": "2016-03-04T06:56:37", "url": "https://files.pythonhosted.org/packages/07/42/b2539abd51e9aa1fdc666548b4391921e9548d6da5731a412476bf27628b/lets-0.0.20.tar.gz" } ], "0.0.21": [ { "comment_text": "", "digests": { "md5": "d092c57e719753e32964ab5d8612c0ce", "sha256": "407f9e88293640e6863eeffc898df8acf594ec47450009ec7e3fcf064e676235" }, "downloads": -1, "filename": "lets-0.0.21.tar.gz", "has_sig": false, "md5_digest": "d092c57e719753e32964ab5d8612c0ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9690, "upload_time": "2016-05-10T10:23:51", "url": "https://files.pythonhosted.org/packages/89/70/ec0b856cb256cdf0259012a94c1b0bee808872748ce7cc7ed94235958829/lets-0.0.21.tar.gz" } ], "0.0.22": [ { "comment_text": "", "digests": { "md5": "8451a7daaf587d61370c4ed26c7cd442", "sha256": "7065a0aa79a5fe20600c14695174a28707cebcefa273a50966684141b11248cc" }, "downloads": -1, "filename": "lets-0.0.22.tar.gz", "has_sig": false, "md5_digest": "8451a7daaf587d61370c4ed26c7cd442", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9706, "upload_time": "2016-05-12T04:21:24", "url": "https://files.pythonhosted.org/packages/e5/ec/3125c9468fa70a17ddf5a0e856c1d92b18bea41d564c10410c94c3a0abaa/lets-0.0.22.tar.gz" } ], "0.0.23": [ { "comment_text": "", "digests": { "md5": "5f411038a359764dea1d5151c1445660", "sha256": "121c440b2588b73056fd6df6ad1313cd7a7fce2101c5ed54522a5dcc2c83b3a6" }, "downloads": -1, "filename": "lets-0.0.23.tar.gz", "has_sig": false, "md5_digest": "5f411038a359764dea1d5151c1445660", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9856, "upload_time": "2016-05-13T08:28:44", "url": "https://files.pythonhosted.org/packages/94/e8/cb7c1068a9d6f5505945b4c8f769d96cf8620105b0f88ffded467ea7df90/lets-0.0.23.tar.gz" } ], "0.0.24": [ { "comment_text": "", "digests": { "md5": "50af6151b9dbb992831077e92cf6f525", "sha256": "2993ed1caf6e1cc657f063c0dc67f617f1174a9657cce8b9aa090f738a187951" }, "downloads": -1, "filename": "lets-0.0.24.tar.gz", "has_sig": false, "md5_digest": "50af6151b9dbb992831077e92cf6f525", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9880, "upload_time": "2016-05-13T09:51:48", "url": "https://files.pythonhosted.org/packages/bb/81/e063d9a4d29f0505b18c5469d3a6db3c232b40d3d4336d00fd104f0d60e0/lets-0.0.24.tar.gz" } ], "0.0.25": [ { "comment_text": "", "digests": { "md5": "e803e16379e2a14ca7544dcd3c0a5ec2", "sha256": "e4e700f54aec0145e58d46ae67eaf6b46a7afb835943e15b560108a72d030c3b" }, "downloads": -1, "filename": "lets-0.0.25.tar.gz", "has_sig": false, "md5_digest": "e803e16379e2a14ca7544dcd3c0a5ec2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10528, "upload_time": "2016-09-07T13:10:14", "url": "https://files.pythonhosted.org/packages/00/ff/73910c78811ba3c04baf79a4dab9d5d83ef06583145f7a4e16319cba83da/lets-0.0.25.tar.gz" } ], "0.0.26": [ { "comment_text": "", "digests": { "md5": "cf921be8fb76cafc6fda965c94735516", "sha256": "c56446dc29ad4120d3e3944c258504b4cb43d642e70b644ef0db867eab7553b7" }, "downloads": -1, "filename": "lets-0.0.26.tar.gz", "has_sig": false, "md5_digest": "cf921be8fb76cafc6fda965c94735516", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10598, "upload_time": "2016-09-08T12:49:47", "url": "https://files.pythonhosted.org/packages/c3/2f/006b3304153c58e43a2f3aa4ffdc05e6a3e562ba5be77bb620095d16711d/lets-0.0.26.tar.gz" } ], "0.0.27": [ { "comment_text": "", "digests": { "md5": "96e8c63440366498b1eee0e8d0c0bfdb", "sha256": "997f038acc8db2ad2f41dea388c6e3f4eb5bf64845c456e9bd87f90c30571636" }, "downloads": -1, "filename": "lets-0.0.27.tar.gz", "has_sig": false, "md5_digest": "96e8c63440366498b1eee0e8d0c0bfdb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10843, "upload_time": "2016-09-13T01:53:39", "url": "https://files.pythonhosted.org/packages/fd/88/a94fb9a1389ce8cee54460d84bbe8f60696ca35d9a56ea08a30694434c88/lets-0.0.27.tar.gz" } ], "0.0.28": [ { "comment_text": "", "digests": { "md5": "af68fcb828f76d53345ae3377f57250f", "sha256": "9cb6a7dcbf3c41c26bc12e674fbfd8fd047353e635e4e230b7f028775572eeda" }, "downloads": -1, "filename": "lets-0.0.28.tar.gz", "has_sig": false, "md5_digest": "af68fcb828f76d53345ae3377f57250f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10860, "upload_time": "2016-11-10T15:25:13", "url": "https://files.pythonhosted.org/packages/79/b8/4740a5461cac8d178c375e6639ee89a1953e6828e8d5b679b8feece985d7/lets-0.0.28.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "cb7992005ad6b70297ac4676e65c21b7", "sha256": "78d51705c9011beb6d7d6a6cd649fdc94307c1866a6ce82fcea09129859998ad" }, "downloads": -1, "filename": "lets-0.0.3.tar.gz", "has_sig": false, "md5_digest": "cb7992005ad6b70297ac4676e65c21b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3254, "upload_time": "2013-10-10T15:19:29", "url": "https://files.pythonhosted.org/packages/10/ca/cde546a5c014e1bb34361a013547c497200b3ae905593acaba0535d5e002/lets-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "036a79c24e645081da90127718347d05", "sha256": "e29012f5b945992e5021b82b5ae92065ed4dac466795e7388242585e2b1f0689" }, "downloads": -1, "filename": "lets-0.0.4.tar.gz", "has_sig": false, "md5_digest": "036a79c24e645081da90127718347d05", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3242, "upload_time": "2013-10-10T23:30:21", "url": "https://files.pythonhosted.org/packages/e5/41/177dc98695295e6fffde25695f4a53f80badd5467337e42b58239159d093/lets-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "d7d538692016b1369f15f210da8a8f60", "sha256": "5e5bd47bcc4ccf3bc6cc5720de23b067152e618d19069ab65a139f9c0e175b42" }, "downloads": -1, "filename": "lets-0.0.5.tar.gz", "has_sig": false, "md5_digest": "d7d538692016b1369f15f210da8a8f60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4062, "upload_time": "2013-10-15T01:39:50", "url": "https://files.pythonhosted.org/packages/40/53/681ae71d8db027af5d34c9d9adc7688fe3ed248e223422699afdd1a6df42/lets-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "472d6b983f847cb85e75f29603a432b4", "sha256": "714cdaf89d09d6747d0dda27390eb748085afdffe197a4e6cb59dd43fc7aa6a4" }, "downloads": -1, "filename": "lets-0.0.6.tar.gz", "has_sig": false, "md5_digest": "472d6b983f847cb85e75f29603a432b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4162, "upload_time": "2013-10-15T12:26:22", "url": "https://files.pythonhosted.org/packages/c7/cd/9ca23515beb82c06860e4e6e45d8efb1461f033f2fc8d05dbec81db23c97/lets-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "4e346d6538592560597f7adb6afc667e", "sha256": "05e585b51d0850616fcda731998b58cd1b1db6aafbe054f5d238eb4625721395" }, "downloads": -1, "filename": "lets-0.0.7.tar.gz", "has_sig": false, "md5_digest": "4e346d6538592560597f7adb6afc667e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4738, "upload_time": "2013-10-15T16:48:03", "url": "https://files.pythonhosted.org/packages/a8/68/eb29049197e5fcfd8cdb25b80295e51c91745099071f0fdb0345da295e1f/lets-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "7f537a0cc4ad35e8ccb3f9d90e704d64", "sha256": "1267860d9ad5e98aaf1197d3b2a773338184a8bc77ad7f2d322f15e844e86008" }, "downloads": -1, "filename": "lets-0.0.8.tar.gz", "has_sig": false, "md5_digest": "7f537a0cc4ad35e8ccb3f9d90e704d64", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4750, "upload_time": "2013-10-15T17:40:19", "url": "https://files.pythonhosted.org/packages/90/a9/9cd59fbe962053ef97482f13802e0a0edcde20a8e615c599f77cd9f105dd/lets-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "4903978b096aa6eb252af838c049e926", "sha256": "c0d16bff56d15d7306b420cc42233d4c90dc770158ddd695923bfbf6b510e23e" }, "downloads": -1, "filename": "lets-0.0.9.tar.gz", "has_sig": false, "md5_digest": "4903978b096aa6eb252af838c049e926", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6140, "upload_time": "2013-10-16T15:56:18", "url": "https://files.pythonhosted.org/packages/49/11/611ae16a1913cb5b498998007770bc5249dbd39e9a89603c3ad284fc57b5/lets-0.0.9.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "8bd26a7ce81686649f01a12d4e408608", "sha256": "41eae1be545da375a1f74d0809fb43219aa5fee92ad7edb703f8ddf18d775854" }, "downloads": -1, "filename": "lets-0.1.0.tar.gz", "has_sig": false, "md5_digest": "8bd26a7ce81686649f01a12d4e408608", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12370, "upload_time": "2017-03-29T12:04:35", "url": "https://files.pythonhosted.org/packages/16/06/ef7bde309580dc0a8b0c63f9f55069f860c626b3ca0c28bcdcc8b0992408/lets-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "f305a61494a9d691114fe6b44c9116ee", "sha256": "abb92eb5108900aff38136bd30918658465446003405843ca70a4a8e40a4c8f6" }, "downloads": -1, "filename": "lets-0.1.1.tar.gz", "has_sig": false, "md5_digest": "f305a61494a9d691114fe6b44c9116ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12119, "upload_time": "2017-04-04T01:10:49", "url": "https://files.pythonhosted.org/packages/77/e8/000cea68b4584905e58c390b6c69243aba76c085218d308e8a9deb3cd34b/lets-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "62aa4cec36305c14503d263457e72abf", "sha256": "3ae5cba6085417028e9dd95cda73a090fb3109413445b1f1ec858279b109b1d8" }, "downloads": -1, "filename": "lets-0.1.2.tar.gz", "has_sig": false, "md5_digest": "62aa4cec36305c14503d263457e72abf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12478, "upload_time": "2017-06-05T06:16:56", "url": "https://files.pythonhosted.org/packages/45/3f/d20f92c9110f0466edb87d68a4bc717772b5fccef8dc10214a83dec22df7/lets-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "22c15fe5023bbf003747aab351a6b040", "sha256": "cf1c6cd2f1b94445a7d82217b2b8190300650794f86af49a3ba75ef8450835b9" }, "downloads": -1, "filename": "lets-0.1.3.tar.gz", "has_sig": false, "md5_digest": "22c15fe5023bbf003747aab351a6b040", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12441, "upload_time": "2017-06-23T12:06:24", "url": "https://files.pythonhosted.org/packages/e6/e4/136bb05d2374c9d74419524bde51758989b13b6a660ff79ab05c0df0c9ae/lets-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "b3d10d9122521625acdf45f9e495ea44", "sha256": "40054bf9b5f2e34e10c9c2a6d90fbb3e46fe791a3c4a960bad11e480f8766fec" }, "downloads": -1, "filename": "lets-0.1.4.tar.gz", "has_sig": false, "md5_digest": "b3d10d9122521625acdf45f9e495ea44", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12649, "upload_time": "2018-01-01T15:50:27", "url": "https://files.pythonhosted.org/packages/73/b6/40e709d88af5ccac40800a96a946fd7681901942c9074c0518cc41ce1bb9/lets-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "124807918d32b9c811ec8a7659f3c7b6", "sha256": "de615a7a3f6349e3b5b0165d770b86d19ce2bef11e3db5a7bce7b8f4fe0d180d" }, "downloads": -1, "filename": "lets-0.1.5.tar.gz", "has_sig": false, "md5_digest": "124807918d32b9c811ec8a7659f3c7b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13052, "upload_time": "2018-01-02T10:57:51", "url": "https://files.pythonhosted.org/packages/ce/2a/f486beab6e2a39c2a6237920745fff48f0add2b1b836ea58e530825df378/lets-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "e93dfc46adc9537bda1318b53e2c0860", "sha256": "eb8eb75e2c1360dea8d2edab41722107b266738a69f8d3d067204b3e4378657e" }, "downloads": -1, "filename": "lets-0.1.6.tar.gz", "has_sig": false, "md5_digest": "e93dfc46adc9537bda1318b53e2c0860", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12893, "upload_time": "2018-01-30T17:54:07", "url": "https://files.pythonhosted.org/packages/92/6a/4a60459bbda076ee1d032b5760ca94d1d6055e856bdd886e06faba023cb6/lets-0.1.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e93dfc46adc9537bda1318b53e2c0860", "sha256": "eb8eb75e2c1360dea8d2edab41722107b266738a69f8d3d067204b3e4378657e" }, "downloads": -1, "filename": "lets-0.1.6.tar.gz", "has_sig": false, "md5_digest": "e93dfc46adc9537bda1318b53e2c0860", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12893, "upload_time": "2018-01-30T17:54:07", "url": "https://files.pythonhosted.org/packages/92/6a/4a60459bbda076ee1d032b5760ca94d1d6055e856bdd886e06faba023cb6/lets-0.1.6.tar.gz" } ] }