1{ lib
2, buildPythonPackage
3, fetchPypi
4, isPy3k
5, pytestCheckHook
6, sphinx
7, stdenv
8}:
9
10buildPythonPackage rec {
11 pname = "curio";
12 version = "1.6";
13 format = "setuptools";
14 disabled = !isPy3k;
15
16 src = fetchPypi {
17 inherit pname version;
18 hash = "sha256-VipYbbICFrp9K+gmPeuesHnlYEj5uJBtEdX0WqgcUkc=";
19 };
20
21 nativeCheckInputs = [
22 pytestCheckHook
23 sphinx
24 ];
25
26 __darwinAllowLocalNetworking = true;
27
28 disabledTests = [
29 "test_aside_basic" # times out
30 "test_write_timeout" # flaky, does not always time out
31 "test_aside_cancel" # fails because modifies PYTHONPATH and cant find pytest
32 "test_ssl_outgoing" # touches network
33 "test_unix_echo" # socket bind error on hydra when built with other packages
34 "test_unix_ssl_server" # socket bind error on hydra when built with other packages
35 ] ++ lib.optionals stdenv.isDarwin [
36 # connects to python.org:1, expects an OsError, hangs in the darwin sandbox
37 "test_create_bad_connection"
38 ];
39
40 pythonImportsCheck = [ "curio" ];
41
42 meta = with lib; {
43 description = "Library for performing concurrent I/O with coroutines in Python";
44 homepage = "https://github.com/dabeaz/curio";
45 changelog = "https://github.com/dabeaz/curio/raw/${version}/CHANGES";
46 license = licenses.bsd3;
47 maintainers = [ maintainers.marsam ];
48 };
49}