Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/saghul/pyuv
Python interface for libuv
https://github.com/saghul/pyuv
asynchronous libuv python
Last synced: 1 day ago
JSON representation
Python interface for libuv
- Host: GitHub
- URL: https://github.com/saghul/pyuv
- Owner: saghul
- License: mit
- Created: 2011-11-17T07:52:21.000Z (about 13 years ago)
- Default Branch: v1.x
- Last Pushed: 2023-05-15T16:48:01.000Z (over 1 year ago)
- Last Synced: 2024-10-29T17:55:19.169Z (3 months ago)
- Topics: asynchronous, libuv, python
- Language: C
- Homepage: https://pyuv.readthedocs.io
- Size: 1.94 MB
- Stars: 1,116
- Watchers: 42
- Forks: 105
- Open Issues: 11
-
Metadata Files:
- Readme: README.rst
- Changelog: ChangeLog
- License: LICENSE
Awesome Lists containing this project
- starred-awesome - pyuv - Python interface for libuv (C)
README
================================
pyuv: Python interface for libuv
================================.. image:: https://badge.fury.io/py/pyuv.png
:target: http://badge.fury.io/py/pyuvpyuv is a Python module which provides an interface to 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 primitivesCI status
=========Stable branch (v1.x)
- Travis CI:
.. image:: https://travis-ci.org/saghul/pyuv.svg?branch=v1.x
:target: http://travis-ci.org/saghul/pyuv- AppVeyor:
.. image:: https://ci.appveyor.com/api/projects/status/ne2un9br9t0qs5cd?svg=true
:target: https://ci.appveyor.com/project/saghul/pyuvVersioning
==========Starting with version 1.0.0, pyuv follows the `Semantic Versioning `_
specification, like libuv does.All releases are downloadable from `the GitHub tags page `_,
and the latest stable release from `PyPI `_.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_inplaceMicrosoft 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é
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 :-)