Pyuv Save

Python interface for libuv

Project README

================================ pyuv: Python interface for libuv

.. image:: https://badge.fury.io/py/pyuv.png :target: http://badge.fury.io/py/pyuv

pyuv is a Python module which provides an interface to libuv. libuv <http://github.com/libuv/libuv>_ is a high performance asynchronous networking and platform abstraction library.

libuv is built on top of epoll/kequeue/event ports/etc on Unix and IOCP on Windows systems providing a consistent API on top of them.

pyuv's features:

  • Non-blocking TCP sockets
  • Non-blocking named pipes
  • UDP support (including multicast)
  • Timers
  • Child process spawning
  • Asynchronous DNS resolution (getaddrinfo)
  • Asynchronous file system APIs
  • High resolution time
  • System memory information
  • System CPUs information
  • Network interfaces information
  • Thread pool scheduling
  • ANSI escape code controlled TTY
  • File system events (inotify style and stat based)
  • IPC and TCP socket sharing between processes
  • Arbitrary file descriptor polling
  • Thread synchronization primitives

CI status

Stable branch (v1.x)

Versioning

Starting with version 1.0.0, pyuv follows the Semantic Versioning <http://semver.org/>_ specification, like libuv does.

All releases are downloadable from the GitHub tags page <https://github.com/saghul/pyuv/tags>, and the latest stable release from PyPI <https://pypi.python.org/pypi/pyuv>.

Documentation

http://readthedocs.org/docs/pyuv/

Installing

pyuv can be installed via pip as follows:

::

pip install pyuv

Building

Get the source:

::

git clone https://github.com/saghul/pyuv

Linux:

::

./build_inplace

Mac OSX:

::

(XCode needs to be installed)
export ARCHFLAGS="-arch x86_64"
./build_inplace

Microsoft Windows (with Visual Studio):

::

python setup.py build_ext --inplace

Running the test suite

There are several ways of running the test ruite:

  • Run the test with the current Python interpreter:

    From the toplevel directory, run: nosetests -v

  • Use Tox to run the test suite in several virtualenvs with several interpreters

    From the toplevel directory, run: tox this will run the test suite on Python 2.7, 3.3 and 3.4 (you'll need to have them installed beforehand)

Author

Saúl Ibarra Corretgé [email protected]

License

Unless stated otherwise on-file pyuv uses the MIT license, check LICENSE file.

Python versions

Python 2.7, and Python >= 3.3 versions are supported.

Contributing

If you'd like to contribute, fork the project, make a patch and send a pull request. Have a look at the surrounding code and please, make yours look alike :-)

Open Source Agenda is not affiliated with "Pyuv" Project. README Source: saghul/pyuv
Stars
1,111
Open Issues
11
Last Commit
11 months ago
Repository
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating