Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 stdenv, 3 lib, 4 buildPythonPackage, 5 fetchFromGitHub, 6 setuptools, 7 numpy, 8 psutil, 9 pytest-xdist, 10 pytestCheckHook, 11 pythonAtLeast, 12 pythonOlder, 13 trio, 14 untangle, 15}: 16 17buildPythonPackage rec { 18 pname = "pydevd"; 19 version = "3.0.3"; 20 pyproject = true; 21 22 disabled = pythonOlder "3.8"; 23 24 src = fetchFromGitHub { 25 owner = "fabioz"; 26 repo = "PyDev.Debugger"; 27 rev = "pydev_debugger_${lib.replaceStrings [ "." ] [ "_" ] version}"; 28 hash = "sha256-aylmLN7lVUza2lt2K48rJsx3XatXPgPjcmPZ05raLX0="; 29 }; 30 31 __darwinAllowLocalNetworking = true; 32 33 build-system = [ setuptools ]; 34 35 nativeCheckInputs = [ 36 numpy 37 psutil 38 pytest-xdist 39 pytestCheckHook 40 trio 41 untangle 42 ]; 43 44 disabledTests = 45 [ 46 # Require network connection 47 "test_completion_sockets_and_messages" 48 "test_path_translation" 49 "test_attach_to_pid_no_threads" 50 "test_attach_to_pid_halted" 51 "test_remote_debugger_threads" 52 "test_path_translation_and_source_reference" 53 "test_attach_to_pid" 54 "test_terminate" 55 "test_gui_event_loop_custom" 56 # AssertionError: assert '/usr/bin/' == '/usr/bin' 57 # https://github.com/fabioz/PyDev.Debugger/issues/227 58 "test_to_server_and_to_client" 59 # AssertionError pydevd_tracing.set_trace_to_threads(tracing_func) == 0 60 "test_step_next_step_in_multi_threads" 61 "test_tracing_basic" 62 "test_tracing_other_threads" 63 # subprocess.CalledProcessError 64 "test_find_main_thread_id" 65 ] 66 ++ lib.optionals (pythonAtLeast "3.12") [ 67 "test_case_handled_and_unhandled_exception_generator" 68 "test_case_stop_async_iteration_exception" 69 "test_case_unhandled_exception_generator" 70 "test_function_breakpoints_async" 71 # raise segmentation fault 72 # https://github.com/fabioz/PyDev.Debugger/issues/269 73 "test_evaluate_expression" 74 ] 75 ++ lib.optionals stdenv.isDarwin [ 76 "test_multiprocessing_simple" 77 "test_evaluate_exception_trace" 78 ]; 79 80 pythonImportsCheck = [ "pydevd" ]; 81 82 meta = with lib; { 83 description = "PyDev.Debugger (used in PyDev, PyCharm and VSCode Python)"; 84 homepage = "https://github.com/fabioz/PyDev.Debugger"; 85 license = licenses.epl10; 86 maintainers = with maintainers; [ onny ]; 87 mainProgram = "pydevd"; 88 }; 89}