2018-05-08 23:19:48 +01:00
|
|
|
{ lib, buildPythonPackage, fetchPypi, pythonOlder
|
|
|
|
, attrs
|
|
|
|
, sortedcontainers
|
|
|
|
, async_generator
|
|
|
|
, idna
|
|
|
|
, outcome
|
|
|
|
, contextvars
|
|
|
|
, pytest
|
|
|
|
, pyopenssl
|
|
|
|
, trustme
|
2018-09-08 00:02:55 +01:00
|
|
|
, sniffio
|
2018-10-25 19:24:56 +01:00
|
|
|
, jedi
|
|
|
|
, pylint
|
2018-05-08 23:19:48 +01:00
|
|
|
}:
|
|
|
|
|
|
|
|
buildPythonPackage rec {
|
|
|
|
pname = "trio";
|
2018-10-25 19:24:56 +01:00
|
|
|
version = "0.9.0";
|
2018-05-08 23:19:48 +01:00
|
|
|
disabled = pythonOlder "3.5";
|
|
|
|
|
|
|
|
src = fetchPypi {
|
|
|
|
inherit pname version;
|
2018-10-25 19:24:56 +01:00
|
|
|
sha256 = "6d905d950dfa1db3fad6b5ef5637c221947123fd2b0e112033fecfc582318c3b";
|
2018-05-08 23:19:48 +01:00
|
|
|
};
|
|
|
|
|
2018-10-25 19:24:56 +01:00
|
|
|
checkInputs = [ pytest pyopenssl trustme jedi pylint ];
|
2018-05-08 23:19:48 +01:00
|
|
|
# It appears that the build sandbox doesn't include /etc/services, and these tests try to use it.
|
|
|
|
checkPhase = ''
|
2018-10-25 19:24:56 +01:00
|
|
|
HOME="$(mktemp -d)" py.test -k 'not test_getnameinfo and not test_SocketType_resolve and not test_getprotobyname and not test_waitpid'
|
2018-05-08 23:19:48 +01:00
|
|
|
'';
|
|
|
|
propagatedBuildInputs = [
|
|
|
|
attrs
|
|
|
|
sortedcontainers
|
|
|
|
async_generator
|
|
|
|
idna
|
|
|
|
outcome
|
2018-09-08 00:02:55 +01:00
|
|
|
sniffio
|
2018-05-08 23:19:48 +01:00
|
|
|
] ++ lib.optionals (pythonOlder "3.7") [ contextvars ];
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
description = "An async/await-native I/O library for humans and snake people";
|
|
|
|
homepage = https://github.com/python-trio/trio;
|
|
|
|
license = with lib.licenses; [ mit asl20 ];
|
|
|
|
maintainers = with lib.maintainers; [ catern ];
|
|
|
|
};
|
|
|
|
}
|