1{
2 lib,
3 fetchFromGitHub,
4 buildPythonPackage,
5 isPy3k,
6 zope-interface,
7 twisted,
8 greenlet,
9}:
10
11buildPythonPackage rec {
12 pname = "python3-eventlib";
13 version = "0.3.0";
14 format = "setuptools";
15
16 disabled = !isPy3k;
17
18 src = fetchFromGitHub {
19 owner = "AGProjects";
20 repo = "python3-eventlib";
21 rev = version;
22 hash = "sha256-LFW3rCGa7A8tk6SjgYgjkLQ+72GE2WN8wG+XkXYTAoQ=";
23 };
24
25 propagatedBuildInputs = [
26 zope-interface
27 twisted
28 greenlet
29 ];
30
31 pythonImportsCheck = [ "eventlib" ];
32
33 meta = with lib; {
34 description = "Networking library written in Python";
35 homepage = "https://github.com/AGProjects/python3-eventlib";
36 license = licenses.lgpl21Plus;
37 maintainers = with maintainers; [ chanley ];
38 longDescription = ''
39 Eventlib is a networking library written in Python. It achieves high
40 scalability by using non-blocking I/O while at the same time retaining
41 high programmer usability by using coroutines to make the non-blocking io
42 operations appear blocking at the source code level.
43 '';
44 };
45}