1{ lib, buildPythonPackage, fetchPypi, pythonOlder
2, attrs
3, sortedcontainers
4, async_generator
5, idna
6, outcome
7, contextvars
8, pytest
9, pyopenssl
10, trustme
11, sniffio
12, jedi
13, pylint
14}:
15
16buildPythonPackage rec {
17 pname = "trio";
18 version = "0.11.0";
19 disabled = pythonOlder "3.5";
20
21 src = fetchPypi {
22 inherit pname version;
23 sha256 = "3796774aedbf5be581c68f98c79b565654876de6e9a01c6a95e3ec6cd4e4b4c3";
24 };
25
26 checkInputs = [ pytest pyopenssl trustme jedi pylint ];
27 # It appears that the build sandbox doesn't include /etc/services, and these tests try to use it.
28 checkPhase = ''
29 HOME="$(mktemp -d)" py.test -k 'not test_getnameinfo and not test_SocketType_resolve and not test_getprotobyname and not test_waitpid'
30 '';
31 propagatedBuildInputs = [
32 attrs
33 sortedcontainers
34 async_generator
35 idna
36 outcome
37 sniffio
38 ] ++ lib.optionals (pythonOlder "3.7") [ contextvars ];
39
40 meta = {
41 description = "An async/await-native I/O library for humans and snake people";
42 homepage = https://github.com/python-trio/trio;
43 license = with lib.licenses; [ mit asl20 ];
44 maintainers = with lib.maintainers; [ catern ];
45 };
46}