{ "info": { "author": "Justin Patrin", "author_email": "papercrane@reversefold.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# reversefold.util\n\n[Available on pypi](https://pypi.python.org/pypi/reversefold.util)\n\nThis is a collection of various command-line scripts and libraries which have come in useful over the years I've worked with Python.\n\n\n## log.py\n\nCaptures stdout of a process and enables transformation the output (such as adding a timestamp to each line) and is compatible with external logrotate through `WatchedFileHandler`.\n\n## daemonize.py\n\nUseful for daemonizing another process which either does not daemonize itself or for which you want to capture stdout and stderr to log files. Uses `WatchedFileHandler` for output to log files to allow for external log rotation.\n\n## stream.py\n\nSimilar to `tail -f` but with some more options for type of buffering and supports streaming the entire current contents of the file before then following the tail of the file.\n\n## reversefold.util\n\n### rate_limit_gen\n\nA generator wrapper which rate-limits another generator. If the rate is exceeded, further values received within the `period` are discarded. Useful, for example, for making sure that the number of lines you display from a log file you're following don't cause your terminal to block while displaying a huge amount of output.\n\n### chunked\n\nBreaks up an iterable into equal-sized chunks.\n\n## reversefold.util.ssh\n\n### SSHHost\n\nA programmatic interface to ssh. Allows easily running a single command or a shell script or interactively sending input and displaying output. Originally written as a drop-in monkeypatch for fabric's use of paramiko.\n\n## reversefold.util.multiproc\n\n### run_subproc\n\nTakes a subprocess as input and sets up threads for handling and displaying stdout and stderr from the process. Defaults to blocking until the process is finished but also supports immediately returning and including the threads in the return value. Also defaults to capturing the stdout and stderr and returning them as lists of lines.\n\n## reversefold.util.proc\n\nProvides context managers to ensure that a process is sent a TERM or KILL signal (or both) to a process when the context block exits. Can optionally find child processes recursively and send the same signal(s) to them. Also provides functions for the same functionality.\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/reversefold/util", "keywords": "", "license": "MIT", "maintainer": "Justin Patrin", "maintainer_email": "papercrane@reversefold.com", "name": "reversefold.util", "package_url": "https://pypi.org/project/reversefold.util/", "platform": "", "project_url": "https://pypi.org/project/reversefold.util/", "project_urls": { "Homepage": "https://github.com/reversefold/util", "Repository": "https://github.com/reversefold/util.git" }, "release_url": "https://pypi.org/project/reversefold.util/3.5.1/", "requires_dist": [ "colorama (>=0.4.1,<0.5.0)", "docopt (>=0.6.2,<0.7.0)", "fasteners (>=0.15.0,<0.16.0)", "python-daemon (>=2.1,<3.0)", "psutil (>=5.6,<6.0)", "watchdog (>=0.9.0,<0.10.0)" ], "requires_python": ">3.4,<4", "summary": "SSH, Proc, Multiproc, tail.py, log.py, stream.py, daemonize.py, etc.", "version": "3.5.1" }, "last_serial": 5941839, "releases": { "1.0.2": [ { "comment_text": "", "digests": { "md5": "8e547fe701469a8e2b2d4bf2d0ac1569", "sha256": "d9893d148e0e3c0a4211735c97fc52bd776935dd149e6f197aafd0fb2c766474" }, "downloads": -1, "filename": "reversefold.util-1.0.2.tar.gz", "has_sig": false, "md5_digest": "8e547fe701469a8e2b2d4bf2d0ac1569", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5043, "upload_time": "2015-02-22T07:01:10", "url": "https://files.pythonhosted.org/packages/49/5b/393f4e91e5ae15176d17ce83f4122e9182de2f8539e1e2825fd0c8e6ea3c/reversefold.util-1.0.2.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "e684e169cb239209ebf71a8d64fbbb5c", "sha256": "1dd876991281586a2715b1c934de1099dbca2a5c108b6daddc8cd70f6d1c21c2" }, "downloads": -1, "filename": "reversefold.util-1.0.4.tar.gz", "has_sig": false, "md5_digest": "e684e169cb239209ebf71a8d64fbbb5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5123, "upload_time": "2015-03-02T05:14:15", "url": "https://files.pythonhosted.org/packages/1a/11/362bc88ac2e10638187549f30e7dc6f7349e11839d42b2b443821d2be2b0/reversefold.util-1.0.4.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "bd85252e2f5f55589183263c974ca174", "sha256": "60366016dd81e5fc1fbd336a295fec4f5b6251d5977572e98f09d5098ffd028f" }, "downloads": -1, "filename": "reversefold.util-1.1.0.tar.gz", "has_sig": false, "md5_digest": "bd85252e2f5f55589183263c974ca174", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5625, "upload_time": "2015-04-24T20:05:53", "url": "https://files.pythonhosted.org/packages/aa/a4/8dc9314202b283aebfc27f84921dff7721907cbc62ac840f2f4711c79c34/reversefold.util-1.1.0.tar.gz" } ], "1.10.0": [ { "comment_text": "", "digests": { "md5": "16c56bd8175b433d88eba33df0168317", "sha256": "3ce1b9d5b8e350b22ab6abca50b31c88d5e44c8f8837d9f10063ccbf128b1cad" }, "downloads": -1, "filename": "reversefold.util-1.10.0.tar.gz", "has_sig": false, "md5_digest": "16c56bd8175b433d88eba33df0168317", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7354, "upload_time": "2015-07-28T19:24:48", "url": "https://files.pythonhosted.org/packages/3c/d9/9d054d0aa26391bf1d959cf0714b2b6287ca362e5bea8fb694dcb9fd21c2/reversefold.util-1.10.0.tar.gz" } ], "1.11.0": [ { "comment_text": "", "digests": { "md5": "d5ff3e7931621d66e51e9ad0c4d057a3", "sha256": "3181cc635e86f42d9868f6dbac8d21e418b277a2f0126a812c6f332b18973896" }, "downloads": -1, "filename": "reversefold.util-1.11.0.tar.gz", "has_sig": false, "md5_digest": "d5ff3e7931621d66e51e9ad0c4d057a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7368, "upload_time": "2015-07-28T20:53:33", "url": "https://files.pythonhosted.org/packages/af/0d/a4283e006635de74a6c51eb59bb74f9951c7d9292d20ba1fa00fb0a84426/reversefold.util-1.11.0.tar.gz" } ], "1.11.1": [ { "comment_text": "", "digests": { "md5": "6b4fe98bbf38f48d642dbfda184991ee", "sha256": "1861ae102c881cb2f73940576c7829d2ea79b2a6eeb8d8e9465e8b6cbe76454e" }, "downloads": -1, "filename": "reversefold.util-1.11.1.tar.gz", "has_sig": false, "md5_digest": "6b4fe98bbf38f48d642dbfda184991ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7336, "upload_time": "2015-10-01T18:25:49", "url": "https://files.pythonhosted.org/packages/be/84/ff9fe6b4dbc49e28c61be60bb61f0ab11fd65219cffa397cd31f6a034df8/reversefold.util-1.11.1.tar.gz" } ], "1.11.2": [ { "comment_text": "", "digests": { "md5": "5c836fd297ce69b39f000a8bae604018", "sha256": "c04f4cb428e8eef3b15d789fc37d4d3c36aabc36958dbb0a693413034e2a46a0" }, "downloads": -1, "filename": "reversefold.util-1.11.2.tar.gz", "has_sig": false, "md5_digest": "5c836fd297ce69b39f000a8bae604018", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7544, "upload_time": "2015-10-28T19:33:46", "url": "https://files.pythonhosted.org/packages/90/a8/9612b4af2751cbfc7ea0d4b9e2b58f7b52b23aca4de0557fcd1fdad7dd1e/reversefold.util-1.11.2.tar.gz" } ], "1.12.0": [ { "comment_text": "", "digests": { "md5": "3def60addb406c1045b7e625ec87bdab", "sha256": "d4f799ee0eb7d2498228dc1b2fa802be8575cefb64546bde8d4acdc7ae555a4a" }, "downloads": -1, "filename": "reversefold.util-1.12.0.tar.gz", "has_sig": false, "md5_digest": "3def60addb406c1045b7e625ec87bdab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8138, "upload_time": "2015-11-01T20:26:57", "url": "https://files.pythonhosted.org/packages/6d/5d/d8ef8217e25cccfbc976b8ac236a5dc3298ebee24c10914a953942b545c5/reversefold.util-1.12.0.tar.gz" } ], "1.12.1": [ { "comment_text": "", "digests": { "md5": "3245df5341f22d3487dd9e14707e02bf", "sha256": "1ce514094a1f74816a8b2c98d462f42710bbdca9548045db3ad5e7a57a88ab79" }, "downloads": -1, "filename": "reversefold.util-1.12.1.tar.gz", "has_sig": false, "md5_digest": "3245df5341f22d3487dd9e14707e02bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8157, "upload_time": "2015-12-11T20:38:40", "url": "https://files.pythonhosted.org/packages/12/e7/92ee91b5b739622a37c8c6086b51975f22a77f1707f5d4ee262932b293f1/reversefold.util-1.12.1.tar.gz" } ], "1.12.2": [ { "comment_text": "", "digests": { "md5": "228018e313568a8fd2b6167611e0e91e", "sha256": "181c7095fa35f85b3a9f1e84cbb02da063e00ffebb0c1865ce325810f07250c4" }, "downloads": -1, "filename": "reversefold.util-1.12.2.tar.gz", "has_sig": false, "md5_digest": "228018e313568a8fd2b6167611e0e91e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8360, "upload_time": "2015-12-31T00:29:05", "url": "https://files.pythonhosted.org/packages/cd/10/93faf91695a5b1962c5e0b27575ec64421d052b4895281d4c4f0f5bb333e/reversefold.util-1.12.2.tar.gz" } ], "1.12.3": [ { "comment_text": "", "digests": { "md5": "63cb09f30da1132dfdd0e2339ed49f79", "sha256": "d4992f09cc68dcd7ad81a3d18b955baf9a6767a6326a9d77e7d1fe080ab86d35" }, "downloads": -1, "filename": "reversefold.util-1.12.3.tar.gz", "has_sig": false, "md5_digest": "63cb09f30da1132dfdd0e2339ed49f79", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8551, "upload_time": "2016-01-12T21:24:05", "url": "https://files.pythonhosted.org/packages/8e/77/71767a8b3e5a4f5d96d95aebd703e7c729ab8ca98094045bb11267ec9fa7/reversefold.util-1.12.3.tar.gz" } ], "1.13.0": [ { "comment_text": "", "digests": { "md5": "40959c8fb77f7051584592d5cd76eff7", "sha256": "20885257188f9e73e5f6e9b7a411fa26332f0c56a8f51a12f4d1616652a277b1" }, "downloads": -1, "filename": "reversefold.util-1.13.0.tar.gz", "has_sig": false, "md5_digest": "40959c8fb77f7051584592d5cd76eff7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9398, "upload_time": "2016-02-22T06:34:40", "url": "https://files.pythonhosted.org/packages/81/83/02e60af013dfaee753cea29f7ea4c5fbbf3e18dad46bd1e742ceaae6ddfc/reversefold.util-1.13.0.tar.gz" } ], "1.13.1": [ { "comment_text": "", "digests": { "md5": "f57e6b19ed45e4a01a22dd3640603069", "sha256": "5937d2b32bf8926099ad3578a0f106f6ee2000e85255e05025313268e5047c19" }, "downloads": -1, "filename": "reversefold.util-1.13.1.tar.gz", "has_sig": false, "md5_digest": "f57e6b19ed45e4a01a22dd3640603069", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9796, "upload_time": "2016-02-22T21:58:26", "url": "https://files.pythonhosted.org/packages/03/66/3e6af9f3c105b59b4403b8536a7cdb81442d7e38aeb51378d06eb35c73ff/reversefold.util-1.13.1.tar.gz" } ], "1.13.2": [ { "comment_text": "", "digests": { "md5": "8a72c2272ddb2e5b60e57b15cb11dca9", "sha256": "5ba275c1dc58e647ebf06d0693a7a1a10d8f12121a7ae8fa889686066c282d96" }, "downloads": -1, "filename": "reversefold.util-1.13.2.tar.gz", "has_sig": false, "md5_digest": "8a72c2272ddb2e5b60e57b15cb11dca9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9946, "upload_time": "2016-02-22T23:06:44", "url": "https://files.pythonhosted.org/packages/82/6b/d63545b67790b4d0ff2fbfa6826492beea26b860512662a04c6c34fee395/reversefold.util-1.13.2.tar.gz" } ], "1.13.3": [ { "comment_text": "", "digests": { "md5": "88e7eaebda5f73afad3bc51375f7107b", "sha256": "ace641a73dde16403e9f8eb208dd95ae495203548ed73224b4ee4abb09c3ecd5" }, "downloads": -1, "filename": "reversefold.util-1.13.3.tar.gz", "has_sig": false, "md5_digest": "88e7eaebda5f73afad3bc51375f7107b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9940, "upload_time": "2016-02-23T01:09:33", "url": "https://files.pythonhosted.org/packages/93/82/6d01a645df38e771127d4cb2beb8e26d44b483850fefd3d97538994f8265/reversefold.util-1.13.3.tar.gz" } ], "1.14.0": [ { "comment_text": "", "digests": { "md5": "e1dc0ab922ec55f24cbe456eea64f224", "sha256": "92473fc2b33c430470a6f6d48f16c8d2a77f399197123fac6e31c5a260c9b9a8" }, "downloads": -1, "filename": "reversefold.util-1.14.0.tar.gz", "has_sig": false, "md5_digest": "e1dc0ab922ec55f24cbe456eea64f224", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10339, "upload_time": "2016-04-27T05:14:02", "url": "https://files.pythonhosted.org/packages/43/69/41f7bba0b29c7432ac7173fced62bdf47ee7031cc7faba03a5017df8b078/reversefold.util-1.14.0.tar.gz" } ], "1.15.0": [ { "comment_text": "", "digests": { "md5": "87c35ddf09ba3982849e5d23e9d5c717", "sha256": "55787b1b11fa499a1d871ad4dd22844166b26333f3fec448dd6a9790c903f5d6" }, "downloads": -1, "filename": "reversefold.util-1.15.0.tar.gz", "has_sig": false, "md5_digest": "87c35ddf09ba3982849e5d23e9d5c717", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11576, "upload_time": "2016-07-20T00:03:52", "url": "https://files.pythonhosted.org/packages/ec/8b/852109c5e6ae4ab533d8f693362f33a1d71d802ac69877aa2e9d9db154f7/reversefold.util-1.15.0.tar.gz" } ], "1.15.1": [ { "comment_text": "", "digests": { "md5": "640b378975fd454fe47360bd078bcde8", "sha256": "6f20caaa7aded90197acc039d161ceb1226f667d19cb82430c172d5ed6184a8b" }, "downloads": -1, "filename": "reversefold.util-1.15.1.tar.gz", "has_sig": false, "md5_digest": "640b378975fd454fe47360bd078bcde8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12010, "upload_time": "2016-07-20T21:35:11", "url": "https://files.pythonhosted.org/packages/15/b1/9a3156d19484a7abdd0a40b05e91a31fc189b8f0836f121d20b118e7f58e/reversefold.util-1.15.1.tar.gz" } ], "1.15.2": [ { "comment_text": "", "digests": { "md5": "cc6d7c601ca63eb68738164612978ccb", "sha256": "52785444ac921db028114dd7feecab45050a190c5859989b7aa0318ebd3f3c1c" }, "downloads": -1, "filename": "reversefold.util-1.15.2.tar.gz", "has_sig": false, "md5_digest": "cc6d7c601ca63eb68738164612978ccb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12110, "upload_time": "2016-07-20T22:42:26", "url": "https://files.pythonhosted.org/packages/6b/c7/57ac909310d38af9a675814fd0ce89b7ddf68a54c25dc992e9b64d95aa40/reversefold.util-1.15.2.tar.gz" } ], "1.15.3": [ { "comment_text": "", "digests": { "md5": "944f01c5dbe8f9244f67acb610efe6bb", "sha256": "b5b50a69fb64c718c50f28725f792092f724797203e1c8b3db362f095d8aaf60" }, "downloads": -1, "filename": "reversefold.util-1.15.3.tar.gz", "has_sig": false, "md5_digest": "944f01c5dbe8f9244f67acb610efe6bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12086, "upload_time": "2016-08-24T01:28:26", "url": "https://files.pythonhosted.org/packages/40/72/700ea1be2c83d5f3349fb59d51f0ff0e6caaa57e6630a1233d0d75332b55/reversefold.util-1.15.3.tar.gz" } ], "1.15.4": [ { "comment_text": "", "digests": { "md5": "f42081335f5235fb8d9c0dd748d9e38c", "sha256": "5cc127a953c2c36c6438de112f01a7fcd053438cda7c559aa7018d8aec9f88f7" }, "downloads": -1, "filename": "reversefold.util-1.15.4.tar.gz", "has_sig": false, "md5_digest": "f42081335f5235fb8d9c0dd748d9e38c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12482, "upload_time": "2016-10-12T02:02:50", "url": "https://files.pythonhosted.org/packages/c8/4b/0c1ddbf8419e590683b88da04d18181d9a081d2d4f49883289054a9510ad/reversefold.util-1.15.4.tar.gz" } ], "1.15.5": [ { "comment_text": "", "digests": { "md5": "4dd9121ec5dc8672a73e984cf23ce3f1", "sha256": "510a2edf413d6b0edf77c692a441c9261c4f7200ee0362f52a484ca84a7c3d6a" }, "downloads": -1, "filename": "reversefold.util-1.15.5.tar.gz", "has_sig": false, "md5_digest": "4dd9121ec5dc8672a73e984cf23ce3f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12703, "upload_time": "2017-01-30T21:09:47", "url": "https://files.pythonhosted.org/packages/17/a7/ffb818ba102780a21cd7647983bdbe1cda9ab920a9786789586de69f4225/reversefold.util-1.15.5.tar.gz" } ], "1.15.6": [ { "comment_text": "", "digests": { "md5": "71f72955c566223918b66db6f676a0a3", "sha256": "856b32b51c81826459bbb1ec17c847f6b17e2820d251704c19e095cb4511cdd0" }, "downloads": -1, "filename": "reversefold.util-1.15.6.tar.gz", "has_sig": false, "md5_digest": "71f72955c566223918b66db6f676a0a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13114, "upload_time": "2017-02-03T22:55:36", "url": "https://files.pythonhosted.org/packages/34/1f/68b6b0c5ebeee9486af2528bf4915f6641584af50dfd8ed70f95df75f00f/reversefold.util-1.15.6.tar.gz" } ], "1.16.0": [ { "comment_text": "", "digests": { "md5": "8d50c03a9735aaa5123ad36bfeb5392c", "sha256": "5a3efb8da2ddb98ee81d3ea1ba57ee9cfe195ee9e6363f7b8ddaa04706010c52" }, "downloads": -1, "filename": "reversefold.util-1.16.0.tar.gz", "has_sig": false, "md5_digest": "8d50c03a9735aaa5123ad36bfeb5392c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13016, "upload_time": "2017-02-08T02:47:03", "url": "https://files.pythonhosted.org/packages/43/17/065be7dfb536b03f1a7e367769f71b4cbd603f05623f09e042adf11c9c1f/reversefold.util-1.16.0.tar.gz" } ], "1.17.0": [ { "comment_text": "", "digests": { "md5": "76dd117eaef4edac72f4b4919b1e3577", "sha256": "44d098f44ee28697c7ab733a8fbbf9f0e074e3eac889a6f432bf02e7ca5ee107" }, "downloads": -1, "filename": "reversefold.util-1.17.0.tar.gz", "has_sig": false, "md5_digest": "76dd117eaef4edac72f4b4919b1e3577", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13293, "upload_time": "2017-10-24T20:42:59", "url": "https://files.pythonhosted.org/packages/f1/25/47a384e2d6156fdb980d96add9229c3255953dd1ff926212b45b1e0cc361/reversefold.util-1.17.0.tar.gz" } ], "1.18.0": [ { "comment_text": "", "digests": { "md5": "ae35d50b99280024ea31eef85ce5ee60", "sha256": "384d9e1925ebc37194c550b49a7f703d65d4b3a5713f7adb352aff7b1fef101f" }, "downloads": -1, "filename": "reversefold.util-1.18.0.tar.gz", "has_sig": false, "md5_digest": "ae35d50b99280024ea31eef85ce5ee60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13942, "upload_time": "2017-12-06T01:47:49", "url": "https://files.pythonhosted.org/packages/f2/4a/35f880ccb447a653789537b8d8c51100f843d6089b0303b4ca60cadd0c67/reversefold.util-1.18.0.tar.gz" } ], "1.18.1": [ { "comment_text": "", "digests": { "md5": "f9ad925554fccb46d5a4b186ceb40f45", "sha256": "fdefbd946ec94754558b3787ea58e01465bdb9df5d4146c01c3b4b0214d238fb" }, "downloads": -1, "filename": "reversefold.util-1.18.1.tar.gz", "has_sig": false, "md5_digest": "f9ad925554fccb46d5a4b186ceb40f45", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14187, "upload_time": "2018-04-17T20:52:45", "url": "https://files.pythonhosted.org/packages/06/f5/f157572954eaa1c4f7131ee55d7627938cbc670297b4cfd0feb8adb1f415/reversefold.util-1.18.1.tar.gz" } ], "1.18.2": [ { "comment_text": "", "digests": { "md5": "005ecac0abb42172b02382fb741adce4", "sha256": "769af56832bdf1fad33b694707e08ad4fe4acbdc01d213ff6c2cc3347329ba30" }, "downloads": -1, "filename": "reversefold.util-1.18.2.tar.gz", "has_sig": false, "md5_digest": "005ecac0abb42172b02382fb741adce4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14664, "upload_time": "2018-05-29T20:30:53", "url": "https://files.pythonhosted.org/packages/9c/be/c6ae6eac1f22a0875a9b6a2d4e494817e1e9dd267cb590cb4ecd1ff7a7cc/reversefold.util-1.18.2.tar.gz" } ], "1.19": [ { "comment_text": "", "digests": { "md5": "ae24284ed6b3e95bab05a07f49eec0e9", "sha256": "3620ba95469d5da88aa32194ca7b86545c10ec87c2c91a778e9ab627090c3120" }, "downloads": -1, "filename": "reversefold.util-1.19.tar.gz", "has_sig": false, "md5_digest": "ae24284ed6b3e95bab05a07f49eec0e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14301, "upload_time": "2019-01-14T00:05:45", "url": "https://files.pythonhosted.org/packages/93/b9/694f6e6ef257ea84f4fc780e5a464fb286623d9dedf50a1b69d00c59c2f1/reversefold.util-1.19.tar.gz" } ], "1.19.1": [ { "comment_text": "", "digests": { "md5": "e5e193e421680c8fd4c55f2d5d1b2deb", "sha256": "6e8594314eda7a35e2df7eeb6bbea4e45a09b26f4f77dec9fe043706c6bb6bc4" }, "downloads": -1, "filename": "reversefold.util-1.19.1.tar.gz", "has_sig": false, "md5_digest": "e5e193e421680c8fd4c55f2d5d1b2deb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15501, "upload_time": "2019-01-14T00:25:54", "url": "https://files.pythonhosted.org/packages/50/06/9058f5dea22fa7f71b3e6165224fa3bd1bd33b26a0d0a2a465de8ee01b3d/reversefold.util-1.19.1.tar.gz" } ], "1.19.2": [ { "comment_text": "", "digests": { "md5": "f2c09746e8f0f59ed6afb444a5794885", "sha256": "3204bc58238f4d7f03bec0992702247b4fb061f503c67bf5d489121c0ab227ff" }, "downloads": -1, "filename": "reversefold.util-1.19.2.tar.gz", "has_sig": false, "md5_digest": "f2c09746e8f0f59ed6afb444a5794885", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15551, "upload_time": "2019-01-14T00:29:05", "url": "https://files.pythonhosted.org/packages/e1/98/2f1b58a43c5463f7a54ad6b70986a452e18fc01b1784736235207881db12/reversefold.util-1.19.2.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "308345eb4d63e51e2546a8642af71339", "sha256": "5232eb181416b37a6a45bd2ec05ba09a255e032dbc3d419ce50b3f78f75b2a5c" }, "downloads": -1, "filename": "reversefold.util-1.2.0.tar.gz", "has_sig": false, "md5_digest": "308345eb4d63e51e2546a8642af71339", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5969, "upload_time": "2015-04-24T22:43:26", "url": "https://files.pythonhosted.org/packages/80/5a/fcf3ce0ef42958b2d8640e788884021b4fa896896462dab017430c2be807/reversefold.util-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "fac9b6b3eb2a68271b150feb10818667", "sha256": "ea6824ddf0ef81448e17c275ed33407c3a6a39914ddf99768b5abf0f90181341" }, "downloads": -1, "filename": "reversefold.util-1.2.1.tar.gz", "has_sig": false, "md5_digest": "fac9b6b3eb2a68271b150feb10818667", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5972, "upload_time": "2015-05-08T04:14:36", "url": "https://files.pythonhosted.org/packages/c2/88/3df9abab1aa99e75d714831a690a4492e6eb441bd74de6654ee611a1e0e0/reversefold.util-1.2.1.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "5602da77a061fa393d122ea57421f1cc", "sha256": "1332477f242fbfa0f2ae3aef5720129329d0fe232514bebdd1b9e1e472696af8" }, "downloads": -1, "filename": "reversefold.util-1.3.0.tar.gz", "has_sig": false, "md5_digest": "5602da77a061fa393d122ea57421f1cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6084, "upload_time": "2015-05-14T01:20:13", "url": "https://files.pythonhosted.org/packages/79/17/0a4c58b46608fb9bae998fa40ebaef6acf9fc7d0f6304747e8973377023b/reversefold.util-1.3.0.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "a55f32b4ba59cec5243c3a2c6b89eddd", "sha256": "5f24079cd4a5514a903b15dc9b547b76ad8463a0886c9525d48bb809c4319798" }, "downloads": -1, "filename": "reversefold.util-1.4.0.tar.gz", "has_sig": false, "md5_digest": "a55f32b4ba59cec5243c3a2c6b89eddd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6083, "upload_time": "2015-05-15T01:28:52", "url": "https://files.pythonhosted.org/packages/59/7d/bad63d61941048027dd0ab60987d1f5d909e282947b41293ac3f4e323c4b/reversefold.util-1.4.0.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "6377b96692207d2cc405fb1ee9d73e47", "sha256": "1696ee9decd703e4cbce23a6e30e698f34bc8d8488b9103588cfc2dfe28ef476" }, "downloads": -1, "filename": "reversefold.util-1.5.0.tar.gz", "has_sig": false, "md5_digest": "6377b96692207d2cc405fb1ee9d73e47", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6238, "upload_time": "2015-06-03T20:05:49", "url": "https://files.pythonhosted.org/packages/91/cf/1c45260e0c9d2239f4b1dc672ba589979a6c5eb3e3aff069ad3df778e581/reversefold.util-1.5.0.tar.gz" } ], "1.6.0": [ { "comment_text": "", "digests": { "md5": "06aff8713c8600c061993f96ac8c281f", "sha256": "d69e26f9c958097546ef2540963cea9fc79c6a2b19f2b4cf5da5135b8af0d3cc" }, "downloads": -1, "filename": "reversefold.util-1.6.0.tar.gz", "has_sig": false, "md5_digest": "06aff8713c8600c061993f96ac8c281f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7097, "upload_time": "2015-06-06T06:45:07", "url": "https://files.pythonhosted.org/packages/44/01/1d6fde39b41d548cfeb17039a83fce5c2bc591f2f79e9e35d0bea53f33d4/reversefold.util-1.6.0.tar.gz" } ], "1.7.0": [ { "comment_text": "", "digests": { "md5": "e940ef3ee33f891157c712502399aeee", "sha256": "f03f2c4abfe153c019bae3e09b8cc46e9dbcec94386e947d3a55bd8daef67883" }, "downloads": -1, "filename": "reversefold.util-1.7.0.tar.gz", "has_sig": false, "md5_digest": "e940ef3ee33f891157c712502399aeee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7097, "upload_time": "2015-06-06T20:29:52", "url": "https://files.pythonhosted.org/packages/ed/67/ece6562ca2ec458e2477f2dc9098f926ff25c6c8f18f0088025cd55822b6/reversefold.util-1.7.0.tar.gz" } ], "1.7.1": [ { "comment_text": "", "digests": { "md5": "b71b3421bed8a1ec6ccc7447140e40c9", "sha256": "370406f9e9aef5aab147641311dd983faa6795b4026182d12f9301312564c8c1" }, "downloads": -1, "filename": "reversefold.util-1.7.1.tar.gz", "has_sig": false, "md5_digest": "b71b3421bed8a1ec6ccc7447140e40c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7093, "upload_time": "2015-06-06T21:14:50", "url": "https://files.pythonhosted.org/packages/d1/f8/27d9a72d7ad199f9bc43caea58baa58bc5b3f5aa477fa2c8323a67be8e2b/reversefold.util-1.7.1.tar.gz" } ], "1.8.0": [ { "comment_text": "", "digests": { "md5": "494eb925513f5f75de0f184f81f8e16f", "sha256": "4189d881944d263091ea50ed40baf30fdc541c6adca3556a9894bd3244a417ce" }, "downloads": -1, "filename": "reversefold.util-1.8.0.tar.gz", "has_sig": false, "md5_digest": "494eb925513f5f75de0f184f81f8e16f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7119, "upload_time": "2015-06-13T21:52:36", "url": "https://files.pythonhosted.org/packages/e3/77/65ed864676640d20da16cc1e92b6ffc806de025a7148ca4c3f7b8f0b2656/reversefold.util-1.8.0.tar.gz" } ], "1.9.0": [ { "comment_text": "", "digests": { "md5": "d82acf04e4f7b1a3371b73bc17f82617", "sha256": "00689542a19c4272dcc209808770881486dbc7e691cb9428d7e4b2aca32fd19a" }, "downloads": -1, "filename": "reversefold.util-1.9.0.tar.gz", "has_sig": false, "md5_digest": "d82acf04e4f7b1a3371b73bc17f82617", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7308, "upload_time": "2015-07-28T16:11:30", "url": "https://files.pythonhosted.org/packages/71/b2/022421e742c76f462dd71e65ef13343b754c11d5f37bcb59847a7b08cbd9/reversefold.util-1.9.0.tar.gz" } ], "1.9.1": [ { "comment_text": "", "digests": { "md5": "1cad6c3fc4b20321ebe40d652d0edeb2", "sha256": "812b9035b04db07695bf9199e9ddc4f8d15c055bb28ec891c5f98f2a039b7d79" }, "downloads": -1, "filename": "reversefold.util-1.9.1.tar.gz", "has_sig": false, "md5_digest": "1cad6c3fc4b20321ebe40d652d0edeb2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7316, "upload_time": "2015-07-28T18:25:52", "url": "https://files.pythonhosted.org/packages/65/83/297a199259281a183695fc3fd3d06e90db6715089e38edcaba1be7e342d2/reversefold.util-1.9.1.tar.gz" } ], "1.9.2": [ { "comment_text": "", "digests": { "md5": "34c536f0c4e1c4ef2f2bb578496382d9", "sha256": "a1ef7633106b09f92f3ee767fdf78dba262737360d7c3e67d5634fc1542d99d3" }, "downloads": -1, "filename": "reversefold.util-1.9.2.tar.gz", "has_sig": false, "md5_digest": "34c536f0c4e1c4ef2f2bb578496382d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7343, "upload_time": "2015-07-28T19:14:46", "url": "https://files.pythonhosted.org/packages/4f/9f/f57ba83ad4e99ea3ef32d9fd8eeb11b932d5f0db7421fab780dd27884e1a/reversefold.util-1.9.2.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "63fe7729cbe7aebf88d99cbda500d559", "sha256": "45e2374488c4ef5fd3b27273f7e86067fba9825a0b9fbc3b30467187f29c7096" }, "downloads": -1, "filename": "reversefold.util-2.0.0.tar.gz", "has_sig": false, "md5_digest": "63fe7729cbe7aebf88d99cbda500d559", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15544, "upload_time": "2019-01-14T02:58:06", "url": "https://files.pythonhosted.org/packages/7c/c6/59e0ffee5906679215aa044a40f61cbcc9e7575e9c76c207764943cc10f5/reversefold.util-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "8aa4686772a9007ef3ec05b96d2094b3", "sha256": "c9bdacb355e59758fd5ea5251684554e0cc0ddefc0354989bdb56af74a122877" }, "downloads": -1, "filename": "reversefold.util-2.0.1.tar.gz", "has_sig": false, "md5_digest": "8aa4686772a9007ef3ec05b96d2094b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15560, "upload_time": "2019-01-14T05:27:48", "url": "https://files.pythonhosted.org/packages/9a/1d/b1ef933add4c55bd3bfd25929c3d4e231dc9c1b5e75e6124158e66939408/reversefold.util-2.0.1.tar.gz" } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "3ca54c0f655c6d79b16d3beb47712707", "sha256": "b9152c075065a45c921b200ad94b382a487427fa7867a5a910a6eb620c969e78" }, "downloads": -1, "filename": "reversefold.util-2.1.1.tar.gz", "has_sig": false, "md5_digest": "3ca54c0f655c6d79b16d3beb47712707", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15745, "upload_time": "2019-01-24T21:56:25", "url": "https://files.pythonhosted.org/packages/99/7a/6c9f336dcf54358d956eea952a5c64f3edbd9d2bbf2c36e9b5928237bbe0/reversefold.util-2.1.1.tar.gz" } ], "2.1.2": [ { "comment_text": "", "digests": { "md5": "cd57bc86104f120f55772dfbb426a048", "sha256": "1380d6b7eecfbcf6023fb5fde2cbf5bd22f8269186a9c81ee53d097412abc8f3" }, "downloads": -1, "filename": "reversefold.util-2.1.2.tar.gz", "has_sig": false, "md5_digest": "cd57bc86104f120f55772dfbb426a048", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15785, "upload_time": "2019-01-24T22:34:00", "url": "https://files.pythonhosted.org/packages/5b/9a/1f875b0d9be6b12b7378f4a5ea24ae0bf0951a75900b46b2f83ff422166e/reversefold.util-2.1.2.tar.gz" } ], "2.2.0": [ { "comment_text": "", "digests": { "md5": "f3722c38a0cc0680f39958442aa5e47e", "sha256": "a63d383b2893cbc870b2662d707d938c6523d0a6b92ecb8887c0057ef0a526f6" }, "downloads": -1, "filename": "reversefold.util-2.2.0.tar.gz", "has_sig": false, "md5_digest": "f3722c38a0cc0680f39958442aa5e47e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16415, "upload_time": "2019-04-08T23:09:50", "url": "https://files.pythonhosted.org/packages/da/3b/ca96e8cf35b475fd499a3ab76bc19036b201a9f548675213195ff7145f19/reversefold.util-2.2.0.tar.gz" } ], "3.0.0": [ { "comment_text": "", "digests": { "md5": "ac8471d4d47d8ae48bd1282ba586ea5f", "sha256": "24e03e9cc5c0cb57338a9b7e5d8be7989a792a5be1df7d995fbf128a01976b06" }, "downloads": -1, "filename": "reversefold.util-3.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ac8471d4d47d8ae48bd1282ba586ea5f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">3.4,<4", "size": 20375, "upload_time": "2019-06-24T21:38:23", "url": "https://files.pythonhosted.org/packages/48/39/0362236903c29c53ecd3f1665cdc0b0d00c1195612de0bc6163bde77b9ed/reversefold.util-3.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "119ab61bd88be9b794c0a8822fa6b7bf", "sha256": "ac26b00586902dabf7f476ecf9e2d8fd9e29fd315ef1f93d1360cb7aa3d19316" }, "downloads": -1, "filename": "reversefold.util-3.0.0.tar.gz", "has_sig": false, "md5_digest": "119ab61bd88be9b794c0a8822fa6b7bf", "packagetype": "sdist", "python_version": "source", "requires_python": ">3.4,<4", "size": 16342, "upload_time": "2019-06-24T21:38:25", "url": "https://files.pythonhosted.org/packages/32/1a/8c2c11a545a8e50f83d6ddd4ab760c65a7eb9feae7d7c38e9e5f9db347ae/reversefold.util-3.0.0.tar.gz" } ], "3.0.1": [ { "comment_text": "", "digests": { "md5": "abd84501404d1076c9b64ebabece7c96", "sha256": "8379818eaab94c0be2a75620d1ac10561f7d59b105d3aa8bd0ea830c9918969c" }, "downloads": -1, "filename": "reversefold.util-3.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "abd84501404d1076c9b64ebabece7c96", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">3.4,<4", "size": 20407, "upload_time": "2019-06-25T05:56:18", "url": "https://files.pythonhosted.org/packages/d6/99/77babe47d3bec07b00b3e9b7c429a2caf5265c1ad21a8370d2ac7791354f/reversefold.util-3.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f8e05df9e6a3eb2f403505578ec5ed36", "sha256": "f7df6584eec40add49f2f36b58690f9fa1b97978e0b06e8770a4c9722b19410a" }, "downloads": -1, "filename": "reversefold.util-3.0.1.tar.gz", "has_sig": false, "md5_digest": "f8e05df9e6a3eb2f403505578ec5ed36", "packagetype": "sdist", "python_version": "source", "requires_python": ">3.4,<4", "size": 16379, "upload_time": "2019-06-25T05:56:19", "url": "https://files.pythonhosted.org/packages/18/d0/f4d43f410bb6e4368dae4d5b5a25db745457e5f09ee7856e4894f8a2d344/reversefold.util-3.0.1.tar.gz" } ], "3.5.0": [ { "comment_text": "", "digests": { "md5": "6141f6af9a2f1d7185315e80c2a9d4f1", "sha256": "fa235f5878ca1cb630c8e500640f9449bcc7fb5b431cb3b50f16a2b19df89c45" }, "downloads": -1, "filename": "reversefold.util-3.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "6141f6af9a2f1d7185315e80c2a9d4f1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">3.4,<4", "size": 19867, "upload_time": "2019-10-06T04:50:54", "url": "https://files.pythonhosted.org/packages/07/48/3699858f0acc54f219e6e0da0c02374c29c33dfe85d13cc4a72e4974975a/reversefold.util-3.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "37fc2ec87c23b249f3dc3787f1f68357", "sha256": "3d32dcb49bc6bb997f3d6bb1b315d90872711fb7f5eb2d667fade04acb1e8fc0" }, "downloads": -1, "filename": "reversefold.util-3.5.0.tar.gz", "has_sig": false, "md5_digest": "37fc2ec87c23b249f3dc3787f1f68357", "packagetype": "sdist", "python_version": "source", "requires_python": ">3.4,<4", "size": 15967, "upload_time": "2019-10-06T04:50:55", "url": "https://files.pythonhosted.org/packages/df/0c/77873ecce0cba2043fe68da1d22eadf9c239cd1dd6d661e3fa65483eb088/reversefold.util-3.5.0.tar.gz" } ], "3.5.1": [ { "comment_text": "", "digests": { "md5": "a5940445edf20e13b528d59dbcc696b7", "sha256": "c20bed05fd0026b4e39b5c2eaa78bacbcbdabb7f64bea90b06c7ee3f0b67c933" }, "downloads": -1, "filename": "reversefold.util-3.5.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a5940445edf20e13b528d59dbcc696b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">3.4,<4", "size": 20073, "upload_time": "2019-10-07T22:30:05", "url": "https://files.pythonhosted.org/packages/fb/4c/16322fa1fb1ac310aaa2c35f02e13b82f855399947c3b55807aab4535aaf/reversefold.util-3.5.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4f6a895e210cbe8b88d477e064edca7f", "sha256": "8b5b55704a99a6d9d06791e9007e323667ae78cdc945f9ca760d349c40d68f0a" }, "downloads": -1, "filename": "reversefold.util-3.5.1.tar.gz", "has_sig": false, "md5_digest": "4f6a895e210cbe8b88d477e064edca7f", "packagetype": "sdist", "python_version": "source", "requires_python": ">3.4,<4", "size": 15943, "upload_time": "2019-10-07T22:30:07", "url": "https://files.pythonhosted.org/packages/55/84/85ca3dbbcb8b6fcccb41d80d1320b04ae06200a28009c94e90254f3cb3f1/reversefold.util-3.5.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a5940445edf20e13b528d59dbcc696b7", "sha256": "c20bed05fd0026b4e39b5c2eaa78bacbcbdabb7f64bea90b06c7ee3f0b67c933" }, "downloads": -1, "filename": "reversefold.util-3.5.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a5940445edf20e13b528d59dbcc696b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">3.4,<4", "size": 20073, "upload_time": "2019-10-07T22:30:05", "url": "https://files.pythonhosted.org/packages/fb/4c/16322fa1fb1ac310aaa2c35f02e13b82f855399947c3b55807aab4535aaf/reversefold.util-3.5.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4f6a895e210cbe8b88d477e064edca7f", "sha256": "8b5b55704a99a6d9d06791e9007e323667ae78cdc945f9ca760d349c40d68f0a" }, "downloads": -1, "filename": "reversefold.util-3.5.1.tar.gz", "has_sig": false, "md5_digest": "4f6a895e210cbe8b88d477e064edca7f", "packagetype": "sdist", "python_version": "source", "requires_python": ">3.4,<4", "size": 15943, "upload_time": "2019-10-07T22:30:07", "url": "https://files.pythonhosted.org/packages/55/84/85ca3dbbcb8b6fcccb41d80d1320b04ae06200a28009c94e90254f3cb3f1/reversefold.util-3.5.1.tar.gz" } ] }