1{ lib 2, stdenv 3, buildPythonPackage 4, fetchFromGitHub 5, exceptiongroup 6, pytest-trio 7, pytestCheckHook 8, trio 9, trustme 10, wsproto 11}: 12 13buildPythonPackage rec { 14 pname = "trio-websocket"; 15 version = "0.10.2"; 16 format = "setuptools"; 17 18 src = fetchFromGitHub { 19 owner = "HyperionGray"; 20 repo = "trio-websocket"; 21 rev = version; 22 hash = "sha256-djoTxkIKY52l+WnxL1FwlqrU/zvsLVkPUAHn9BxJ45k="; 23 }; 24 25 propagatedBuildInputs = [ 26 exceptiongroup 27 trio 28 wsproto 29 ]; 30 31 nativeCheckInputs = [ 32 pytest-trio 33 pytestCheckHook 34 trustme 35 ]; 36 37 disabledTests = lib.optionals stdenv.isDarwin [ 38 # Failed: DID NOT RAISE <class 'ValueError'> 39 "test_finalization_dropped_exception" 40 # Timing related 41 "test_client_close_timeout" 42 "test_cm_exit_with_pending_messages" 43 "test_server_close_timeout" 44 "test_server_handler_exit" 45 "test_server_open_timeout" 46 ]; 47 48 __darwinAllowLocalNetworking = true; 49 50 pythonImportsCheck = [ "trio_websocket" ]; 51 52 meta = with lib; { 53 changelog = "https://github.com/HyperionGray/trio-websocket/blob/${version}/CHANGELOG.md"; 54 description = "WebSocket client and server implementation for Python Trio"; 55 homepage = "https://github.com/HyperionGray/trio-websocket"; 56 license = licenses.mit; 57 maintainers = with maintainers; [ ]; 58 }; 59}