debugpy 1.8.3__zip → 1.8.6__zip

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. {debugpy-1.8.3/src/debugpy.egg-info → debugpy-1.8.6}/PKG-INFO +1 -1
  2. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_calltip_util.py +19 -21
  3. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_completer.py +30 -30
  4. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_execfile.py +3 -1
  5. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_filesystem_encoding.py +43 -0
  6. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_getopt.py +35 -32
  7. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_imports_tipper.py +83 -84
  8. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_jy_imports_tipper.py +92 -99
  9. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_log.py +2 -3
  10. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_saved_modules.py +51 -27
  11. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_sys_patch.py +11 -7
  12. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_tipper_common.py +6 -5
  13. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/fsnotify/__init__.py +34 -38
  14. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_console_utils.py +71 -69
  15. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_import_hook.py +1 -3
  16. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_imports.py +0 -1
  17. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_ipython_console.py +14 -16
  18. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_ipython_console_011.py +81 -93
  19. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_is_thread_alive.py +3 -3
  20. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_localhost.py +9 -8
  21. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_log.py +33 -25
  22. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_monkey.py +183 -170
  23. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_monkey_qt.py +33 -29
  24. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_override.py +6 -4
  25. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_umd.py +19 -18
  26. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_versioncheck.py +3 -3
  27. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles.py +165 -138
  28. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_coverage.py +77 -0
  29. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_nose.py +35 -36
  30. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_parallel.py +22 -23
  31. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_parallel_client.py +37 -57
  32. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_pytest2.py +54 -52
  33. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_unittest.py +28 -37
  34. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_xml_rpc.py +56 -53
  35. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/__main__pydevd_gen_debug_adapter_protocol.py +604 -0
  36. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/debugProtocol.json +551 -445
  37. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/pydevd_base_schema.py +25 -29
  38. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/pydevd_schema.py +17458 -0
  39. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/pydevd_schema_log.py +11 -12
  40. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevconsole_code.py +18 -19
  41. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_additional_thread_info.py +41 -0
  42. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_additional_thread_info_regular.py +327 -0
  43. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_api.py +263 -214
  44. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_breakpoints.py +7 -10
  45. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_bytecode_utils.py +187 -92
  46. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_bytecode_utils_py311.py +105 -0
  47. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_code_to_source.py +46 -51
  48. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_collect_bytecode_info.py +239 -176
  49. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_comm.py +370 -297
  50. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_comm_constants.py +78 -86
  51. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_command_line_handling.py +55 -59
  52. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_concurrency_analyser/pydevd_concurrency_logger.py +194 -58
  53. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_concurrency_analyser/pydevd_thread_wrappers.py +2 -3
  54. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_console.py +18 -23
  55. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_constants.py +157 -127
  56. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_custom_frames.py +10 -12
  57. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_cython.c +35217 -23106
  58. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_cython.pxd +15 -0
  59. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_cython.pyx +802 -511
  60. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_cython_wrapper.py +18 -7
  61. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_daemon_thread.py +32 -24
  62. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_defaults.py +11 -13
  63. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_dont_trace.py +16 -16
  64. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_dont_trace_files.py +27 -2
  65. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_exec2.py +1 -1
  66. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_extension_api.py +4 -5
  67. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_extension_utils.py +8 -10
  68. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_filtering.py +50 -45
  69. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_frame.py +462 -407
  70. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_frame_utils.py +63 -61
  71. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_gevent_integration.py +14 -16
  72. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_import_class.py +27 -25
  73. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_io.py +40 -42
  74. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_json_debug_options.py +200 -0
  75. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_net_command.py +20 -19
  76. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_net_command_factory_json.py +199 -108
  77. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_net_command_factory_xml.py +121 -73
  78. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_plugin_utils.py +208 -0
  79. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_process_net_command.py +206 -159
  80. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_process_net_command_json.py +346 -334
  81. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_referrers.py +75 -80
  82. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_reload.py +35 -35
  83. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_resolver.py +116 -124
  84. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_runpy.py +44 -58
  85. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_safe_repr.py +51 -55
  86. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_save_locals.py +4 -2
  87. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_signature.py +24 -24
  88. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_source_mapping.py +19 -20
  89. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_stackless.py +45 -49
  90. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_suspended_frames.py +61 -58
  91. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_thread_lifecycle.py +23 -13
  92. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_timeout.py +29 -31
  93. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_trace_dispatch.py +41 -11
  94. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_trace_dispatch_regular.py +117 -55
  95. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_traceproperty.py +11 -14
  96. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_utils.py +90 -89
  97. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_vars.py +106 -97
  98. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_vm_type.py +40 -0
  99. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_xml.py +56 -46
  100. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_eval_cython_wrapper.py +5 -5
  101. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_eval_main.py +71 -0
  102. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_evaluator.c +11165 -5326
  103. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_tracing.py +5 -6
  104. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_modify_bytecode.py +53 -56
  105. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/__init__.py +1 -0
  106. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/bytecode.py +4 -6
  107. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/cfg.py +6 -26
  108. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/concrete.py +7 -21
  109. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/flags.py +5 -24
  110. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/instr.py +10 -34
  111. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/peephole_opt.py +1 -4
  112. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/__init__.py +2 -6
  113. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_bytecode.py +3 -5
  114. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_cfg.py +11 -31
  115. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_code.py +2 -2
  116. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_concrete.py +14 -41
  117. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_flags.py +2 -4
  118. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_instr.py +7 -18
  119. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_misc.py +6 -18
  120. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_peephole_opt.py +7 -18
  121. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/util_annotation.py +1 -3
  122. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/pydevd_fix_code.py +14 -19
  123. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_sys_monitoring/_pydevd_sys_monitoring.py +1927 -0
  124. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_sys_monitoring/_pydevd_sys_monitoring_cython.c +43058 -0
  125. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_sys_monitoring/_pydevd_sys_monitoring_cython.pxd +46 -0
  126. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_sys_monitoring/_pydevd_sys_monitoring_cython.pyx +1934 -0
  127. debugpy-1.8.6/src/debugpy/_vendored/pydevd/_pydevd_sys_monitoring/pydevd_sys_monitoring.py +16 -0
  128. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_app_engine_debug_startup.py +12 -11
  129. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_coverage.py +30 -32
  130. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhook.py +58 -54
  131. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookglut.py +20 -24
  132. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookgtk.py +8 -7
  133. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookgtk3.py +8 -6
  134. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookpyglet.py +11 -8
  135. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookqt4.py +21 -18
  136. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookqt5.py +17 -15
  137. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookqt6.py +17 -15
  138. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhooktk.py +6 -4
  139. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookwx.py +14 -10
  140. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/matplotlibtools.py +30 -26
  141. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydev_ipython/qt.py +24 -0
  142. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/qt_for_kernel.py +37 -34
  143. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/qt_loaders.py +86 -73
  144. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/version.py +7 -7
  145. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydev_pysrc.py +1 -0
  146. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_run_in_console.py +23 -24
  147. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydev_sitecustomize/sitecustomize.py +267 -0
  148. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevconsole.py +55 -47
  149. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd.py +732 -508
  150. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_always_live_program.py +40 -0
  151. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_check.py +1 -0
  152. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_test_attach_to_process.py +11 -0
  153. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_test_attach_to_process_linux.py +75 -0
  154. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/add_code_to_python_process.py +130 -125
  155. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_amd64.dll +0 -0
  156. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_amd64.pdb +0 -0
  157. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_pydevd.py +89 -0
  158. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_script.py +41 -32
  159. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_x86.dll +0 -0
  160. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_x86.pdb +0 -0
  161. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_utils.hpp +1 -0
  162. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_version.hpp +9 -1
  163. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_amd64.exe +0 -0
  164. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_amd64.pdb +0 -0
  165. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_x86.exe +0 -0
  166. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_x86.pdb +0 -0
  167. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/lldb_prepare.py +10 -9
  168. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_amd64.dll +0 -0
  169. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_amd64.pdb +0 -0
  170. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_x86.dll +0 -0
  171. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_x86.pdb +0 -0
  172. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/__init__.py +103 -119
  173. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/breakpoint.py +457 -516
  174. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/compat.py +33 -15
  175. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/crash.py +336 -281
  176. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/debug.py +101 -131
  177. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/disasm.py +148 -153
  178. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/event.py +310 -302
  179. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/interactive.py +235 -208
  180. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/module.py +185 -218
  181. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/process.py +428 -564
  182. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/registry.py +54 -53
  183. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/search.py +69 -73
  184. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/sql.py +158 -170
  185. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/system.py +143 -213
  186. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/textio.py +302 -333
  187. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/thread.py +220 -239
  188. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/util.py +198 -177
  189. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/__init__.py +11 -11
  190. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/advapi32.py +1191 -713
  191. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/context_amd64.py +248 -194
  192. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/context_i386.py +132 -120
  193. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/dbghelp.py +450 -346
  194. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/defines.py +305 -286
  195. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/gdi32.py +526 -0
  196. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/kernel32.py +1479 -1097
  197. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/ntdll.py +579 -0
  198. debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/peb_teb.py +3517 -0
  199. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/psapi.py +54 -31
  200. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/shell32.py +170 -149
  201. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/shlwapi.py +190 -108
  202. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/user32.py +542 -437
  203. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/version.py +489 -442
  204. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/wtsapi32.py +83 -65
  205. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/window.py +70 -76
  206. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/attach.cpp +17 -9
  207. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/compile_windows.bat +1 -1
  208. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_file_utils.py +141 -120
  209. {debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types → debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_plugins}/__init__.py +1 -0
  210. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_plugins/django_debug.py +175 -149
  211. {debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_plugins → debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions}/__init__.py +1 -0
  212. {debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions → debugpy-1.8.6/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types}/__init__.py +1 -0
  213. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types/pydevd_helpers.py +5 -5
  214. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types/pydevd_plugin_numpy_types.py +28 -28
  215. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types/pydevd_plugin_pandas_types.py +22 -30
  216. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types/pydevd_plugins_django_form_str.py +3 -2
  217. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_plugins/jinja2_debug.py +130 -108
  218. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_plugins/pydevd_line_validation.py +27 -14
  219. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_tracing.py +85 -66
  220. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/setup_pydevd_cython.py +96 -59
  221. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_version.py +3 -3
  222. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/common/messaging.py +2 -1
  223. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/server/cli.py +32 -17
  224. {debugpy-1.8.3 → debugpy-1.8.6/src/debugpy.egg-info}/PKG-INFO +1 -1
  225. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy.egg-info/SOURCES.txt +6 -9
  226. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_filesystem_encoding.py +0 -41
  227. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_coverage.py +0 -76
  228. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/__main__pydevd_gen_debug_adapter_protocol.py +0 -592
  229. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/pydevd_schema.py +0 -19514
  230. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_additional_thread_info.py +0 -19
  231. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_additional_thread_info_regular.py +0 -153
  232. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_json_debug_options.py +0 -204
  233. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_plugin_utils.py +0 -91
  234. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_trace_api.py +0 -62
  235. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_vm_type.py +0 -41
  236. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_eval_main.py +0 -48
  237. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/COPYING +0 -21
  238. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/INSTALLER +0 -1
  239. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/METADATA +0 -77
  240. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/RECORD +0 -42
  241. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/REQUESTED +0 -0
  242. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/WHEEL +0 -5
  243. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/direct_url.json +0 -1
  244. debugpy-1.8.3/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/top_level.txt +0 -1
  245. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydev_ipython/qt.py +0 -23
  246. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydev_pysrc.py +0 -1
  247. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydev_sitecustomize/sitecustomize.py +0 -237
  248. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_always_live_program.py +0 -32
  249. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_test_attach_to_process.py +0 -9
  250. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_test_attach_to_process_linux.py +0 -74
  251. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_amd64.dll +0 -0
  252. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_amd64.pdb +0 -0
  253. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_pydevd.py +0 -79
  254. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_x86.dll +0 -0
  255. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_x86.pdb +0 -0
  256. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_amd64.exe +0 -0
  257. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_amd64.pdb +0 -0
  258. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_x86.pdb +0 -0
  259. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_amd64.dll +0 -0
  260. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_amd64.pdb +0 -0
  261. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_x86.dll +0 -0
  262. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_x86.pdb +0 -0
  263. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/gdi32.py +0 -507
  264. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/ntdll.py +0 -539
  265. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/peb_teb.py +0 -3435
  266. {debugpy-1.8.3 → debugpy-1.8.6}/DESCRIPTION.md +0 -0
  267. {debugpy-1.8.3 → debugpy-1.8.6}/LICENSE +0 -0
  268. {debugpy-1.8.3 → debugpy-1.8.6}/MANIFEST.in +0 -0
  269. {debugpy-1.8.3 → debugpy-1.8.6}/README.md +0 -0
  270. {debugpy-1.8.3 → debugpy-1.8.6}/pyproject.toml +0 -0
  271. {debugpy-1.8.3 → debugpy-1.8.6}/setup.cfg +0 -0
  272. {debugpy-1.8.3 → debugpy-1.8.6}/setup.py +0 -0
  273. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/ThirdPartyNotices.txt +0 -0
  274. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/__init__.py +0 -0
  275. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/__main__.py +0 -0
  276. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/__init__.py +0 -0
  277. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/_pydevd_packaging.py +0 -0
  278. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/_util.py +0 -0
  279. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/force_pydevd.py +0 -0
  280. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_bundle/__init__.py +0 -0
  281. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydev_runfiles/__init__.py +0 -0
  282. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/__init__.py +0 -0
  283. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/__init__.py +0 -0
  284. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/debugProtocolCustom.json +0 -0
  285. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_concurrency_analyser/__init__.py +0 -0
  286. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/.gitignore +0 -0
  287. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/__init__.py +0 -0
  288. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_evaluator.pxd +0 -0
  289. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_evaluator.pyx +0 -0
  290. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_evaluator.template.pyx +0 -0
  291. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/release_mem.h +0 -0
  292. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/README.txt +0 -0
  293. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/__init__.py +0 -0
  294. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/README +0 -0
  295. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_ipython/__init__.py +0 -0
  296. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydev_sitecustomize/__not_in_default_pythonpath.txt +0 -0
  297. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/README.txt +0 -0
  298. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_custom_pyeval_settrace.hpp +0 -0
  299. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_custom_pyeval_settrace_310.hpp +0 -0
  300. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_custom_pyeval_settrace_311.hpp +0 -0
  301. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_custom_pyeval_settrace_common.hpp +0 -0
  302. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_settrace.hpp +0 -0
  303. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/python.h +0 -0
  304. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/ref_utils.hpp +0 -0
  305. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/.gitignore +0 -0
  306. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/attach.cpp +0 -0
  307. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_linux.sh +0 -0
  308. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_mac.sh +0 -0
  309. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_manylinux.cmd +0 -0
  310. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/attach.h +0 -0
  311. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/inject_dll.cpp +0 -0
  312. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/py_win_helpers.hpp +0 -0
  313. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/run_code_in_memory.hpp +0 -0
  314. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/run_code_on_dllmain.cpp +0 -0
  315. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/stdafx.cpp +0 -0
  316. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/stdafx.h +0 -0
  317. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/targetver.h +0 -0
  318. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/README.md +0 -0
  319. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/adapter/__init__.py +0 -0
  320. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/adapter/__main__.py +0 -0
  321. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/adapter/clients.py +0 -0
  322. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/adapter/components.py +0 -0
  323. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/adapter/launchers.py +0 -0
  324. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/adapter/servers.py +0 -0
  325. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/adapter/sessions.py +0 -0
  326. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/common/__init__.py +0 -0
  327. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/common/json.py +0 -0
  328. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/common/log.py +0 -0
  329. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/common/singleton.py +0 -0
  330. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/common/sockets.py +0 -0
  331. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/common/stacks.py +0 -0
  332. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/common/timestamp.py +0 -0
  333. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/common/util.py +0 -0
  334. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/launcher/__init__.py +0 -0
  335. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/launcher/__main__.py +0 -0
  336. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/launcher/debuggee.py +0 -0
  337. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/launcher/handlers.py +0 -0
  338. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/launcher/output.py +0 -0
  339. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/launcher/winapi.py +0 -0
  340. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/public_api.py +0 -0
  341. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/server/__init__.py +0 -0
  342. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/server/api.py +0 -0
  343. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy/server/attach_pid_injected.py +0 -0
  344. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy.egg-info/dependency_links.txt +0 -0
  345. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy.egg-info/entry_points.txt +0 -0
  346. {debugpy-1.8.3 → debugpy-1.8.6}/src/debugpy.egg-info/top_level.txt +0 -0
  347. {debugpy-1.8.3 → debugpy-1.8.6}/versioneer.py +0 -0
@@ -5,12 +5,12 @@ from contextlib import contextmanager
5
5
 
6
6
 
7
7
  class IORedirector:
8
- '''
8
+ """
9
9
  This class works to wrap a stream (stdout/stderr) with an additional redirect.
10
- '''
10
+ """
11
11
 
12
12
  def __init__(self, original, new_redirect, wrap_buffer=False):
13
- '''
13
+ """
14
14
  :param stream original:
15
15
  The stream to be wrapped (usually stdout/stderr, but could be None).
16
16
 
@@ -20,11 +20,11 @@ class IORedirector:
20
20
  :param bool wrap_buffer:
21
21
  Whether to create a buffer attribute (needed to mimick python 3 s
22
22
  tdout/stderr which has a buffer to write binary data).
23
- '''
23
+ """
24
24
  self._lock = ForkSafeLock(rlock=True)
25
25
  self._writing = False
26
26
  self._redirect_to = (original, new_redirect)
27
- if wrap_buffer and hasattr(original, 'buffer'):
27
+ if wrap_buffer and hasattr(original, "buffer"):
28
28
  self.buffer = IORedirector(original.buffer, new_redirect.buffer, False)
29
29
 
30
30
  def write(self, s):
@@ -36,20 +36,20 @@ class IORedirector:
36
36
  self._writing = True
37
37
  try:
38
38
  for r in self._redirect_to:
39
- if hasattr(r, 'write'):
39
+ if hasattr(r, "write"):
40
40
  r.write(s)
41
41
  finally:
42
42
  self._writing = False
43
43
 
44
44
  def isatty(self):
45
45
  for r in self._redirect_to:
46
- if hasattr(r, 'isatty'):
46
+ if hasattr(r, "isatty"):
47
47
  return r.isatty()
48
48
  return False
49
49
 
50
50
  def flush(self):
51
51
  for r in self._redirect_to:
52
- if hasattr(r, 'flush'):
52
+ if hasattr(r, "flush"):
53
53
  r.flush()
54
54
 
55
55
  def __getattr__(self, name):
@@ -60,9 +60,8 @@ class IORedirector:
60
60
 
61
61
 
62
62
  class RedirectToPyDBIoMessages(object):
63
-
64
63
  def __init__(self, out_ctx, wrap_stream, wrap_buffer, on_write=None):
65
- '''
64
+ """
66
65
  :param out_ctx:
67
66
  1=stdout and 2=stderr
68
67
 
@@ -77,10 +76,10 @@ class RedirectToPyDBIoMessages(object):
77
76
  May be a custom callable to be called when to write something.
78
77
  If not passed the default implementation will create an io message
79
78
  and send it through the debugger.
80
- '''
81
- encoding = getattr(wrap_stream, 'encoding', None)
79
+ """
80
+ encoding = getattr(wrap_stream, "encoding", None)
82
81
  if not encoding:
83
- encoding = os.environ.get('PYTHONIOENCODING', 'utf-8')
82
+ encoding = os.environ.get("PYTHONIOENCODING", "utf-8")
84
83
  self.encoding = encoding
85
84
  self._out_ctx = out_ctx
86
85
  if wrap_buffer:
@@ -102,7 +101,7 @@ class RedirectToPyDBIoMessages(object):
102
101
  if s:
103
102
  # Need s in str
104
103
  if isinstance(s, bytes):
105
- s = s.decode(self.encoding, errors='replace')
104
+ s = s.decode(self.encoding, errors="replace")
106
105
 
107
106
  py_db = self.get_pydb()
108
107
  if py_db is not None:
@@ -114,24 +113,25 @@ class RedirectToPyDBIoMessages(object):
114
113
 
115
114
 
116
115
  class IOBuf:
117
- '''This class works as a replacement for stdio and stderr.
116
+ """This class works as a replacement for stdio and stderr.
118
117
  It is a buffer and when its contents are requested, it will erase what
119
118
  it has so far so that the next return will not return the same contents again.
120
- '''
119
+ """
121
120
 
122
121
  def __init__(self):
123
122
  self.buflist = []
124
123
  import os
125
- self.encoding = os.environ.get('PYTHONIOENCODING', 'utf-8')
124
+
125
+ self.encoding = os.environ.get("PYTHONIOENCODING", "utf-8")
126
126
 
127
127
  def getvalue(self):
128
128
  b = self.buflist
129
129
  self.buflist = [] # clear it
130
- return ''.join(b) # bytes on py2, str on py3.
130
+ return "".join(b) # bytes on py2, str on py3.
131
131
 
132
132
  def write(self, s):
133
133
  if isinstance(s, bytes):
134
- s = s.decode(self.encoding, errors='replace')
134
+ s = s.decode(self.encoding, errors="replace")
135
135
  self.buflist.append(s)
136
136
 
137
137
  def isatty(self):
@@ -145,7 +145,6 @@ class IOBuf:
145
145
 
146
146
 
147
147
  class _RedirectInfo(object):
148
-
149
148
  def __init__(self, original, redirect_to):
150
149
  self.original = original
151
150
  self.redirect_to = redirect_to
@@ -160,25 +159,25 @@ class _RedirectionsHolder:
160
159
  _pydevd_stderr_redirect_ = None
161
160
 
162
161
 
163
- def start_redirect(keep_original_redirection=False, std='stdout', redirect_to=None):
164
- '''
162
+ def start_redirect(keep_original_redirection=False, std="stdout", redirect_to=None):
163
+ """
165
164
  @param std: 'stdout', 'stderr', or 'both'
166
- '''
165
+ """
167
166
  with _RedirectionsHolder._lock:
168
167
  if redirect_to is None:
169
168
  redirect_to = IOBuf()
170
169
 
171
- if std == 'both':
172
- config_stds = ['stdout', 'stderr']
170
+ if std == "both":
171
+ config_stds = ["stdout", "stderr"]
173
172
  else:
174
173
  config_stds = [std]
175
174
 
176
175
  for std in config_stds:
177
176
  original = getattr(sys, std)
178
- stack = getattr(_RedirectionsHolder, '_stack_%s' % std)
177
+ stack = getattr(_RedirectionsHolder, "_stack_%s" % std)
179
178
 
180
179
  if keep_original_redirection:
181
- wrap_buffer = True if hasattr(redirect_to, 'buffer') else False
180
+ wrap_buffer = True if hasattr(redirect_to, "buffer") else False
182
181
  new_std_instance = IORedirector(getattr(sys, std), redirect_to, wrap_buffer=wrap_buffer)
183
182
  setattr(sys, std, new_std_instance)
184
183
  else:
@@ -190,33 +189,33 @@ def start_redirect(keep_original_redirection=False, std='stdout', redirect_to=No
190
189
  return redirect_to
191
190
 
192
191
 
193
- def end_redirect(std='stdout'):
192
+ def end_redirect(std="stdout"):
194
193
  with _RedirectionsHolder._lock:
195
- if std == 'both':
196
- config_stds = ['stdout', 'stderr']
194
+ if std == "both":
195
+ config_stds = ["stdout", "stderr"]
197
196
  else:
198
197
  config_stds = [std]
199
198
  for std in config_stds:
200
- stack = getattr(_RedirectionsHolder, '_stack_%s' % std)
199
+ stack = getattr(_RedirectionsHolder, "_stack_%s" % std)
201
200
  redirect_info = stack.pop()
202
201
  setattr(sys, std, redirect_info.original)
203
202
 
204
203
 
205
204
  def redirect_stream_to_pydb_io_messages(std):
206
- '''
205
+ """
207
206
  :param std:
208
207
  'stdout' or 'stderr'
209
- '''
208
+ """
210
209
  with _RedirectionsHolder._lock:
211
- redirect_to_name = '_pydevd_%s_redirect_' % (std,)
210
+ redirect_to_name = "_pydevd_%s_redirect_" % (std,)
212
211
  if getattr(_RedirectionsHolder, redirect_to_name) is None:
213
212
  wrap_buffer = True
214
213
  original = getattr(sys, std)
215
214
 
216
- redirect_to = RedirectToPyDBIoMessages(1 if std == 'stdout' else 2, original, wrap_buffer)
215
+ redirect_to = RedirectToPyDBIoMessages(1 if std == "stdout" else 2, original, wrap_buffer)
217
216
  start_redirect(keep_original_redirection=True, std=std, redirect_to=redirect_to)
218
217
 
219
- stack = getattr(_RedirectionsHolder, '_stack_%s' % std)
218
+ stack = getattr(_RedirectionsHolder, "_stack_%s" % std)
220
219
  setattr(_RedirectionsHolder, redirect_to_name, stack[-1])
221
220
  return True
222
221
 
@@ -224,17 +223,17 @@ def redirect_stream_to_pydb_io_messages(std):
224
223
 
225
224
 
226
225
  def stop_redirect_stream_to_pydb_io_messages(std):
227
- '''
226
+ """
228
227
  :param std:
229
228
  'stdout' or 'stderr'
230
- '''
229
+ """
231
230
  with _RedirectionsHolder._lock:
232
- redirect_to_name = '_pydevd_%s_redirect_' % (std,)
231
+ redirect_to_name = "_pydevd_%s_redirect_" % (std,)
233
232
  redirect_info = getattr(_RedirectionsHolder, redirect_to_name)
234
233
  if redirect_info is not None: # :type redirect_info: _RedirectInfo
235
234
  setattr(_RedirectionsHolder, redirect_to_name, None)
236
235
 
237
- stack = getattr(_RedirectionsHolder, '_stack_%s' % std)
236
+ stack = getattr(_RedirectionsHolder, "_stack_%s" % std)
238
237
  prev_info = stack.pop()
239
238
 
240
239
  curr = getattr(sys, std)
@@ -246,7 +245,7 @@ def stop_redirect_stream_to_pydb_io_messages(std):
246
245
  def redirect_stream_to_pydb_io_messages_context():
247
246
  with _RedirectionsHolder._lock:
248
247
  redirecting = []
249
- for std in ('stdout', 'stderr'):
248
+ for std in ("stdout", "stderr"):
250
249
  if redirect_stream_to_pydb_io_messages(std):
251
250
  redirecting.append(std)
252
251
 
@@ -255,4 +254,3 @@ def redirect_stream_to_pydb_io_messages_context():
255
254
  finally:
256
255
  for std in redirecting:
257
256
  stop_redirect_stream_to_pydb_io_messages(std)
258
-
@@ -0,0 +1,200 @@
1
+ import json
2
+ import urllib.parse as urllib_parse
3
+
4
+
5
+ class DebugOptions(object):
6
+ __slots__ = [
7
+ "just_my_code",
8
+ "redirect_output",
9
+ "show_return_value",
10
+ "break_system_exit_zero",
11
+ "django_debug",
12
+ "flask_debug",
13
+ "stop_on_entry",
14
+ "max_exception_stack_frames",
15
+ "gui_event_loop",
16
+ "client_os",
17
+ ]
18
+
19
+ def __init__(self):
20
+ self.just_my_code = True
21
+ self.redirect_output = False
22
+ self.show_return_value = False
23
+ self.break_system_exit_zero = False
24
+ self.django_debug = False
25
+ self.flask_debug = False
26
+ self.stop_on_entry = False
27
+ self.max_exception_stack_frames = 0
28
+ self.gui_event_loop = "matplotlib"
29
+ self.client_os = None
30
+
31
+ def to_json(self):
32
+ dct = {}
33
+ for s in self.__slots__:
34
+ dct[s] = getattr(self, s)
35
+ return json.dumps(dct)
36
+
37
+ def update_fom_debug_options(self, debug_options):
38
+ if "DEBUG_STDLIB" in debug_options:
39
+ self.just_my_code = not debug_options.get("DEBUG_STDLIB")
40
+
41
+ if "REDIRECT_OUTPUT" in debug_options:
42
+ self.redirect_output = debug_options.get("REDIRECT_OUTPUT")
43
+
44
+ if "SHOW_RETURN_VALUE" in debug_options:
45
+ self.show_return_value = debug_options.get("SHOW_RETURN_VALUE")
46
+
47
+ if "BREAK_SYSTEMEXIT_ZERO" in debug_options:
48
+ self.break_system_exit_zero = debug_options.get("BREAK_SYSTEMEXIT_ZERO")
49
+
50
+ if "DJANGO_DEBUG" in debug_options:
51
+ self.django_debug = debug_options.get("DJANGO_DEBUG")
52
+
53
+ if "FLASK_DEBUG" in debug_options:
54
+ self.flask_debug = debug_options.get("FLASK_DEBUG")
55
+
56
+ if "STOP_ON_ENTRY" in debug_options:
57
+ self.stop_on_entry = debug_options.get("STOP_ON_ENTRY")
58
+
59
+ if "CLIENT_OS_TYPE" in debug_options:
60
+ self.client_os = debug_options.get("CLIENT_OS_TYPE")
61
+
62
+ # Note: _max_exception_stack_frames cannot be set by debug options.
63
+
64
+ def update_from_args(self, args):
65
+ if "justMyCode" in args:
66
+ self.just_my_code = bool_parser(args["justMyCode"])
67
+ else:
68
+ # i.e.: if justMyCode is provided, don't check the deprecated value
69
+ if "debugStdLib" in args:
70
+ self.just_my_code = not bool_parser(args["debugStdLib"])
71
+
72
+ if "redirectOutput" in args:
73
+ self.redirect_output = bool_parser(args["redirectOutput"])
74
+
75
+ if "showReturnValue" in args:
76
+ self.show_return_value = bool_parser(args["showReturnValue"])
77
+
78
+ if "breakOnSystemExitZero" in args:
79
+ self.break_system_exit_zero = bool_parser(args["breakOnSystemExitZero"])
80
+
81
+ if "django" in args:
82
+ self.django_debug = bool_parser(args["django"])
83
+
84
+ if "flask" in args:
85
+ self.flask_debug = bool_parser(args["flask"])
86
+
87
+ if "jinja" in args:
88
+ self.flask_debug = bool_parser(args["jinja"])
89
+
90
+ if "stopOnEntry" in args:
91
+ self.stop_on_entry = bool_parser(args["stopOnEntry"])
92
+
93
+ self.max_exception_stack_frames = int_parser(args.get("maxExceptionStackFrames", 0))
94
+
95
+ if "guiEventLoop" in args:
96
+ self.gui_event_loop = str(args["guiEventLoop"])
97
+
98
+ if "clientOS" in args:
99
+ self.client_os = str(args["clientOS"]).upper()
100
+
101
+
102
+ def int_parser(s, default_value=0):
103
+ try:
104
+ return int(s)
105
+ except Exception:
106
+ return default_value
107
+
108
+
109
+ def bool_parser(s):
110
+ return s in ("True", "true", "1", True, 1)
111
+
112
+
113
+ def unquote(s):
114
+ return None if s is None else urllib_parse.unquote(s)
115
+
116
+
117
+ DEBUG_OPTIONS_PARSER = {
118
+ "WAIT_ON_ABNORMAL_EXIT": bool_parser,
119
+ "WAIT_ON_NORMAL_EXIT": bool_parser,
120
+ "BREAK_SYSTEMEXIT_ZERO": bool_parser,
121
+ "REDIRECT_OUTPUT": bool_parser,
122
+ "DJANGO_DEBUG": bool_parser,
123
+ "FLASK_DEBUG": bool_parser,
124
+ "FIX_FILE_PATH_CASE": bool_parser,
125
+ "CLIENT_OS_TYPE": unquote,
126
+ "DEBUG_STDLIB": bool_parser,
127
+ "STOP_ON_ENTRY": bool_parser,
128
+ "SHOW_RETURN_VALUE": bool_parser,
129
+ "MULTIPROCESS": bool_parser,
130
+ }
131
+
132
+ DEBUG_OPTIONS_BY_FLAG = {
133
+ "RedirectOutput": "REDIRECT_OUTPUT=True",
134
+ "WaitOnNormalExit": "WAIT_ON_NORMAL_EXIT=True",
135
+ "WaitOnAbnormalExit": "WAIT_ON_ABNORMAL_EXIT=True",
136
+ "BreakOnSystemExitZero": "BREAK_SYSTEMEXIT_ZERO=True",
137
+ "Django": "DJANGO_DEBUG=True",
138
+ "Flask": "FLASK_DEBUG=True",
139
+ "Jinja": "FLASK_DEBUG=True",
140
+ "FixFilePathCase": "FIX_FILE_PATH_CASE=True",
141
+ "DebugStdLib": "DEBUG_STDLIB=True",
142
+ "WindowsClient": "CLIENT_OS_TYPE=WINDOWS",
143
+ "UnixClient": "CLIENT_OS_TYPE=UNIX",
144
+ "StopOnEntry": "STOP_ON_ENTRY=True",
145
+ "ShowReturnValue": "SHOW_RETURN_VALUE=True",
146
+ "Multiprocess": "MULTIPROCESS=True",
147
+ }
148
+
149
+
150
+ def _build_debug_options(flags):
151
+ """Build string representation of debug options from the launch config."""
152
+ return ";".join(DEBUG_OPTIONS_BY_FLAG[flag] for flag in flags or [] if flag in DEBUG_OPTIONS_BY_FLAG)
153
+
154
+
155
+ def _parse_debug_options(opts):
156
+ """Debug options are semicolon separated key=value pairs"""
157
+ options = {}
158
+ if not opts:
159
+ return options
160
+
161
+ for opt in opts.split(";"):
162
+ try:
163
+ key, value = opt.split("=")
164
+ except ValueError:
165
+ continue
166
+ try:
167
+ options[key] = DEBUG_OPTIONS_PARSER[key](value)
168
+ except KeyError:
169
+ continue
170
+
171
+ return options
172
+
173
+
174
+ def _extract_debug_options(opts, flags=None):
175
+ """Return the debug options encoded in the given value.
176
+
177
+ "opts" is a semicolon-separated string of "key=value" pairs.
178
+ "flags" is a list of strings.
179
+
180
+ If flags is provided then it is used as a fallback.
181
+
182
+ The values come from the launch config:
183
+
184
+ {
185
+ type:'python',
186
+ request:'launch'|'attach',
187
+ name:'friendly name for debug config',
188
+ debugOptions:[
189
+ 'RedirectOutput', 'Django'
190
+ ],
191
+ options:'REDIRECT_OUTPUT=True;DJANGO_DEBUG=True'
192
+ }
193
+
194
+ Further information can be found here:
195
+
196
+ https://code.visualstudio.com/docs/editor/debugging#_launchjson-attributes
197
+ """
198
+ if not opts:
199
+ opts = _build_debug_options(flags)
200
+ return _parse_debug_options(opts)
@@ -1,15 +1,17 @@
1
- from _pydevd_bundle.pydevd_constants import DebugInfoHolder, \
2
- get_global_debugger, GetGlobalDebugger, set_global_debugger # Keep for backward compatibility @UnusedImport
1
+ from _pydevd_bundle.pydevd_constants import (
2
+ DebugInfoHolder,
3
+ get_global_debugger,
4
+ GetGlobalDebugger,
5
+ set_global_debugger,
6
+ ) # Keep for backward compatibility @UnusedImport
3
7
  from _pydevd_bundle.pydevd_utils import quote_smart as quote, to_string
4
8
  from _pydevd_bundle.pydevd_comm_constants import ID_TO_MEANING, CMD_EXIT
5
- from _pydevd_bundle.pydevd_constants import HTTP_PROTOCOL, HTTP_JSON_PROTOCOL, \
6
- get_protocol, IS_JYTHON, ForkSafeLock
9
+ from _pydevd_bundle.pydevd_constants import HTTP_PROTOCOL, HTTP_JSON_PROTOCOL, get_protocol, IS_JYTHON, ForkSafeLock
7
10
  import json
8
11
  from _pydev_bundle import pydev_log
9
12
 
10
13
 
11
14
  class _BaseNetCommand(object):
12
-
13
15
  # Command id. Should be set in instance.
14
16
  id = -1
15
17
 
@@ -28,7 +30,6 @@ class _NullNetCommand(_BaseNetCommand):
28
30
 
29
31
 
30
32
  class _NullExitCommand(_NullNetCommand):
31
-
32
33
  id = CMD_EXIT
33
34
 
34
35
 
@@ -46,6 +47,7 @@ class NetCommand(_BaseNetCommand):
46
47
  Command can represent command received from the debugger,
47
48
  or one to be sent by daemon.
48
49
  """
50
+
49
51
  next_seq = 0 # sequence numbers
50
52
 
51
53
  _showing_debug_info = 0
@@ -67,13 +69,13 @@ class NetCommand(_BaseNetCommand):
67
69
  self.seq = seq
68
70
 
69
71
  if is_json:
70
- if hasattr(text, 'to_dict'):
72
+ if hasattr(text, "to_dict"):
71
73
  as_dict = text.to_dict(update_ids_to_dap=True)
72
74
  else:
73
75
  assert isinstance(text, dict)
74
76
  as_dict = text
75
- as_dict['pydevd_cmd_id'] = cmd_id
76
- as_dict['seq'] = seq
77
+ as_dict["pydevd_cmd_id"] = cmd_id
78
+ as_dict["seq"] = seq
77
79
  self.as_dict = as_dict
78
80
  text = json.dumps(as_dict)
79
81
 
@@ -87,13 +89,13 @@ class NetCommand(_BaseNetCommand):
87
89
  else:
88
90
  if protocol not in (HTTP_PROTOCOL, HTTP_JSON_PROTOCOL):
89
91
  encoded = quote(to_string(text), '/<>_=" \t')
90
- msg = '%s\t%s\t%s\n' % (cmd_id, seq, encoded)
92
+ msg = "%s\t%s\t%s\n" % (cmd_id, seq, encoded)
91
93
 
92
94
  else:
93
- msg = '%s\t%s\t%s' % (cmd_id, seq, text)
95
+ msg = "%s\t%s\t%s" % (cmd_id, seq, text)
94
96
 
95
97
  if isinstance(msg, str):
96
- msg = msg.encode('utf-8')
98
+ msg = msg.encode("utf-8")
97
99
 
98
100
  assert isinstance(msg, bytes)
99
101
  as_bytes = msg
@@ -103,7 +105,7 @@ class NetCommand(_BaseNetCommand):
103
105
  as_bytes = self._as_bytes
104
106
  try:
105
107
  if get_protocol() in (HTTP_PROTOCOL, HTTP_JSON_PROTOCOL):
106
- sock.sendall(('Content-Length: %s\r\n\r\n' % len(as_bytes)).encode('ascii'))
108
+ sock.sendall(("Content-Length: %s\r\n\r\n" % len(as_bytes)).encode("ascii"))
107
109
  sock.sendall(as_bytes)
108
110
  if self._after_send:
109
111
  for method in self._after_send:
@@ -133,14 +135,13 @@ class NetCommand(_BaseNetCommand):
133
135
 
134
136
  cls._showing_debug_info += 1
135
137
  try:
136
- out_message = 'sending cmd (%s) --> ' % (get_protocol(),)
137
- out_message += "%20s" % ID_TO_MEANING.get(str(cmd_id), 'UNKNOWN')
138
- out_message += ' '
139
- out_message += text.replace('\n', ' ')
138
+ out_message = "sending cmd (%s) --> " % (get_protocol(),)
139
+ out_message += "%20s" % ID_TO_MEANING.get(str(cmd_id), "UNKNOWN")
140
+ out_message += " "
141
+ out_message += text.replace("\n", " ")
140
142
  try:
141
- pydev_log.critical('%s\n', out_message)
143
+ pydev_log.critical("%s\n", out_message)
142
144
  except:
143
145
  pass
144
146
  finally:
145
147
  cls._showing_debug_info -= 1
146
-