1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 fetchFromGitHub, 6 hatchling, 7 plumbum, 8 pytestCheckHook, 9 pythonOlder, 10}: 11 12buildPythonPackage rec { 13 pname = "rpyc"; 14 version = "6.0.2"; 15 pyproject = true; 16 17 disabled = pythonOlder "3.7"; 18 19 src = fetchFromGitHub { 20 owner = "tomerfiliba"; 21 repo = "rpyc"; 22 tag = version; 23 hash = "sha256-KLAOt0FStHV0senU/I4chxgn3PPM59CGhjTr/5U0sa8="; 24 }; 25 26 build-system = [ hatchling ]; 27 28 dependencies = [ plumbum ]; 29 30 nativeCheckInputs = [ pytestCheckHook ]; 31 32 preCheck = '' 33 export PYTHONPATH=$(pwd)/tests:$PYTHONPATH 34 ''; 35 36 disabledTests = [ 37 # Disable tests that requires network access 38 "test_api" 39 "test_close_timeout" 40 "test_deploy" 41 "test_listing" 42 "test_pruning" 43 "test_rpyc" 44 "test_instancecheck_across_connections" 45 # Internal import error 46 "test_modules" 47 # Test is outdated 48 # ssl.SSLError: [SSL: NO_CIPHERS_AVAILABLE] no ciphers available (_ssl.c:997) 49 "test_ssl_conenction" 50 ]; 51 52 disabledTestPaths = [ 53 # Internal import issue 54 "tests/test_attributes.py" 55 "tests/test_service_pickle.py" 56 "tests/test_affinity.py" 57 "tests/test_magic.py" 58 ]; 59 60 pythonImportsCheck = [ "rpyc" ]; 61 62 doCheck = !stdenv.hostPlatform.isDarwin; 63 64 meta = with lib; { 65 description = "Remote Python Call (RPyC), a transparent and symmetric RPC library"; 66 homepage = "https://rpyc.readthedocs.org"; 67 changelog = "https://github.com/tomerfiliba-org/rpyc/blob/${version}/CHANGELOG.rst"; 68 license = with licenses; [ mit ]; 69 maintainers = with maintainers; [ fab ]; 70 }; 71}