{ "info": { "author": "pohmelie", "author_email": "multisosnooley@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Programming Language :: Python", "Programming Language :: Python :: 3", "Topic :: Internet :: File Transfer Protocol (FTP)" ], "description": ".. aioftp documentation master file, created by\n sphinx-quickstart on Fri Apr 17 16:21:03 2015.\n You can adapt this file completely to your liking, but it should at least\n contain the root `toctree` directive.\n\naioftp\n======\n\n.. image:: https://travis-ci.com/aio-libs/aioftp.svg?branch=master\n :target: https://travis-ci.com/aio-libs/aioftp\n :alt: Travis status for master branch\n\n.. image:: https://codecov.io/gh/aio-libs/aioftp/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/aio-libs/aioftp\n\n.. image:: https://img.shields.io/pypi/v/aioftp.svg\n :target: https://pypi.python.org/pypi/aioftp\n\n.. image:: https://img.shields.io/pypi/pyversions/aioftp.svg\n :target: https://pypi.python.org/pypi/aioftp\n\n.. image:: https://pypi-badges.global.ssl.fastly.net/svg?package=aioftp&timeframe=monthly\n :target: https://pypi.python.org/pypi/aioftp\n\nftp client/server for asyncio (http://aioftp.readthedocs.org)\n\n.. _GitHub: https://github.com/aio-libs/aioftp\n\nFeatures\n--------\n\n- Simple.\n- Extensible.\n- Proxy via `twunnel3 `_.\n\nGoals\n-----\n\n- Minimum usable core.\n- Do not use deprecated or overridden commands and features (if possible).\n- Very high level api.\n\nClient use this commands: USER, PASS, ACCT, PWD, CWD, CDUP, MKD, RMD, MLSD,\nMLST, RNFR, RNTO, DELE, STOR, APPE, RETR, TYPE, PASV, ABOR, QUIT, REST, LIST\n(as fallback)\n\nServer support this commands: USER, PASS, QUIT, PWD, CWD, CDUP, MKD, RMD, MLSD,\nLIST (but it's not recommended to use it, cause it has no standard format),\nMLST, RNFR, RNTO, DELE, STOR, RETR, TYPE (\"I\" and \"A\"), PASV, ABOR, APPE, REST\n\nThis subsets are enough for 99% of tasks, but if you need something, then you\ncan easily extend current set of commands.\n\nServer benchmark\n----------------\n\nCompared with `pyftpdlib `_ and\nchecked with its ftpbench script.\n\naioftp 0.8.0\n\n::\n\n STOR (client -> server) 284.95 MB/sec\n RETR (server -> client) 408.44 MB/sec\n 200 concurrent clients (connect, login) 0.18 secs\n STOR (1 file with 200 idle clients) 287.52 MB/sec\n RETR (1 file with 200 idle clients) 382.05 MB/sec\n 200 concurrent clients (RETR 10.0M file) 13.33 secs\n 200 concurrent clients (STOR 10.0M file) 12.56 secs\n 200 concurrent clients (QUIT) 0.03 secs\n\npyftpdlib 1.5.2\n\n::\n\n STOR (client -> server) 1235.56 MB/sec\n RETR (server -> client) 3960.21 MB/sec\n 200 concurrent clients (connect, login) 0.06 secs\n STOR (1 file with 200 idle clients) 1208.58 MB/sec\n RETR (1 file with 200 idle clients) 3496.03 MB/sec\n 200 concurrent clients (RETR 10.0M file) 0.55 secs\n 200 concurrent clients (STOR 10.0M file) 1.46 secs\n 200 concurrent clients (QUIT) 0.02 secs\n\nDependencies\n------------\n\n- Python 3.5.3+\n\nLicense\n-------\n\naioftp is offered under the Apache 2 license.\n\nLibrary installation\n--------------------\n\n::\n\n pip install aioftp\n\nGetting started\n---------------\n\nClient example\n\n.. code-block:: python\n\n import asyncio\n import aioftp\n\n\n async def get_mp3(host, port, login, password):\n async with aioftp.ClientSession(host, port, login, password) as client:\n for path, info in (await client.list(recursive=True)):\n if info[\"type\"] == \"file\" and path.suffix == \".mp3\":\n await client.download(path)\n\n\n loop = asyncio.get_event_loop()\n tasks = (\n get_mp3(\"server1.com\", 21, \"login\", \"password\")),\n get_mp3(\"server2.com\", 21, \"login\", \"password\")),\n get_mp3(\"server3.com\", 21, \"login\", \"password\")),\n )\n loop.run_until_complete(asyncio.wait(tasks))\n loop.close()\n\nServer example\n\n.. code-block:: python\n\n import asyncio\n import aioftp\n\n\n loop = asyncio.get_event_loop()\n server = aioftp.Server()\n loop.run_until_complete(server.start(None, 8021))\n try:\n loop.run_forever()\n except KeyboardInterrupt:\n loop.run_until_complete(server.close())\n loop.close()\n\nOr just use simple server\n\n.. code-block:: shell\n\n python -m aioftp --help\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/aio-libs/aioftp", "keywords": "", "license": "Apache-2.0", "maintainer": "", "maintainer_email": "", "name": "aioftp", "package_url": "https://pypi.org/project/aioftp/", "platform": "", "project_url": "https://pypi.org/project/aioftp/", "project_urls": { "Homepage": "https://github.com/aio-libs/aioftp" }, "release_url": "https://pypi.org/project/aioftp/0.13.0/", "requires_dist": [ "pytest ; extra == 'tests'", "pytest-asyncio ; extra == 'tests'", "pytest-cov ; extra == 'tests'", "trustme ; extra == 'tests'", "async-timeout ; extra == 'tests'" ], "requires_python": ">= 3.5.3", "summary": "ftp client/server for asyncio", "version": "0.13.0" }, "last_serial": 4978482, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "54cbc6066adf140d5cc477ed9fe680b1", "sha256": "ef4c47afafde3e88930b2fefbdda381a20b4c5b0dab6d58b1125f7eea8f2acd4" }, "downloads": -1, "filename": "aioftp-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "54cbc6066adf140d5cc477ed9fe680b1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 7822, "upload_time": "2015-04-24T09:29:43", "url": "https://files.pythonhosted.org/packages/6d/06/23d518297617689cb843f22e761f410dd0d895f2fec9e32ef6592f7c29c9/aioftp-0.0.1-py3-none-any.whl" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "c3bbb69c656eff1cf72fed6dfd169f2a", "sha256": "756086ec708c014a8c079cf4d6509d4759c5c7c70f895189554736920a2a9342" }, "downloads": -1, "filename": "aioftp-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "c3bbb69c656eff1cf72fed6dfd169f2a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 17069, "upload_time": "2015-06-05T11:25:13", "url": "https://files.pythonhosted.org/packages/9a/07/e1a3390ee1bf1b609b357fa8f5a96f3ff9f82c3541d00e6568b2dd0b0f6c/aioftp-0.1.0-py3-none-any.whl" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "386a0353bc78f44d0e636cab7a620817", "sha256": "1d602b1fbbfc236d014751fefdbdc92ba1e4017a36c6f3372308adfc405ef2b3" }, "downloads": -1, "filename": "aioftp-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "386a0353bc78f44d0e636cab7a620817", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 18094, "upload_time": "2015-06-10T09:22:28", "url": "https://files.pythonhosted.org/packages/f6/54/781275207d47d76838c484ebfb935fba9bc99e43514d4795280d0cb2201c/aioftp-0.1.1-py3-none-any.whl" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "789b296d4eb95556ccc22ed03d913240", "sha256": "5d9d815a712f6220b12a4baf02866a4b81940ad2eb5088ca0d7fc004c6915a63" }, "downloads": -1, "filename": "aioftp-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "789b296d4eb95556ccc22ed03d913240", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 18823, "upload_time": "2015-06-11T13:02:11", "url": "https://files.pythonhosted.org/packages/05/d4/aab46b689a21279829aa78931935bf29cdc9fcc8202a7d3a96518978f6c1/aioftp-0.1.2-py3-none-any.whl" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "b3e087a37f44dadfdf2427aaa8305697", "sha256": "3f7799608dbf42a66ea1b770684653175ef94e785132837a0140c428705ab171" }, "downloads": -1, "filename": "aioftp-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "b3e087a37f44dadfdf2427aaa8305697", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 18890, "upload_time": "2015-08-28T16:27:13", "url": "https://files.pythonhosted.org/packages/e9/93/7e3549bbe408dc88e261c5edefa8eefaf0510ab641f0ee480fe566cd690c/aioftp-0.1.3-py3-none-any.whl" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "769be84faa186cb0d558154a40d2297d", "sha256": "9a42e5e165701751df5a41c91366a461684697f167e4cda1b5246d96e9efc3cb" }, "downloads": -1, "filename": "aioftp-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "769be84faa186cb0d558154a40d2297d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 18913, "upload_time": "2015-08-31T11:39:46", "url": "https://files.pythonhosted.org/packages/3b/74/b138716be01b5adbba7d4297ecdd93a1c577200d33f9ec0ad119d19f7d25/aioftp-0.1.4-py3-none-any.whl" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "24c830bc0c63148bd8f90378f94a4f71", "sha256": "59d95e1494f71fe167df1459b892ff8b214f9534dde88ac71fd0435145b51778" }, "downloads": -1, "filename": "aioftp-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "24c830bc0c63148bd8f90378f94a4f71", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 18953, "upload_time": "2015-09-01T13:20:33", "url": "https://files.pythonhosted.org/packages/58/f5/ec0cb6c82140a2206f544cfec73d45eabada700b7dbdd56d3f0392d4ced4/aioftp-0.1.5-py3-none-any.whl" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "1a51d7491d06bf38a7ca9eff17e8ed67", "sha256": "fb1c42fe69cc278c77ce2869895bbb4a9a8366166b00491dd15b6ffc035ecdfe" }, "downloads": -1, "filename": "aioftp-0.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "1a51d7491d06bf38a7ca9eff17e8ed67", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 18982, "upload_time": "2015-09-03T08:39:54", "url": "https://files.pythonhosted.org/packages/24/bc/3b79e869f16adc2c2626fef07e4bbfba90ae63dcd16c04de43bdf0a7dec2/aioftp-0.1.6-py3-none-any.whl" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "bad96003a67d1a7d079661e8fb34339e", "sha256": "8b4771ab0ba65eea8d1b762afc34520964be3997fddba8c68788307f14f6f41c" }, "downloads": -1, "filename": "aioftp-0.1.7-py3-none-any.whl", "has_sig": false, "md5_digest": "bad96003a67d1a7d079661e8fb34339e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 18995, "upload_time": "2015-09-03T08:59:26", "url": "https://files.pythonhosted.org/packages/21/6a/10715a81a005a16aa1d291a7eee2c6ea934f4c88c4250d33569bfe35e872/aioftp-0.1.7-py3-none-any.whl" } ], "0.10.0": [ { "comment_text": "", "digests": { "md5": "5781c8bfc20ca90c7d7ef940d4241334", "sha256": "974c7193295b257d768fb4459c5ace58242d67ba4303cd07063feb3e84cd40e0" }, "downloads": -1, "filename": "aioftp-0.10.0.tar.gz", "has_sig": false, "md5_digest": "5781c8bfc20ca90c7d7ef940d4241334", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 44746, "upload_time": "2018-02-03T14:47:39", "url": "https://files.pythonhosted.org/packages/57/ba/a72537c6ec3587ae904dfa4aa409c499b8a4bb2c576200b1ea954afb5dfa/aioftp-0.10.0.tar.gz" } ], "0.10.1": [ { "comment_text": "", "digests": { "md5": "b297fc0b3fbf4f193c6dc39b13495e59", "sha256": "d10f27e50908dbcb0e5df944ffdfb1f1957c59769f67a8c354a129edef99b0c2" }, "downloads": -1, "filename": "aioftp-0.10.1.tar.gz", "has_sig": false, "md5_digest": "b297fc0b3fbf4f193c6dc39b13495e59", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 44933, "upload_time": "2018-02-28T21:09:06", "url": "https://files.pythonhosted.org/packages/da/1e/34eff8522111f4a33f6c5af79bc211009beca5ddc2ede1e44c9b801f8d5e/aioftp-0.10.1.tar.gz" } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "acf502616f31bc2d17707444942fd552", "sha256": "50b8070c7eff1a7cb4a53d0751c26aa5c12bf68f72d394539139530809d505bb" }, "downloads": -1, "filename": "aioftp-0.11.0-py3-none-any.whl", "has_sig": false, "md5_digest": "acf502616f31bc2d17707444942fd552", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5.3", "size": 30149, "upload_time": "2018-07-04T00:21:04", "url": "https://files.pythonhosted.org/packages/3e/6b/4543b7b0ee2c30b5ad4f191259035baeb2d77ed984234c014bccf51dfae0/aioftp-0.11.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "743cafdd259e9623b790ac362789da22", "sha256": "d7a9e5d852b89d5fedb6278d04c15c031af471bb511a6710b38761c29e18b343" }, "downloads": -1, "filename": "aioftp-0.11.0.tar.gz", "has_sig": false, "md5_digest": "743cafdd259e9623b790ac362789da22", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5.3", "size": 45447, "upload_time": "2018-07-04T00:21:05", "url": "https://files.pythonhosted.org/packages/8f/51/b75d68f8ec03c4477bf79e45937ca1d5b52036c2a8add666a81deee55f58/aioftp-0.11.0.tar.gz" } ], "0.11.1": [ { "comment_text": "", "digests": { "md5": "c4706b3c08bf287872de69faf0a925f0", "sha256": "651ce5d3d13e10e4eafa66e5c25e39586ff12b12038bf83ebbdda9e0013f6a06" }, "downloads": -1, "filename": "aioftp-0.11.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c4706b3c08bf287872de69faf0a925f0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5.3", "size": 30463, "upload_time": "2018-08-30T00:17:30", "url": "https://files.pythonhosted.org/packages/28/40/9f12c019f2d60345fd05aff76eaa78d177ada06343e1edc15b99f3752471/aioftp-0.11.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "131362c847e1382e2e1cceffc790e6bc", "sha256": "8bca0319ee4058abb7165405705bfaf359ab4e42d20e054144b95fd0c22d98ed" }, "downloads": -1, "filename": "aioftp-0.11.1.tar.gz", "has_sig": false, "md5_digest": "131362c847e1382e2e1cceffc790e6bc", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5.3", "size": 46123, "upload_time": "2018-08-30T00:17:32", "url": "https://files.pythonhosted.org/packages/af/8c/9bf3e5b1b8b570b6df8b2491acbd06a490df90b16ba9bf791e28a5c46adc/aioftp-0.11.1.tar.gz" } ], "0.12.0": [ { "comment_text": "", "digests": { "md5": "2ce478d88d59ba88f12190a3ac6fa87a", "sha256": "e92e6f358c7e2152ad7635198c97968ab83899f65d907f30d698cf8a077e6a09" }, "downloads": -1, "filename": "aioftp-0.12.0-py3-none-any.whl", "has_sig": false, "md5_digest": "2ce478d88d59ba88f12190a3ac6fa87a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5.3", "size": 30815, "upload_time": "2018-10-15T15:46:12", "url": "https://files.pythonhosted.org/packages/b7/02/06dbf2214ba74bc87dac159433062c55841ad531a8eff2db59a0fdfffe52/aioftp-0.12.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e4a718e11e45f8e9ad9c1f505b3bd1f8", "sha256": "22d04c95c30e69a05dc35bc93c735b101662f5028aebe12d0038962bd9c0b956" }, "downloads": -1, "filename": "aioftp-0.12.0.tar.gz", "has_sig": false, "md5_digest": "e4a718e11e45f8e9ad9c1f505b3bd1f8", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5.3", "size": 48099, "upload_time": "2018-10-15T15:46:14", "url": "https://files.pythonhosted.org/packages/1f/8b/85b18d4b008f7964096d1e57025ef376623c454798bad17120c87eb352ca/aioftp-0.12.0.tar.gz" } ], "0.13.0": [ { "comment_text": "", "digests": { "md5": "026e688e2f27565732f806d89e2163d5", "sha256": "11b5fab43a40f08452e320bc764275c793a63bc0ddd59df80376254da8715dd5" }, "downloads": -1, "filename": "aioftp-0.13.0-py3-none-any.whl", "has_sig": false, "md5_digest": "026e688e2f27565732f806d89e2163d5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5.3", "size": 36340, "upload_time": "2019-03-24T12:12:32", "url": "https://files.pythonhosted.org/packages/c7/f7/ab4ac2b8103ba9d06d3199988431fbe406d0d91a211e8569cd16075146fd/aioftp-0.13.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "804eb42a4910967808315c868ae9f79a", "sha256": "5711c03433b510c101e9337069033133cca19b508b5162b414bed24320de6c18" }, "downloads": -1, "filename": "aioftp-0.13.0.tar.gz", "has_sig": false, "md5_digest": "804eb42a4910967808315c868ae9f79a", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5.3", "size": 87069, "upload_time": "2019-03-24T12:12:34", "url": "https://files.pythonhosted.org/packages/83/d5/f6b10ec9d582f994fb98ea677f8c1f8e68a6e47914d74d716399f95cb699/aioftp-0.13.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "991d843801af068566b9fc7d8be1e135", "sha256": "ff499460f9c7b4fd56ea1d2c4919011e06b2264d7a924ee94dbff38a03c4bc76" }, "downloads": -1, "filename": "aioftp-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "991d843801af068566b9fc7d8be1e135", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 21600, "upload_time": "2015-09-22T21:57:04", "url": "https://files.pythonhosted.org/packages/0b/e1/bf199d05703f54f0986f661d46389a9a7e582f0f808b92a9864ea7ae69d4/aioftp-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b147b2846f7fd477f6de3f2f4a0b48e9", "sha256": "3aad5f702f44c5ac8c13472fa986cd49a31111cd4535e6c03d3993a95aab2c43" }, "downloads": -1, "filename": "aioftp-0.2.0.tar.gz", "has_sig": false, "md5_digest": "b147b2846f7fd477f6de3f2f4a0b48e9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 36387, "upload_time": "2015-09-23T12:34:37", "url": "https://files.pythonhosted.org/packages/69/79/7363e656829518b11b657a3b9663b0ec54907d024cd794d6d35df75dd559/aioftp-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "3c7dba357f9345aab6dd153a2bb48558", "sha256": "bfb5c929c7337c557caf286352090ec0d70895e82d61bebe7cc851ae8fd78e5a" }, "downloads": -1, "filename": "aioftp-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "3c7dba357f9345aab6dd153a2bb48558", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 27449, "upload_time": "2015-11-09T08:49:14", "url": "https://files.pythonhosted.org/packages/7a/a2/1f2ef72f007df739f1fa08b593f718003d9531ea466f1785d2fcf0cfe963/aioftp-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a4adb929e6f3c0e0f3243cab55d54357", "sha256": "85b756cd81925788a94ceb1b023c36151be6b7b70d7578c82affec3ab1b66983" }, "downloads": -1, "filename": "aioftp-0.3.0.tar.gz", "has_sig": false, "md5_digest": "a4adb929e6f3c0e0f3243cab55d54357", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40817, "upload_time": "2015-11-09T08:49:04", "url": "https://files.pythonhosted.org/packages/d3/85/47efc95a733fa183c6065af82175bbfdacf12c58746dc91108897daf955b/aioftp-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "a0fae219c39ae6f2359184a51f0693ef", "sha256": "06caed2c2f7bfc7b824a7e27646e1c668c3b4475b318f87cfe8d3c8b4ab5c4a3" }, "downloads": -1, "filename": "aioftp-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a0fae219c39ae6f2359184a51f0693ef", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 26637, "upload_time": "2015-11-09T08:54:27", "url": "https://files.pythonhosted.org/packages/5f/7a/54320337c6570ae7620d87a543dc388282f85e76510004c71a789f195e9a/aioftp-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "97441234fd66e5200a1bdde661a35b57", "sha256": "0c96684fdebb4410830fc09d59bcec6df601975ebb777fd9c4161ef7c84e6a0c" }, "downloads": -1, "filename": "aioftp-0.3.1.tar.gz", "has_sig": false, "md5_digest": "97441234fd66e5200a1bdde661a35b57", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37777, "upload_time": "2015-11-09T08:54:22", "url": "https://files.pythonhosted.org/packages/68/e3/e37ae7c7cde99ae78c00c7897aef3c699d644315072714b88d5101c977d5/aioftp-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "3f5e2694ef07a394375ac47575faef01", "sha256": "c9036b5ba95dcc6b19870eb8883c1b4f87517a3cc9fa2e9751043adf72ac416f" }, "downloads": -1, "filename": "aioftp-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "3f5e2694ef07a394375ac47575faef01", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 28222, "upload_time": "2015-12-17T17:50:25", "url": "https://files.pythonhosted.org/packages/04/73/cbf21cf1f398404db8b1b67d106b51816b6fc0405c5e42c86db235eaf339/aioftp-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "82d10ffc65dc1f3bfc4d21f426850a7a", "sha256": "e4fd8a1347d4676b031e8b1a22c6f3490bb27bf4a3c4b0d775546cd3a9f96753" }, "downloads": -1, "filename": "aioftp-0.4.0.tar.gz", "has_sig": false, "md5_digest": "82d10ffc65dc1f3bfc4d21f426850a7a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35254, "upload_time": "2015-12-17T17:50:13", "url": "https://files.pythonhosted.org/packages/ac/b8/75e03cb0cc38ab91de4f665764fd52ed6363609880c5f12b604dca2986d7/aioftp-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "6a421c2a7813513ba7434f0baa5ed484", "sha256": "385358f8c7b43482bc3269a1bc4774c2b7ef6e883a5ad82d5eaf6dd59bc23f99" }, "downloads": -1, "filename": "aioftp-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6a421c2a7813513ba7434f0baa5ed484", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 29022, "upload_time": "2015-12-21T12:38:41", "url": "https://files.pythonhosted.org/packages/d7/79/93c37b42ef8e7b1fe3d09489b66e141780c136b038de89c3ff07a1d8963d/aioftp-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1303e5824c211697d6ae23670ef06415", "sha256": "549aaf9f085b41d628c295a026a854c5b4f541b89f6fc123806fe7b43bc14964" }, "downloads": -1, "filename": "aioftp-0.4.1.tar.gz", "has_sig": false, "md5_digest": "1303e5824c211697d6ae23670ef06415", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37838, "upload_time": "2015-12-21T12:38:35", "url": "https://files.pythonhosted.org/packages/3f/37/1c57b25a60c37821c687c3c3c21c04f4054633293da0fda0a5e38e761c17/aioftp-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "58b1f00456c41af5c5076da4431c2def", "sha256": "8ee8c7bd194ccb0b000fc3835ce4e42724c6d5c2ccbb58430eafb71027c2eb63" }, "downloads": -1, "filename": "aioftp-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "58b1f00456c41af5c5076da4431c2def", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 29493, "upload_time": "2016-02-12T12:25:08", "url": "https://files.pythonhosted.org/packages/67/88/3918dc9a1ae70e102b1562c6c7d209302a4ba69bc4b6c0d7f35f54f1cab0/aioftp-0.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a1365435ad2705a2d08e6a5c7c82fe4b", "sha256": "dca7981ca7b8a08d72cfaa253f149e9b52236ac70472feb4315acb89f22ef2f2" }, "downloads": -1, "filename": "aioftp-0.5.0.tar.gz", "has_sig": false, "md5_digest": "a1365435ad2705a2d08e6a5c7c82fe4b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38673, "upload_time": "2016-02-12T12:24:47", "url": "https://files.pythonhosted.org/packages/2d/b4/ff7a325a5a1092ceac1c8b84ae791df1f728fd278ad3ccd35c08812e2e8e/aioftp-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "e961a2f1f065f1a86c74f726c1b54f85", "sha256": "6ebbb98b389f543c473fdcc867f26429a47afdcc53661c33a54569c0000caba8" }, "downloads": -1, "filename": "aioftp-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e961a2f1f065f1a86c74f726c1b54f85", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 30351, "upload_time": "2016-04-15T21:43:02", "url": "https://files.pythonhosted.org/packages/05/7a/4df8629299ae39a01e8713f65350a6164ad81ab5c79d450a0bf46b24f0dc/aioftp-0.6.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a4d45a6d00fae7f6ff4a953b45bf8184", "sha256": "403d95e2ea5280a964f41c6b0537d60767938738c6a077fc4366e74076abba1d" }, "downloads": -1, "filename": "aioftp-0.6.0.tar.gz", "has_sig": false, "md5_digest": "a4d45a6d00fae7f6ff4a953b45bf8184", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38486, "upload_time": "2016-04-15T21:42:57", "url": "https://files.pythonhosted.org/packages/9a/b1/a108e1556f5f51b107ff3033e146ea875f5d74416adbe4c5d61202f534cd/aioftp-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "e8bbf7fc330ed01a0c69f29bc289f45d", "sha256": "4cb439a0d8f1ccc066725579d9b1d0c53b58fd886932d5a32df6d6ec030fe648" }, "downloads": -1, "filename": "aioftp-0.6.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e8bbf7fc330ed01a0c69f29bc289f45d", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 30367, "upload_time": "2016-04-20T16:59:13", "url": "https://files.pythonhosted.org/packages/a5/03/0561f1ee788813c5f16646660d149caae56f3c0c3a6b0d135be4aad06b1b/aioftp-0.6.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dafc5d58521f498698d1af0e4f227ae9", "sha256": "609921d940ef965de42471d92367a93405c4c556a32dc56ba8baedd7d82cc9b9" }, "downloads": -1, "filename": "aioftp-0.6.1.tar.gz", "has_sig": false, "md5_digest": "dafc5d58521f498698d1af0e4f227ae9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38428, "upload_time": "2016-04-16T11:45:58", "url": "https://files.pythonhosted.org/packages/c5/e4/13b2ad9de0521ceb5a93042a8e95e9768c28fa315267102f6d06b35be11f/aioftp-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "afc34c004ec9c763e15c6c442d905478", "sha256": "d71f8c3869470cf8ce11c56d40f97e569de19e50fc7f17ca9e5b37b9cb19a2f5" }, "downloads": -1, "filename": "aioftp-0.6.2-py3-none-any.whl", "has_sig": false, "md5_digest": "afc34c004ec9c763e15c6c442d905478", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 30618, "upload_time": "2017-02-27T17:33:05", "url": "https://files.pythonhosted.org/packages/4e/63/a099a87eb5516d3f27a31c7918fdc726d3c4f674cc3f6ae2b7322a016d18/aioftp-0.6.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "691085bceab187c341fe3e21fe0ef26b", "sha256": "1967a6df2db773d6f0f9a11fc2fa66c89cd1c553c6017ddbb0efa3b79273ea3e" }, "downloads": -1, "filename": "aioftp-0.6.2.tar.gz", "has_sig": false, "md5_digest": "691085bceab187c341fe3e21fe0ef26b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37665, "upload_time": "2017-02-27T17:33:02", "url": "https://files.pythonhosted.org/packages/08/54/5d09123ea11dfbd34ca718f800afcbf6972503fd05ff9aa2110398cabd89/aioftp-0.6.2.tar.gz" } ], "0.6.3": [ { "comment_text": "", "digests": { "md5": "747855e7cdc97fd9285d2e10bbabda17", "sha256": "4a33d2825026042af8fbe91f1a2b7499096c00958e287013626affb78f085a3e" }, "downloads": -1, "filename": "aioftp-0.6.3-py3-none-any.whl", "has_sig": false, "md5_digest": "747855e7cdc97fd9285d2e10bbabda17", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 30702, "upload_time": "2017-03-02T14:49:44", "url": "https://files.pythonhosted.org/packages/13/b1/ac25dcc484a41626b96be39128bd6918de6f7d9a810d978c7a939ffc0625/aioftp-0.6.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3a60c1d0a8f37ed7175e3a2fa842eed9", "sha256": "73768d42e112b96a82e7b1c339f9d64ea48165e88394e1e24643b7ef0a5e0009" }, "downloads": -1, "filename": "aioftp-0.6.3.tar.gz", "has_sig": false, "md5_digest": "3a60c1d0a8f37ed7175e3a2fa842eed9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37920, "upload_time": "2017-03-02T14:49:42", "url": "https://files.pythonhosted.org/packages/ac/6e/bfd6931bfeedfbcc87427c6d34304de79b25ec51e1a7b055a4e50d4d6afe/aioftp-0.6.3.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "43db296c4ebe41ecad2d135856133e8b", "sha256": "0aa23ec7ba301740203d5fb59f6db43ee0d21d44b9ea4e58d84c57de93fa2908" }, "downloads": -1, "filename": "aioftp-0.7.0-py3-none-any.whl", "has_sig": false, "md5_digest": "43db296c4ebe41ecad2d135856133e8b", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 31763, "upload_time": "2017-04-16T20:21:28", "url": "https://files.pythonhosted.org/packages/57/e1/c91a898def0da95c47ab3cc4dd6e4f02cb1915a3bcb18bff53c65e165b9c/aioftp-0.7.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "793ef45485100c92b1a8ada22d5d8143", "sha256": "cc8fe97eb2e87b41690fb2b8a004b990d4c07eb18fa42dc005b104b2ce8c30d2" }, "downloads": -1, "filename": "aioftp-0.7.0.tar.gz", "has_sig": false, "md5_digest": "793ef45485100c92b1a8ada22d5d8143", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41438, "upload_time": "2017-04-16T20:21:29", "url": "https://files.pythonhosted.org/packages/ff/f7/6215e10c82e382be8ddecf4ec139e50414083c32c32e2e0f9a5322b94b27/aioftp-0.7.0.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "303cfa63ac79833d81b1228580e6cc20", "sha256": "8b70dc0ca7a92f7addcf9d002c88b35b4930fe0726277af77b5325c18b7d8de5" }, "downloads": -1, "filename": "aioftp-0.8.0-py3-none-any.whl", "has_sig": false, "md5_digest": "303cfa63ac79833d81b1228580e6cc20", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 31733, "upload_time": "2017-08-06T20:27:30", "url": "https://files.pythonhosted.org/packages/b8/ea/a7394acb1cd3e8649ad13235c20ab99c5a9ae75e596d27fadee018341085/aioftp-0.8.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dcb7ff16a02be576e6887caf0680539c", "sha256": "2fd635888f14208eeab116375e19840245cdfd83d6366fe5990281b7aa03b0cf" }, "downloads": -1, "filename": "aioftp-0.8.0.tar.gz", "has_sig": false, "md5_digest": "dcb7ff16a02be576e6887caf0680539c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41431, "upload_time": "2017-08-06T20:27:27", "url": "https://files.pythonhosted.org/packages/23/b0/cae0697f9a829aeef0018612716847cbbc109c95e9826bc473b905e0885e/aioftp-0.8.0.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "4a0727963b143a3d409b7b6c59d3dd6f", "sha256": "1bf30177cefd5cb2058c6b66b43753921e160ac5f65041fd0d23f8202d983308" }, "downloads": -1, "filename": "aioftp-0.8.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4a0727963b143a3d409b7b6c59d3dd6f", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 31697, "upload_time": "2017-10-08T18:59:21", "url": "https://files.pythonhosted.org/packages/b3/67/e92ffa18a1939967a5475c0c643983b7ab6c7a190ef625ff84872ab22cdc/aioftp-0.8.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2d46c52fbaed07e61a9a446f4a61f5e3", "sha256": "97bd78c46b33641ba471f5a81fbca6850b86656bd07db4bbf9876e14116d7ad2" }, "downloads": -1, "filename": "aioftp-0.8.1.tar.gz", "has_sig": false, "md5_digest": "2d46c52fbaed07e61a9a446f4a61f5e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41419, "upload_time": "2017-10-08T18:59:23", "url": "https://files.pythonhosted.org/packages/bb/f8/a1ae39deaf27064162a21b403a20bae6dbb8fd5ecebd0994d832ca00e6f1/aioftp-0.8.1.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "c237eb3150430caab55a00a81381fe3d", "sha256": "d2e087dad13e69174b7bddc5a7883809e8268abc049d4a32540b47eecd7304bf" }, "downloads": -1, "filename": "aioftp-0.9.0.tar.gz", "has_sig": false, "md5_digest": "c237eb3150430caab55a00a81381fe3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43784, "upload_time": "2018-01-03T21:10:45", "url": "https://files.pythonhosted.org/packages/c1/4e/f427ff2088e712dc46daf94d8e3a8d3124dfec1af222f03cd31f153f00f9/aioftp-0.9.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "026e688e2f27565732f806d89e2163d5", "sha256": "11b5fab43a40f08452e320bc764275c793a63bc0ddd59df80376254da8715dd5" }, "downloads": -1, "filename": "aioftp-0.13.0-py3-none-any.whl", "has_sig": false, "md5_digest": "026e688e2f27565732f806d89e2163d5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">= 3.5.3", "size": 36340, "upload_time": "2019-03-24T12:12:32", "url": "https://files.pythonhosted.org/packages/c7/f7/ab4ac2b8103ba9d06d3199988431fbe406d0d91a211e8569cd16075146fd/aioftp-0.13.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "804eb42a4910967808315c868ae9f79a", "sha256": "5711c03433b510c101e9337069033133cca19b508b5162b414bed24320de6c18" }, "downloads": -1, "filename": "aioftp-0.13.0.tar.gz", "has_sig": false, "md5_digest": "804eb42a4910967808315c868ae9f79a", "packagetype": "sdist", "python_version": "source", "requires_python": ">= 3.5.3", "size": 87069, "upload_time": "2019-03-24T12:12:34", "url": "https://files.pythonhosted.org/packages/83/d5/f6b10ec9d582f994fb98ea677f8c1f8e68a6e47914d74d716399f95cb699/aioftp-0.13.0.tar.gz" } ] }