Info: | Motor is a full-featured, non-blocking MongoDB driver for Python Tornado applications. |
---|---|
Author: | A. Jesse Jiryu Davis |
Motor presents a Tornado_callback- or Future-based API for non-blocking access to MongoDB. The source is on GitHub and the docs are on ReadTheDocs.
"Motor uses a clever greenlet-based approach to fully support both synchronous and asynchronous interfaces from a single codebase. It's great to see companies like MongoDB produce first-party asynchronous drivers for their products."
—Ben Darnell, Tornado maintainer
$ pip install motor
Motor works in all the environments officially supported by Tornado. It requires:
- Unix, including Mac OS X. Windows is not supported.
- PyMongo
- Tornado
- Greenlet
- Python 2.6 or later.
- backports.pbkdf2 for faster authentication with MongoDB 3.0+, especially on Python older than 2.7.8, or on Python 3 before Python 3.4.
See "Requirements" for details about compatibility.
Issues with, questions about, or feedback for Motor should be sent to the mongodb-user list on Google Groups.
For confirmed issues or feature requests, open a case in Jira in the "MOTOR" project. Please include all of the following information:
Detailed steps to reproduce the problem, including your code and a full traceback, if possible.
What you expected to happen, and what actually happened.
The exact python version used, with patch level:
$ python -c "import sys; print(sys.version)"
The exact version of PyMongo used, with patch level:
$ python -c "import pymongo; print(pymongo.version); print(pymongo.has_c())"
The exact Tornado version:
$ python -c "import tornado; print(tornado.version)"
The operating system and version (e.g. RedHat Enterprise Linux 6.4, OSX 10.9.5, ...)
Motor's documentation is on ReadTheDocs.
To build the documentation, install sphinx and do cd doc; make html
.
See the examples on ReadTheDocs.
Run python setup.py test
.
Tests are located in the test/
directory.
In Python 2.6, unittest2 is automatically installed.