debugpy 1.8.2__zip → 1.8.3__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 (311) hide show
  1. {debugpy-1.8.2/src/debugpy.egg-info → debugpy-1.8.3}/PKG-INFO +1 -1
  2. {debugpy-1.8.2 → debugpy-1.8.3}/pyproject.toml +1 -1
  3. {debugpy-1.8.2 → debugpy-1.8.3}/setup.py +2 -0
  4. debugpy-1.8.3/src/debugpy/__main__.py +71 -0
  5. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhook.py +20 -2
  6. debugpy-1.8.3/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookqt6.py +199 -0
  7. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/matplotlibtools.py +1 -0
  8. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/qt.py +6 -6
  9. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/qt_for_kernel.py +15 -2
  10. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/qt_loaders.py +48 -7
  11. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_amd64.dll +0 -0
  12. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_x86.dll +0 -0
  13. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_amd64.exe +0 -0
  14. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_x86.exe +0 -0
  15. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_amd64.dll +0 -0
  16. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_x86.dll +0 -0
  17. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_version.py +3 -3
  18. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/adapter/components.py +1 -1
  19. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/public_api.py +5 -4
  20. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/server/cli.py +101 -45
  21. {debugpy-1.8.2 → debugpy-1.8.3/src/debugpy.egg-info}/PKG-INFO +1 -1
  22. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy.egg-info/SOURCES.txt +2 -0
  23. debugpy-1.8.3/src/debugpy.egg-info/entry_points.txt +2 -0
  24. debugpy-1.8.2/src/debugpy/__main__.py +0 -39
  25. {debugpy-1.8.2 → debugpy-1.8.3}/DESCRIPTION.md +0 -0
  26. {debugpy-1.8.2 → debugpy-1.8.3}/LICENSE +0 -0
  27. {debugpy-1.8.2 → debugpy-1.8.3}/MANIFEST.in +0 -0
  28. {debugpy-1.8.2 → debugpy-1.8.3}/README.md +0 -0
  29. {debugpy-1.8.2 → debugpy-1.8.3}/setup.cfg +0 -0
  30. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/ThirdPartyNotices.txt +0 -0
  31. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/__init__.py +0 -0
  32. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/__init__.py +0 -0
  33. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/_pydevd_packaging.py +0 -0
  34. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/_util.py +0 -0
  35. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/force_pydevd.py +0 -0
  36. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/__init__.py +0 -0
  37. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_calltip_util.py +0 -0
  38. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_completer.py +0 -0
  39. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_execfile.py +0 -0
  40. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_filesystem_encoding.py +0 -0
  41. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_getopt.py +0 -0
  42. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_imports_tipper.py +0 -0
  43. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_jy_imports_tipper.py +0 -0
  44. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_log.py +0 -0
  45. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_saved_modules.py +0 -0
  46. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_sys_patch.py +0 -0
  47. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/_pydev_tipper_common.py +0 -0
  48. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/fsnotify/__init__.py +0 -0
  49. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_console_utils.py +0 -0
  50. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_import_hook.py +0 -0
  51. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_imports.py +0 -0
  52. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_ipython_console.py +0 -0
  53. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_ipython_console_011.py +0 -0
  54. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_is_thread_alive.py +0 -0
  55. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_localhost.py +0 -0
  56. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_log.py +0 -0
  57. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_monkey.py +0 -0
  58. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_monkey_qt.py +0 -0
  59. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_override.py +0 -0
  60. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_umd.py +0 -0
  61. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_bundle/pydev_versioncheck.py +0 -0
  62. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_runfiles/__init__.py +0 -0
  63. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles.py +0 -0
  64. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_coverage.py +0 -0
  65. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_nose.py +0 -0
  66. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_parallel.py +0 -0
  67. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_parallel_client.py +0 -0
  68. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_pytest2.py +0 -0
  69. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_unittest.py +0 -0
  70. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydev_runfiles/pydev_runfiles_xml_rpc.py +0 -0
  71. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/__init__.py +0 -0
  72. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/__init__.py +0 -0
  73. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/__main__pydevd_gen_debug_adapter_protocol.py +0 -0
  74. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/debugProtocol.json +0 -0
  75. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/debugProtocolCustom.json +0 -0
  76. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/pydevd_base_schema.py +0 -0
  77. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/pydevd_schema.py +0 -0
  78. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/_debug_adapter/pydevd_schema_log.py +0 -0
  79. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevconsole_code.py +0 -0
  80. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_additional_thread_info.py +0 -0
  81. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_additional_thread_info_regular.py +0 -0
  82. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_api.py +0 -0
  83. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_breakpoints.py +0 -0
  84. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_bytecode_utils.py +0 -0
  85. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_code_to_source.py +0 -0
  86. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_collect_bytecode_info.py +0 -0
  87. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_comm.py +0 -0
  88. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_comm_constants.py +0 -0
  89. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_command_line_handling.py +0 -0
  90. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_concurrency_analyser/__init__.py +0 -0
  91. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_concurrency_analyser/pydevd_concurrency_logger.py +0 -0
  92. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_concurrency_analyser/pydevd_thread_wrappers.py +0 -0
  93. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_console.py +0 -0
  94. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_constants.py +0 -0
  95. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_custom_frames.py +0 -0
  96. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_cython.c +0 -0
  97. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_cython.pxd +0 -0
  98. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_cython.pyx +0 -0
  99. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_cython_wrapper.py +0 -0
  100. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_daemon_thread.py +0 -0
  101. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_defaults.py +0 -0
  102. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_dont_trace.py +0 -0
  103. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_dont_trace_files.py +0 -0
  104. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_exec2.py +0 -0
  105. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_extension_api.py +0 -0
  106. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_extension_utils.py +0 -0
  107. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_filtering.py +0 -0
  108. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_frame.py +0 -0
  109. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_frame_utils.py +0 -0
  110. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_gevent_integration.py +0 -0
  111. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_import_class.py +0 -0
  112. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_io.py +0 -0
  113. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_json_debug_options.py +0 -0
  114. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_net_command.py +0 -0
  115. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_net_command_factory_json.py +0 -0
  116. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_net_command_factory_xml.py +0 -0
  117. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_plugin_utils.py +0 -0
  118. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_process_net_command.py +0 -0
  119. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_process_net_command_json.py +0 -0
  120. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_referrers.py +0 -0
  121. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_reload.py +0 -0
  122. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_resolver.py +0 -0
  123. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_runpy.py +0 -0
  124. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_safe_repr.py +0 -0
  125. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_save_locals.py +0 -0
  126. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_signature.py +0 -0
  127. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_source_mapping.py +0 -0
  128. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_stackless.py +0 -0
  129. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_suspended_frames.py +0 -0
  130. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_thread_lifecycle.py +0 -0
  131. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_timeout.py +0 -0
  132. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_trace_api.py +0 -0
  133. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_trace_dispatch.py +0 -0
  134. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_trace_dispatch_regular.py +0 -0
  135. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_traceproperty.py +0 -0
  136. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_utils.py +0 -0
  137. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_vars.py +0 -0
  138. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_vm_type.py +0 -0
  139. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_xml.py +0 -0
  140. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/.gitignore +0 -0
  141. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/__init__.py +0 -0
  142. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_eval_cython_wrapper.py +0 -0
  143. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_eval_main.py +0 -0
  144. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_evaluator.c +0 -0
  145. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_evaluator.pxd +0 -0
  146. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_evaluator.pyx +0 -0
  147. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_evaluator.template.pyx +0 -0
  148. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_frame_tracing.py +0 -0
  149. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/pydevd_modify_bytecode.py +0 -0
  150. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/release_mem.h +0 -0
  151. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/README.txt +0 -0
  152. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/__init__.py +0 -0
  153. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/__init__.py +0 -0
  154. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/bytecode.py +0 -0
  155. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/cfg.py +0 -0
  156. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/concrete.py +0 -0
  157. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/flags.py +0 -0
  158. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/instr.py +0 -0
  159. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/peephole_opt.py +0 -0
  160. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/__init__.py +0 -0
  161. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_bytecode.py +0 -0
  162. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_cfg.py +0 -0
  163. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_code.py +0 -0
  164. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_concrete.py +0 -0
  165. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_flags.py +0 -0
  166. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_instr.py +0 -0
  167. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_misc.py +0 -0
  168. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/test_peephole_opt.py +0 -0
  169. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode/tests/util_annotation.py +0 -0
  170. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/COPYING +0 -0
  171. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/INSTALLER +0 -0
  172. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/METADATA +0 -0
  173. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/RECORD +0 -0
  174. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/REQUESTED +0 -0
  175. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/WHEEL +0 -0
  176. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/direct_url.json +0 -0
  177. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/bytecode-0.13.0.dev0.dist-info/top_level.txt +0 -0
  178. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/_pydevd_frame_eval/vendored/pydevd_fix_code.py +0 -0
  179. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_app_engine_debug_startup.py +0 -0
  180. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_coverage.py +0 -0
  181. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/README +0 -0
  182. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/__init__.py +0 -0
  183. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookglut.py +0 -0
  184. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookgtk.py +0 -0
  185. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookgtk3.py +0 -0
  186. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookpyglet.py +0 -0
  187. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookqt4.py +0 -0
  188. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookqt5.py +0 -0
  189. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhooktk.py +0 -0
  190. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/inputhookwx.py +0 -0
  191. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_ipython/version.py +0 -0
  192. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_pysrc.py +0 -0
  193. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_run_in_console.py +0 -0
  194. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_sitecustomize/__not_in_default_pythonpath.txt +0 -0
  195. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydev_sitecustomize/sitecustomize.py +0 -0
  196. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevconsole.py +0 -0
  197. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd.py +0 -0
  198. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/README.txt +0 -0
  199. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_always_live_program.py +0 -0
  200. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_check.py +0 -0
  201. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_test_attach_to_process.py +0 -0
  202. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/_test_attach_to_process_linux.py +0 -0
  203. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/add_code_to_python_process.py +0 -0
  204. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_amd64.pdb +0 -0
  205. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_pydevd.py +0 -0
  206. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_script.py +0 -0
  207. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/attach_x86.pdb +0 -0
  208. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_custom_pyeval_settrace.hpp +0 -0
  209. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_custom_pyeval_settrace_310.hpp +0 -0
  210. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_custom_pyeval_settrace_311.hpp +0 -0
  211. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_custom_pyeval_settrace_common.hpp +0 -0
  212. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_settrace.hpp +0 -0
  213. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_utils.hpp +0 -0
  214. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/py_version.hpp +0 -0
  215. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/python.h +0 -0
  216. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/common/ref_utils.hpp +0 -0
  217. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_amd64.pdb +0 -0
  218. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/inject_dll_x86.pdb +0 -0
  219. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/.gitignore +0 -0
  220. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/attach.cpp +0 -0
  221. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_linux.sh +0 -0
  222. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_mac.sh +0 -0
  223. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/compile_manylinux.cmd +0 -0
  224. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/linux_and_mac/lldb_prepare.py +0 -0
  225. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_amd64.pdb +0 -0
  226. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/run_code_on_dllmain_x86.pdb +0 -0
  227. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/__init__.py +0 -0
  228. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/breakpoint.py +0 -0
  229. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/compat.py +0 -0
  230. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/crash.py +0 -0
  231. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/debug.py +0 -0
  232. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/disasm.py +0 -0
  233. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/event.py +0 -0
  234. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/interactive.py +0 -0
  235. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/module.py +0 -0
  236. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/process.py +0 -0
  237. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/registry.py +0 -0
  238. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/search.py +0 -0
  239. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/sql.py +0 -0
  240. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/system.py +0 -0
  241. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/textio.py +0 -0
  242. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/thread.py +0 -0
  243. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/util.py +0 -0
  244. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/__init__.py +0 -0
  245. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/advapi32.py +0 -0
  246. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/context_amd64.py +0 -0
  247. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/context_i386.py +0 -0
  248. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/dbghelp.py +0 -0
  249. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/defines.py +0 -0
  250. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/gdi32.py +0 -0
  251. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/kernel32.py +0 -0
  252. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/ntdll.py +0 -0
  253. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/peb_teb.py +0 -0
  254. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/psapi.py +0 -0
  255. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/shell32.py +0 -0
  256. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/shlwapi.py +0 -0
  257. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/user32.py +0 -0
  258. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/version.py +0 -0
  259. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/win32/wtsapi32.py +0 -0
  260. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/winappdbg/window.py +0 -0
  261. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/attach.cpp +0 -0
  262. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/attach.h +0 -0
  263. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/compile_windows.bat +0 -0
  264. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/inject_dll.cpp +0 -0
  265. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/py_win_helpers.hpp +0 -0
  266. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/run_code_in_memory.hpp +0 -0
  267. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/run_code_on_dllmain.cpp +0 -0
  268. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/stdafx.cpp +0 -0
  269. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/stdafx.h +0 -0
  270. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_attach_to_process/windows/targetver.h +0 -0
  271. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_file_utils.py +0 -0
  272. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/__init__.py +0 -0
  273. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/django_debug.py +0 -0
  274. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/README.md +0 -0
  275. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/__init__.py +0 -0
  276. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types/__init__.py +0 -0
  277. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types/pydevd_helpers.py +0 -0
  278. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types/pydevd_plugin_numpy_types.py +0 -0
  279. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types/pydevd_plugin_pandas_types.py +0 -0
  280. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/extensions/types/pydevd_plugins_django_form_str.py +0 -0
  281. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/jinja2_debug.py +0 -0
  282. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_plugins/pydevd_line_validation.py +0 -0
  283. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/pydevd_tracing.py +0 -0
  284. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/_vendored/pydevd/setup_pydevd_cython.py +0 -0
  285. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/adapter/__init__.py +0 -0
  286. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/adapter/__main__.py +0 -0
  287. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/adapter/clients.py +0 -0
  288. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/adapter/launchers.py +0 -0
  289. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/adapter/servers.py +0 -0
  290. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/adapter/sessions.py +0 -0
  291. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/common/__init__.py +0 -0
  292. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/common/json.py +0 -0
  293. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/common/log.py +0 -0
  294. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/common/messaging.py +0 -0
  295. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/common/singleton.py +0 -0
  296. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/common/sockets.py +0 -0
  297. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/common/stacks.py +0 -0
  298. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/common/timestamp.py +0 -0
  299. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/common/util.py +0 -0
  300. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/launcher/__init__.py +0 -0
  301. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/launcher/__main__.py +0 -0
  302. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/launcher/debuggee.py +0 -0
  303. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/launcher/handlers.py +0 -0
  304. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/launcher/output.py +0 -0
  305. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/launcher/winapi.py +0 -0
  306. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/server/__init__.py +0 -0
  307. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/server/api.py +0 -0
  308. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy/server/attach_pid_injected.py +0 -0
  309. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy.egg-info/dependency_links.txt +0 -0
  310. {debugpy-1.8.2 → debugpy-1.8.3}/src/debugpy.egg-info/top_level.txt +0 -0
  311. {debugpy-1.8.2 → debugpy-1.8.3}/versioneer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: debugpy
3
- Version: 1.8.2
3
+ Version: 1.8.3
4
4
  Summary: An implementation of the Debug Adapter Protocol for Python
5
5
  Home-page: https://aka.ms/debugpy
6
6
  Author: Microsoft Corporation
@@ -16,7 +16,7 @@ exclude = '''
16
16
  [tool.pyright]
17
17
  pythonVersion = "3.8"
18
18
  include = ["src/**", "tests/**" ]
19
- extraPaths = ["src/debugpy/_vendored/pydevd"]
19
+ extraPaths = ["src/debugpy/_vendored/pydevd", "src/debugpy/_vendored/pydevd/pydevd_attach_to_process"]
20
20
  ignore = ["src/debugpy/_vendored/pydevd", "src/debugpy/_version.py"]
21
21
  executionEnvironments = [
22
22
  { root = "src" }, { root = "." }
@@ -195,5 +195,7 @@ if __name__ == "__main__":
195
195
  ext_modules=ExtModules(),
196
196
  has_ext_modules=lambda: True,
197
197
  cmdclass=cmds,
198
+ # allow the user to call "debugpy" instead of "python -m debugpy"
199
+ entry_points={"console_scripts": ["debugpy = debugpy.server.cli:main"]},
198
200
  **extras
199
201
  )
@@ -0,0 +1,71 @@
1
+ # Copyright (c) Microsoft Corporation. All rights reserved.
2
+ # Licensed under the MIT License. See LICENSE in the project root
3
+ # for license information.
4
+
5
+ import sys
6
+
7
+ if __name__ == "__main__":
8
+
9
+ # There are three ways to run debugpy:
10
+ #
11
+ # 1. Installed as a module in the current environment (python -m debugpy ...)
12
+ # 2. Run as a script from source code (python <repo_root>/src/debugpy ...)
13
+ # 3. Installed as a module in a random directory
14
+ #
15
+ # -----
16
+ #
17
+ # In the first case, no extra work is needed. Importing debugpy will work as expected.
18
+ # Also, running 'debugpy' instead of 'python -m debugpy' will work because of the entry point
19
+ # defined in setup.py.
20
+ #
21
+ # -----
22
+ #
23
+ # In the second case, sys.path[0] is the one added automatically by Python for the directory
24
+ # containing this file. 'import debugpy' will not work since we need the parent directory
25
+ # of debugpy/ to be in sys.path, rather than debugpy/ itself. So we need to modify sys.path[0].
26
+ # Running 'debugpy' will not work because the entry point is not defined in this case.
27
+ #
28
+ # -----
29
+ #
30
+ # In the third case, running 'python -m debugpy' will not work because the module is not installed
31
+ # in any environment. Running 'python <install_dir>/debugpy' will work, just like the second case.
32
+ # But running the entry point will not work because python doesn't know where to find the debugpy module.
33
+ #
34
+ # In this case, no changes to sys.path are required. You just have to do the following before calling
35
+ # the entry point:
36
+ # 1. Add <install_dir> to PYTHONPATH.
37
+ # On Windows, this is set PYTHONPATH=%PYTHONPATH%;<install_dir>
38
+ # 2. Add <install_dir>/bin to PATH. (OPTIONAL)
39
+ # On Windows, this is set PATH=%PATH%;<install_dir>\bin
40
+ # 3. Run the entry point from a command prompt
41
+ # On Windows, this is <install_dir>\bin\debugpy.exe, or just 'debugpy' if you did the previous step.
42
+ #
43
+ # -----
44
+ #
45
+ # If we modify sys.path, 'import debugpy' will work, but it will break other imports
46
+ # because they will be resolved relative to debugpy/ - e.g. `import debugger` will try
47
+ # to import debugpy/debugger.py.
48
+ #
49
+ # To fix both problems, we need to do the following steps:
50
+ # 1. Modify sys.path[0] to point at the parent directory of debugpy/ instead of debugpy/ itself.
51
+ # 2. Import debugpy.
52
+ # 3. Remove sys.path[0] so that it doesn't affect future imports.
53
+ #
54
+ # For example, suppose the user did:
55
+ #
56
+ # python /foo/bar/debugpy ...
57
+ #
58
+ # At the beginning of this script, sys.path[0] will contain "/foo/bar/debugpy".
59
+ # We want to replace it with "/foo/bar', then 'import debugpy', then remove the replaced entry.
60
+ # The imported debugpy module will remain in sys.modules, and thus all future imports of it
61
+ # or its submodules will resolve accordingly.
62
+ if "debugpy" not in sys.modules:
63
+
64
+ # Do not use dirname() to walk up - this can be a relative path, e.g. ".".
65
+ sys.path[0] = sys.path[0] + "/../"
66
+ import debugpy # noqa
67
+ del sys.path[0]
68
+
69
+ from debugpy.server import cli
70
+
71
+ cli.main()
@@ -26,6 +26,7 @@ GUI_WX = 'wx'
26
26
  GUI_QT = 'qt'
27
27
  GUI_QT4 = 'qt4'
28
28
  GUI_QT5 = 'qt5'
29
+ GUI_QT6 = 'qt6'
29
30
  GUI_GTK = 'gtk'
30
31
  GUI_TK = 'tk'
31
32
  GUI_OSX = 'osx'
@@ -173,8 +174,10 @@ class InputHookManager(object):
173
174
  self.clear_inputhook()
174
175
 
175
176
  def enable_qt(self, app=None):
176
- from pydev_ipython.qt_for_kernel import QT_API, QT_API_PYQT5
177
- if QT_API == QT_API_PYQT5:
177
+ from pydev_ipython.qt_for_kernel import QT_API, QT_API_PYQT5, QT_API_PYQT6
178
+ if QT_API == QT_API_PYQT6:
179
+ self.enable_qt6(app)
180
+ elif QT_API == QT_API_PYQT5:
178
181
  self.enable_qt5(app)
179
182
  else:
180
183
  self.enable_qt4(app)
@@ -234,6 +237,21 @@ class InputHookManager(object):
234
237
  self._apps[GUI_QT5]._in_event_loop = False
235
238
  self.clear_inputhook()
236
239
 
240
+ def enable_qt6(self, app=None):
241
+ from pydev_ipython.inputhookqt6 import create_inputhook_qt6
242
+ app, inputhook_qt6 = create_inputhook_qt6(self, app)
243
+ self.set_inputhook(inputhook_qt6)
244
+
245
+ self._current_gui = GUI_QT6
246
+ app._in_event_loop = True
247
+ self._apps[GUI_QT6] = app
248
+ return app
249
+
250
+ def disable_qt6(self):
251
+ if GUI_QT6 in self._apps:
252
+ self._apps[GUI_QT6]._in_event_loop = False
253
+ self.clear_inputhook()
254
+
237
255
  def enable_gtk(self, app=None):
238
256
  """Enable event loop integration with PyGTK.
239
257
 
@@ -0,0 +1,199 @@
1
+ # -*- coding: utf-8 -*-
2
+ """
3
+ Qt6's inputhook support function
4
+
5
+ Author: Christian Boos, Marijn van Vliet
6
+ """
7
+
8
+ #-----------------------------------------------------------------------------
9
+ # Copyright (C) 2011 The IPython Development Team
10
+ #
11
+ # Distributed under the terms of the BSD License. The full license is in
12
+ # the file COPYING, distributed as part of this software.
13
+ #-----------------------------------------------------------------------------
14
+
15
+ #-----------------------------------------------------------------------------
16
+ # Imports
17
+ #-----------------------------------------------------------------------------
18
+
19
+ import os
20
+ import signal
21
+
22
+ import threading
23
+
24
+ from pydev_ipython.qt_for_kernel import QtCore, QtGui
25
+ from pydev_ipython.inputhook import allow_CTRL_C, ignore_CTRL_C, stdin_ready
26
+
27
+
28
+ # To minimise future merging complexity, rather than edit the entire code base below
29
+ # we fake InteractiveShell here
30
+ class InteractiveShell:
31
+ _instance = None
32
+
33
+ @classmethod
34
+ def instance(cls):
35
+ if cls._instance is None:
36
+ cls._instance = cls()
37
+ return cls._instance
38
+
39
+ def set_hook(self, *args, **kwargs):
40
+ # We don't consider the pre_prompt_hook because we don't have
41
+ # KeyboardInterrupts to consider since we are running under PyDev
42
+ pass
43
+
44
+ #-----------------------------------------------------------------------------
45
+ # Module Globals
46
+ #-----------------------------------------------------------------------------
47
+
48
+
49
+ got_kbdint = False
50
+ sigint_timer = None
51
+
52
+ #-----------------------------------------------------------------------------
53
+ # Code
54
+ #-----------------------------------------------------------------------------
55
+
56
+
57
+ def create_inputhook_qt6(mgr, app=None):
58
+ """Create an input hook for running the Qt6 application event loop.
59
+
60
+ Parameters
61
+ ----------
62
+ mgr : an InputHookManager
63
+
64
+ app : Qt Application, optional.
65
+ Running application to use. If not given, we probe Qt for an
66
+ existing application object, and create a new one if none is found.
67
+
68
+ Returns
69
+ -------
70
+ A pair consisting of a Qt Application (either the one given or the
71
+ one found or created) and a inputhook.
72
+
73
+ Notes
74
+ -----
75
+ We use a custom input hook instead of PyQt6's default one, as it
76
+ interacts better with the readline packages (issue #481).
77
+
78
+ The inputhook function works in tandem with a 'pre_prompt_hook'
79
+ which automatically restores the hook as an inputhook in case the
80
+ latter has been temporarily disabled after having intercepted a
81
+ KeyboardInterrupt.
82
+ """
83
+
84
+ if app is None:
85
+ app = QtCore.QCoreApplication.instance()
86
+ if app is None:
87
+ from PyQt6 import QtWidgets
88
+ app = QtWidgets.QApplication([" "])
89
+
90
+ # Re-use previously created inputhook if any
91
+ ip = InteractiveShell.instance()
92
+ if hasattr(ip, '_inputhook_qt6'):
93
+ return app, ip._inputhook_qt6
94
+
95
+ # Otherwise create the inputhook_qt6/preprompthook_qt6 pair of
96
+ # hooks (they both share the got_kbdint flag)
97
+
98
+ def inputhook_qt6():
99
+ """PyOS_InputHook python hook for Qt6.
100
+
101
+ Process pending Qt events and if there's no pending keyboard
102
+ input, spend a short slice of time (50ms) running the Qt event
103
+ loop.
104
+
105
+ As a Python ctypes callback can't raise an exception, we catch
106
+ the KeyboardInterrupt and temporarily deactivate the hook,
107
+ which will let a *second* CTRL+C be processed normally and go
108
+ back to a clean prompt line.
109
+ """
110
+ try:
111
+ allow_CTRL_C()
112
+ app = QtCore.QCoreApplication.instance()
113
+ if not app: # shouldn't happen, but safer if it happens anyway...
114
+ return 0
115
+ app.processEvents(QtCore.QEventLoop.ProcessEventsFlag.AllEvents, 300)
116
+ if not stdin_ready():
117
+ # Generally a program would run QCoreApplication::exec()
118
+ # from main() to enter and process the Qt event loop until
119
+ # quit() or exit() is called and the program terminates.
120
+ #
121
+ # For our input hook integration, we need to repeatedly
122
+ # enter and process the Qt event loop for only a short
123
+ # amount of time (say 50ms) to ensure that Python stays
124
+ # responsive to other user inputs.
125
+ #
126
+ # A naive approach would be to repeatedly call
127
+ # QCoreApplication::exec(), using a timer to quit after a
128
+ # short amount of time. Unfortunately, QCoreApplication
129
+ # emits an aboutToQuit signal before stopping, which has
130
+ # the undesirable effect of closing all modal windows.
131
+ #
132
+ # To work around this problem, we instead create a
133
+ # QEventLoop and call QEventLoop::exec(). Other than
134
+ # setting some state variables which do not seem to be
135
+ # used anywhere, the only thing QCoreApplication adds is
136
+ # the aboutToQuit signal which is precisely what we are
137
+ # trying to avoid.
138
+ timer = QtCore.QTimer()
139
+ event_loop = QtCore.QEventLoop()
140
+ timer.timeout.connect(event_loop.quit)
141
+ while not stdin_ready():
142
+ timer.start(50)
143
+ event_loop.exec()
144
+ timer.stop()
145
+ except KeyboardInterrupt:
146
+ global got_kbdint, sigint_timer
147
+
148
+ ignore_CTRL_C()
149
+ got_kbdint = True
150
+ mgr.clear_inputhook()
151
+
152
+ # This generates a second SIGINT so the user doesn't have to
153
+ # press CTRL+C twice to get a clean prompt.
154
+ #
155
+ # Since we can't catch the resulting KeyboardInterrupt here
156
+ # (because this is a ctypes callback), we use a timer to
157
+ # generate the SIGINT after we leave this callback.
158
+ #
159
+ # Unfortunately this doesn't work on Windows (SIGINT kills
160
+ # Python and CTRL_C_EVENT doesn't work).
161
+ if(os.name == 'posix'):
162
+ pid = os.getpid()
163
+ if(not sigint_timer):
164
+ sigint_timer = threading.Timer(.01, os.kill,
165
+ args=[pid, signal.SIGINT])
166
+ sigint_timer.start()
167
+ else:
168
+ print("\nKeyboardInterrupt - Ctrl-C again for new prompt")
169
+
170
+ except: # NO exceptions are allowed to escape from a ctypes callback
171
+ ignore_CTRL_C()
172
+ from traceback import print_exc
173
+ print_exc()
174
+ print("Got exception from inputhook_qt6, unregistering.")
175
+ mgr.clear_inputhook()
176
+ finally:
177
+ allow_CTRL_C()
178
+ return 0
179
+
180
+ def preprompthook_qt6(ishell):
181
+ """'pre_prompt_hook' used to restore the Qt6 input hook
182
+
183
+ (in case the latter was temporarily deactivated after a
184
+ CTRL+C)
185
+ """
186
+ global got_kbdint, sigint_timer
187
+
188
+ if(sigint_timer):
189
+ sigint_timer.cancel()
190
+ sigint_timer = None
191
+
192
+ if got_kbdint:
193
+ mgr.set_inputhook(inputhook_qt6)
194
+ got_kbdint = False
195
+
196
+ ip._inputhook_qt6 = inputhook_qt6
197
+ ip.set_hook('pre_prompt_hook', preprompthook_qt6)
198
+
199
+ return app, inputhook_qt6
@@ -8,6 +8,7 @@ backends = {'tk': 'TkAgg',
8
8
  'qt': 'QtAgg', # Auto-choose qt4/5
9
9
  'qt4': 'Qt4Agg',
10
10
  'qt5': 'Qt5Agg',
11
+ 'qt6': 'Qt6Agg',
11
12
  'osx': 'MacOSX'}
12
13
 
13
14
  # We also need a reverse backends2guis mapping that will properly choose which
@@ -8,15 +8,15 @@ Do not use this if you need PyQt with the old QString/QVariant API.
8
8
 
9
9
  import os
10
10
 
11
- from pydev_ipython.qt_loaders import (load_qt, QT_API_PYSIDE,
12
- QT_API_PYQT, QT_API_PYQT5)
11
+ from pydev_ipython.qt_loaders import (load_qt, QT_API_PYSIDE, QT_API_PYSIDE2,
12
+ QT_API_PYQT, QT_API_PYQT5, QT_API_PYQT6)
13
13
 
14
14
  QT_API = os.environ.get('QT_API', None)
15
- if QT_API not in [QT_API_PYSIDE, QT_API_PYQT, QT_API_PYQT5, None]:
16
- raise RuntimeError("Invalid Qt API %r, valid values are: %r, %r" %
17
- (QT_API, QT_API_PYSIDE, QT_API_PYQT, QT_API_PYQT5))
15
+ if QT_API not in [QT_API_PYSIDE, QT_API_PYSIDE2, QT_API_PYQT, QT_API_PYQT5, QT_API_PYQT6, None]:
16
+ raise RuntimeError("Invalid Qt API %r, valid values are: %r, %r, %r, %r, %r" %
17
+ (QT_API, QT_API_PYSIDE, QT_API_PYSIDE2, QT_API_PYQT, QT_API_PYQT5, QT_API_PYQT6))
18
18
  if QT_API is None:
19
- api_opts = [QT_API_PYSIDE, QT_API_PYQT, QT_API_PYQT5]
19
+ api_opts = [QT_API_PYSIDE, QT_API_PYSIDE2, QT_API_PYQT, QT_API_PYQT5, QT_API_PYQT6]
20
20
  else:
21
21
  api_opts = [QT_API]
22
22
 
@@ -37,7 +37,7 @@ import sys
37
37
  from pydev_ipython.version import check_version
38
38
  from pydev_ipython.qt_loaders import (load_qt, QT_API_PYSIDE, QT_API_PYSIDE2,
39
39
  QT_API_PYQT, QT_API_PYQT_DEFAULT,
40
- loaded_api, QT_API_PYQT5)
40
+ loaded_api, QT_API_PYQT5, QT_API_PYQT6)
41
41
 
42
42
 
43
43
  # Constraints placed on an imported matplotlib
@@ -71,10 +71,21 @@ def matplotlib_options(mpl):
71
71
  raise ImportError("unhandled value for backend.qt5 from matplotlib: %r" %
72
72
  mpqt)
73
73
 
74
+ elif backend == 'Qt6Agg':
75
+ mpqt = mpl.rcParams.get('backend.qt6', None)
76
+ if mpqt is None:
77
+ return None
78
+ if mpqt.lower() == 'pyqt6':
79
+ return [QT_API_PYQT6]
80
+ raise ImportError("unhandled value for backend.qt6 from matplotlib: %r" %
81
+ mpqt)
82
+
74
83
  # Fallback without checking backend (previous code)
75
84
  mpqt = mpl.rcParams.get('backend.qt4', None)
76
85
  if mpqt is None:
77
86
  mpqt = mpl.rcParams.get('backend.qt5', None)
87
+ if mpqt is None:
88
+ mpqt = mpl.rcParams.get('backend.qt6', None)
78
89
 
79
90
  if mpqt is None:
80
91
  return None
@@ -84,6 +95,8 @@ def matplotlib_options(mpl):
84
95
  return [QT_API_PYQT_DEFAULT]
85
96
  elif mpqt.lower() == 'pyqt5':
86
97
  return [QT_API_PYQT5]
98
+ elif mpqt.lower() == 'pyqt6':
99
+ return [QT_API_PYQT6]
87
100
  raise ImportError("unhandled value for qt backend from matplotlib: %r" %
88
101
  mpqt)
89
102
 
@@ -105,7 +118,7 @@ def get_options():
105
118
 
106
119
  if os.environ.get('QT_API', None) is None:
107
120
  # no ETS variable. Ask mpl, then use either
108
- return matplotlib_options(mpl) or [QT_API_PYQT_DEFAULT, QT_API_PYSIDE, QT_API_PYSIDE2, QT_API_PYQT5]
121
+ return matplotlib_options(mpl) or [QT_API_PYQT_DEFAULT, QT_API_PYSIDE, QT_API_PYSIDE2, QT_API_PYQT5, QT_API_PYQT6]
109
122
 
110
123
  # ETS variable present. Will fallback to external.qt
111
124
  return None
@@ -19,7 +19,9 @@ QT_API_PYQTv1 = 'pyqtv1'
19
19
  QT_API_PYQT_DEFAULT = 'pyqtdefault' # don't set SIP explicitly
20
20
  QT_API_PYSIDE = 'pyside'
21
21
  QT_API_PYSIDE2 = 'pyside2'
22
+ QT_API_PYSIDE6 = 'pyside6'
22
23
  QT_API_PYQT5 = 'pyqt5'
24
+ QT_API_PYQT6 = 'pyqt6'
23
25
 
24
26
 
25
27
  class ImportDenier(object):
@@ -58,9 +60,11 @@ def commit_api(api):
58
60
  if api == QT_API_PYSIDE:
59
61
  ID.forbid('PyQt4')
60
62
  ID.forbid('PyQt5')
63
+ ID.forbid('PyQt6')
61
64
  else:
62
65
  ID.forbid('PySide')
63
66
  ID.forbid('PySide2')
67
+ ID.forbid('PySide6')
64
68
 
65
69
 
66
70
  def loaded_api():
@@ -71,7 +75,7 @@ def loaded_api():
71
75
 
72
76
  Returns
73
77
  -------
74
- None, 'pyside', 'pyside2', 'pyqt', or 'pyqtv1'
78
+ None, 'pyside', 'pyside2', 'pyside6', 'pyqt5', 'pyqt6', or 'pyqtv1'
75
79
  """
76
80
  if 'PyQt4.QtCore' in sys.modules:
77
81
  if qtapi_version() == 2:
@@ -82,13 +86,17 @@ def loaded_api():
82
86
  return QT_API_PYSIDE
83
87
  elif 'PySide2.QtCore' in sys.modules:
84
88
  return QT_API_PYSIDE2
89
+ elif 'PySide6.QtCore' in sys.modules:
90
+ return QT_API_PYSIDE6
85
91
  elif 'PyQt5.QtCore' in sys.modules:
86
92
  return QT_API_PYQT5
93
+ elif 'PyQt6.QtCore' in sys.modules:
94
+ return QT_API_PYQT6
87
95
  return None
88
96
 
89
97
 
90
98
  def has_binding(api):
91
- """Safely check for PyQt4 or PySide, without importing
99
+ """Safely check for PyQt or PySide, without importing
92
100
  submodules
93
101
 
94
102
  Parameters
@@ -105,10 +113,12 @@ def has_binding(api):
105
113
  # check for complete presence before importing
106
114
  module_name = {QT_API_PYSIDE: 'PySide',
107
115
  QT_API_PYSIDE2: 'PySide2',
116
+ QT_API_PYSIDE6: 'PySide6',
108
117
  QT_API_PYQT: 'PyQt4',
109
118
  QT_API_PYQTv1: 'PyQt4',
110
119
  QT_API_PYQT_DEFAULT: 'PyQt4',
111
120
  QT_API_PYQT5: 'PyQt5',
121
+ QT_API_PYQT6: 'PyQt6',
112
122
  }
113
123
  module_name = module_name[api]
114
124
 
@@ -154,7 +164,7 @@ def can_import(api):
154
164
 
155
165
  current = loaded_api()
156
166
  if api == QT_API_PYQT_DEFAULT:
157
- return current in [QT_API_PYQT, QT_API_PYQTv1, QT_API_PYQT5, None]
167
+ return current in [QT_API_PYQT, QT_API_PYQTv1, QT_API_PYQT5, QT_API_PYQT6, None]
158
168
  else:
159
169
  return current in [api, None]
160
170
 
@@ -211,6 +221,21 @@ def import_pyqt5():
211
221
  return QtCore, QtGui, QtSvg, QT_API_PYQT5
212
222
 
213
223
 
224
+ def import_pyqt6():
225
+ """
226
+ Import PyQt6
227
+
228
+ ImportErrors raised within this function are non-recoverable
229
+ """
230
+ from PyQt6 import QtGui, QtCore, QtSvg
231
+
232
+ # Alias PyQt-specific functions for PySide compatibility.
233
+ QtCore.Signal = QtCore.pyqtSignal
234
+ QtCore.Slot = QtCore.pyqtSlot
235
+
236
+ return QtCore, QtGui, QtSvg, QT_API_PYQT6
237
+
238
+
214
239
  def import_pyside():
215
240
  """
216
241
  Import PySide
@@ -228,7 +253,17 @@ def import_pyside2():
228
253
  ImportErrors raised within this function are non-recoverable
229
254
  """
230
255
  from PySide2 import QtGui, QtCore, QtSvg # @UnresolvedImport
231
- return QtCore, QtGui, QtSvg, QT_API_PYSIDE
256
+ return QtCore, QtGui, QtSvg, QT_API_PYSIDE2
257
+
258
+
259
+ def import_pyside6():
260
+ """
261
+ Import PySide6
262
+
263
+ ImportErrors raised within this function are non-recoverable
264
+ """
265
+ from PySide6 import QtGui, QtCore, QtSvg # @UnresolvedImport
266
+ return QtCore, QtGui, QtSvg, QT_API_PYSIDE6
232
267
 
233
268
 
234
269
  def load_qt(api_options):
@@ -259,19 +294,21 @@ def load_qt(api_options):
259
294
  """
260
295
  loaders = {QT_API_PYSIDE: import_pyside,
261
296
  QT_API_PYSIDE2: import_pyside2,
297
+ QT_API_PYSIDE6: import_pyside6,
262
298
  QT_API_PYQT: import_pyqt4,
263
299
  QT_API_PYQTv1: partial(import_pyqt4, version=1),
264
300
  QT_API_PYQT_DEFAULT: partial(import_pyqt4, version=None),
265
301
  QT_API_PYQT5: import_pyqt5,
302
+ QT_API_PYQT6: import_pyqt6,
266
303
  }
267
304
 
268
305
  for api in api_options:
269
306
 
270
307
  if api not in loaders:
271
308
  raise RuntimeError(
272
- "Invalid Qt API %r, valid values are: %r, %r, %r, %r, %r, %r" %
273
- (api, QT_API_PYSIDE, QT_API_PYSIDE, QT_API_PYQT,
274
- QT_API_PYQTv1, QT_API_PYQT_DEFAULT, QT_API_PYQT5))
309
+ "Invalid Qt API %r, valid values are: %r, %r, %r, %r, %r, %r, %r" %
310
+ (api, QT_API_PYSIDE, QT_API_PYSIDE2, QT_API_PYQT,
311
+ QT_API_PYQTv1, QT_API_PYQT_DEFAULT, QT_API_PYQT5, QT_API_PYQT6))
275
312
 
276
313
  if not can_import(api):
277
314
  continue
@@ -290,12 +327,16 @@ def load_qt(api_options):
290
327
  Currently-imported Qt library: %r
291
328
  PyQt4 installed: %s
292
329
  PyQt5 installed: %s
330
+ PyQt6 installed: %s
293
331
  PySide >= 1.0.3 installed: %s
294
332
  PySide2 installed: %s
333
+ PySide6 installed: %s
295
334
  Tried to load: %r
296
335
  """ % (loaded_api(),
297
336
  has_binding(QT_API_PYQT),
298
337
  has_binding(QT_API_PYQT5),
338
+ has_binding(QT_API_PYQT6),
299
339
  has_binding(QT_API_PYSIDE),
300
340
  has_binding(QT_API_PYSIDE2),
341
+ has_binding(QT_API_PYSIDE6),
301
342
  api_options))
@@ -8,11 +8,11 @@ import json
8
8
 
9
9
  version_json = '''
10
10
  {
11
- "date": "2024-04-19T17:08:26-0500",
11
+ "date": "2024-07-31T14:46:58-0500",
12
12
  "dirty": false,
13
13
  "error": null,
14
- "full-revisionid": "09b5af0bb730e2707ec3bbc14c509523eca116c0",
15
- "version": "1.8.2"
14
+ "full-revisionid": "dc58df149f5f6f71d44bd3389ad0e4b98d00b4bd",
15
+ "version": "1.8.3"
16
16
  }
17
17
  ''' # END VERSION_JSON
18
18
 
@@ -7,7 +7,7 @@ import functools
7
7
  from debugpy.common import json, log, messaging, util
8
8
 
9
9
 
10
- ACCEPT_CONNECTIONS_TIMEOUT = 10
10
+ ACCEPT_CONNECTIONS_TIMEOUT = 60
11
11
 
12
12
 
13
13
  class ComponentNotAvailable(Exception):
@@ -38,7 +38,7 @@ def _api(cancelable=False):
38
38
  wrapped = getattr(api, f.__name__)
39
39
  return wrapped.cancel(*args, **kwargs)
40
40
 
41
- wrapper.cancel = cancel
41
+ wrapper.cancel = cancel # pyright: ignore
42
42
 
43
43
  return wrapper
44
44
 
@@ -46,7 +46,7 @@ def _api(cancelable=False):
46
46
 
47
47
 
48
48
  @_api()
49
- def log_to(__path: str) -> None:
49
+ def log_to(__path: str | typing.TextIO) -> None:
50
50
  """Generate detailed debugpy logs in the specified directory.
51
51
 
52
52
  The directory must already exist. Several log files are generated,
@@ -117,7 +117,7 @@ def listen(
117
117
  adapter that it starts. Use `wait_for_client` to block execution
118
118
  until the client connects.
119
119
  """
120
-
120
+ ...
121
121
 
122
122
  @_api()
123
123
  def connect(__endpoint: Endpoint | int, *, access_token: str | None = None) -> Endpoint:
@@ -135,7 +135,7 @@ def connect(__endpoint: Endpoint | int, *, access_token: str | None = None) -> E
135
135
  adapter that it connects to. Use `wait_for_client` to block
136
136
  execution until the client connects.
137
137
  """
138
-
138
+ ...
139
139
 
140
140
  @_api(cancelable=True)
141
141
  def wait_for_client() -> None:
@@ -153,6 +153,7 @@ def is_client_connected() -> bool:
153
153
  """True if a client is connected to the debug adapter that is
154
154
  debugging this process.
155
155
  """
156
+ ...
156
157
 
157
158
 
158
159
  @_api()