{ "info": { "author": "Mark Lavin", "author_email": "markdlavin@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "aiodjango\n=========\n\nThis is a proof-of-concept experiment to combine a Django WSGI app mixed with\nasync views/websocket handlers using aiohttp. The API is highly unstable\nand I wouldn't recommend that you use this code for anything other than\nwild experimentation.\n\n.. image:: https://travis-ci.org/mlavin/aiodjango.svg\n :target: https://travis-ci.org/mlavin/aiodjango\n\n.. image:: https://codecov.io/github/mlavin/aiodjango/coverage.svg?branch=master\n :target: https://codecov.io/github/mlavin/aiodjango?branch=master\n\n\nHow It Works\n------------\n\n``aidjango.get_aio_application`` builds an application which combines both\nrequest handlers/views from Django and `aiohttp.web `_.\nViews are defined using the normal Django url pattern syntax but\nany handler which is a coroutine is handled by the ``aiohttp`` application\nwhile the rest of the views are handled by the normal Django app.\n\nInternal this makes use of `aiohttp-wsgi `_\nwhich runs the Django WSGI app in a thread-pool to minimize blocking the async\nportions of the app.\n\n\nRunning the Demo\n----------------\n\nThe example project requires Python 3.4+ to run. You should create a virtualenv\nto install the necessary requirements::\n\n $ git clone https://github.com/mlavin/aiodjango.git\n $ cd aiodjango/\n $ mkvirtualenv aiodjango -p `which python3.4`\n (aiodjango) $ add2virtualenv .\n (aiodjango) $ cd example\n (aiodjango) $ pip install -r requirements.txt\n (aiodjango) $ python manage.py migrate\n (aiodjango) $ python manage.py runserver\n\nThis starts the server on http://localhost:8000/ with a new version of Django's\nbuilt-in runserver. For a more multi-process server you can run using the\naiohttp worker along with Gunicorn::\n\n (aiodjango) $ gunicorn example.wsgi:app --worker-class aiohttp.worker.GunicornWebWorker --workers 2", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mlavin/aiodjango", "keywords": null, "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "aiodjango", "package_url": "https://pypi.org/project/aiodjango/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/aiodjango/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/mlavin/aiodjango" }, "release_url": "https://pypi.org/project/aiodjango/0.1.0/", "requires_dist": null, "requires_python": null, "summary": "Utilities for running async aiohttp based routes in the context of a Django project.", "version": "0.1.0" }, "last_serial": 1870779, "releases": { "0.0": [], "0.1.0": [ { "comment_text": "", "digests": { "md5": "19a5cfd067dece7c2a16029ee213c3ad", "sha256": "02cc6cd03c9399007877e306c2a20e40b13438041f2b97bd27b00476f03e86a8" }, "downloads": -1, "filename": "aiodjango-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "19a5cfd067dece7c2a16029ee213c3ad", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9693, "upload_time": "2015-12-20T11:51:54", "url": "https://files.pythonhosted.org/packages/37/53/c745e2a18dcd704b8f8f8f792c31852a0cf4c753eac808a499fd5f965ccd/aiodjango-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c7b04ed0d557adb24ffd169f07e20882", "sha256": "af816fbb239db2965e8375111f1380915324a6f1baa4dd343df00ee89f4e9248" }, "downloads": -1, "filename": "aiodjango-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c7b04ed0d557adb24ffd169f07e20882", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7194, "upload_time": "2015-12-20T11:51:49", "url": "https://files.pythonhosted.org/packages/3e/b9/34ca7e80331c8dbfad76cf60aeca719456f72e40e07e611c487c41d35591/aiodjango-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "19a5cfd067dece7c2a16029ee213c3ad", "sha256": "02cc6cd03c9399007877e306c2a20e40b13438041f2b97bd27b00476f03e86a8" }, "downloads": -1, "filename": "aiodjango-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "19a5cfd067dece7c2a16029ee213c3ad", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9693, "upload_time": "2015-12-20T11:51:54", "url": "https://files.pythonhosted.org/packages/37/53/c745e2a18dcd704b8f8f8f792c31852a0cf4c753eac808a499fd5f965ccd/aiodjango-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c7b04ed0d557adb24ffd169f07e20882", "sha256": "af816fbb239db2965e8375111f1380915324a6f1baa4dd343df00ee89f4e9248" }, "downloads": -1, "filename": "aiodjango-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c7b04ed0d557adb24ffd169f07e20882", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7194, "upload_time": "2015-12-20T11:51:49", "url": "https://files.pythonhosted.org/packages/3e/b9/34ca7e80331c8dbfad76cf60aeca719456f72e40e07e611c487c41d35591/aiodjango-0.1.0.tar.gz" } ] }