Python interface for libuv
Project description
pyuv is a Python module which provides an interface to libuv. libuv (http://github.com/joyent/libuv) is a high performance asynchronous networking library, used as the platform layer for NodeJS (http://nodejs.org).
libuv is written and maintained by Joyent Inc. and contributors. It’s built on top of libev and libeio 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
Timers
Child process spawning
Asynchronous DNS (gethostbyname, getaddrbyname, getnameinfo, getaddrinfo)
Asynchronous file system APIs
High resolution time
Thread pool scheduling
ANSI escape code controlled TTY
File system events (initify style)
IPC and TCP socket sharing between processes
Documentation
Building
- Linux:
./build_inplace
- Mac OSX:
(XCode needs to be installed) export CC=”gcc -isysroot /Developer/SDKs/MacOSX10.6.sdk” export ARCHFLAGS=”-arch x86_64” ./build_inplace
- Microsoft Windows:
(MinGW and MSYS need to be installed) ./build_inplace
License
Unless stated otherwise on-file pyuv uses the MIT license, check LICENSE file.
Roadmap
Check TODO file.
Python version
Python >= 2.6 is supported. Yes, that includes Python 3 :-)
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 :-)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.