pydevd-pycharm 241.12662.44__tar.gz → 241.13688.16__tar.gz

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.

Potentially problematic release.


This version of pydevd-pycharm might be problematic. Click here for more details.

Files changed (291) hide show
  1. {pydevd-pycharm-241.12662.44/pydevd_pycharm.egg-info → pydevd-pycharm-241.13688.16}/PKG-INFO +1 -1
  2. pydevd-pycharm-241.13688.16/VERSION +1 -0
  3. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_comm.py +1 -1
  4. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_darwin_27_64.so +0 -0
  5. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_darwin_310_64.cpython-310-darwin.so +0 -0
  6. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_darwin_311_64.cpython-311-darwin.so +0 -0
  7. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_darwin_312_64.cpython-312-darwin.so +0 -0
  8. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_darwin_36_64.cpython-36m-darwin.so +0 -0
  9. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_darwin_37_64.cpython-37m-darwin.so +0 -0
  10. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_darwin_38_64.cpython-38-darwin.so +0 -0
  11. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_darwin_39_64.cpython-39-darwin.so +0 -0
  12. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_pep_669_tracing.py +409 -37
  13. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_pep_669_tracing_cython.cpython-312-darwin.so +0 -0
  14. pydevd-pycharm-241.13688.16/_pydevd_bundle/smart_step_into/__init__.py +47 -0
  15. pydevd-pycharm-241.13688.16/_pydevd_bundle/smart_step_into/pydevd_smart_step_into_27.py +84 -0
  16. pydevd-pycharm-241.13688.16/_pydevd_bundle/smart_step_into/pydevd_smart_step_into_311.py +61 -0
  17. pydevd-pycharm-241.13688.16/_pydevd_bundle/smart_step_into/pydevd_smart_step_into_36_310.py +89 -0
  18. pydevd-pycharm-241.13688.16/_pydevd_bundle/smart_step_into/pydevd_smart_step_into_util.py +16 -0
  19. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_310_64.cpython-310-darwin.so +0 -0
  20. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_36_64.cpython-36m-darwin.so +0 -0
  21. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_37_64.cpython-37m-darwin.so +0 -0
  22. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_38_64.cpython-38-darwin.so +0 -0
  23. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_darwin_39_64.cpython-39-darwin.so +0 -0
  24. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/attach.dylib +0 -0
  25. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16/pydevd_pycharm.egg-info}/PKG-INFO +1 -1
  26. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_pycharm.egg-info/SOURCES.txt +5 -0
  27. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/setup.py +1 -0
  28. pydevd-pycharm-241.12662.44/VERSION +0 -1
  29. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/LICENSE +0 -0
  30. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/MANIFEST.in +0 -0
  31. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/README.rst +0 -0
  32. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/__init__.py +0 -0
  33. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/_pydev_calltip_util.py +0 -0
  34. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/_pydev_completer.py +0 -0
  35. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/_pydev_filesystem_encoding.py +0 -0
  36. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/_pydev_getopt.py +0 -0
  37. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/_pydev_imports_tipper.py +0 -0
  38. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/_pydev_jy_imports_tipper.py +0 -0
  39. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/_pydev_log.py +0 -0
  40. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/_pydev_tipper_common.py +0 -0
  41. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/fix_getpass.py +0 -0
  42. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_code_executor.py +0 -0
  43. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_console_commands.py +0 -0
  44. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_console_types.py +0 -0
  45. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_console_utils.py +0 -0
  46. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_import_hook.py +0 -0
  47. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_imports.py +0 -0
  48. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_ipython_code_executor.py +0 -0
  49. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_ipython_completer.py +0 -0
  50. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_ipython_console.py +0 -0
  51. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_ipython_console_011.py +0 -0
  52. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_ipython_rich_output.py +0 -0
  53. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_is_thread_alive.py +0 -0
  54. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_localhost.py +0 -0
  55. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_log.py +0 -0
  56. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_monkey.py +0 -0
  57. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_monkey_qt.py +0 -0
  58. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_override.py +0 -0
  59. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_stdin.py +0 -0
  60. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_umd.py +0 -0
  61. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_bundle/pydev_versioncheck.py +0 -0
  62. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/__init__.py +0 -0
  63. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/_pydev_BaseHTTPServer.py +0 -0
  64. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/_pydev_SimpleXMLRPCServer.py +0 -0
  65. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/_pydev_SocketServer.py +0 -0
  66. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/_pydev_execfile.py +0 -0
  67. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/_pydev_inspect.py +0 -0
  68. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/_pydev_pkgutil_old.py +0 -0
  69. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/_pydev_saved_modules.py +0 -0
  70. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/_pydev_sys_patch.py +0 -0
  71. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_imps/_pydev_xmlrpclib.py +0 -0
  72. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_runfiles/__init__.py +0 -0
  73. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_runfiles/pydev_runfiles.py +0 -0
  74. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_runfiles/pydev_runfiles_coverage.py +0 -0
  75. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_runfiles/pydev_runfiles_nose.py +0 -0
  76. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_runfiles/pydev_runfiles_parallel.py +0 -0
  77. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_runfiles/pydev_runfiles_parallel_client.py +0 -0
  78. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_runfiles/pydev_runfiles_pytest2.py +0 -0
  79. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_runfiles/pydev_runfiles_unittest.py +0 -0
  80. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydev_runfiles/pydev_runfiles_xml_rpc.py +0 -0
  81. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/__init__.py +0 -0
  82. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevconsole_code_for_ironpython.py +0 -0
  83. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_additional_thread_info.py +0 -0
  84. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_additional_thread_info_regular.py +0 -0
  85. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_asyncio_provider.py +0 -0
  86. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_breakpointhook.py +0 -0
  87. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_breakpoints.py +0 -0
  88. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_bytecode_utils.py +0 -0
  89. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_collect_try_except_info.py +0 -0
  90. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_comm_constants.py +0 -0
  91. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_command_line_handling.py +0 -0
  92. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_console.py +0 -0
  93. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_console_integration.py +0 -0
  94. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_console_output.py +0 -0
  95. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_console_pytest.py +0 -0
  96. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_constants.py +0 -0
  97. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_custom_frames.py +0 -0
  98. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython.c +0 -0
  99. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython.pyx +0 -0
  100. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_312.c +0 -0
  101. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_27_32.pyd +0 -0
  102. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_27_64.pyd +0 -0
  103. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_310_32.cp310-win32.pyd +0 -0
  104. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_310_64.cp310-win_amd64.pyd +0 -0
  105. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_311_32.cp311-win32.pyd +0 -0
  106. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_311_64.cp311-win_amd64.pyd +0 -0
  107. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_312_32.cp312-win32.pyd +0 -0
  108. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_312_64.cp312-win_amd64.pyd +0 -0
  109. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_36_32.cp36-win32.pyd +0 -0
  110. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_36_64.cp36-win_amd64.pyd +0 -0
  111. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_37_32.cp37-win32.pyd +0 -0
  112. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_37_64.cp37-win_amd64.pyd +0 -0
  113. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_38_32.cp38-win32.pyd +0 -0
  114. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_38_64.cp38-win_amd64.pyd +0 -0
  115. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_39_32.cp39-win32.pyd +0 -0
  116. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_win32_39_64.cp39-win_amd64.pyd +0 -0
  117. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_cython_wrapper.py +0 -0
  118. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_dont_trace.py +0 -0
  119. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_dont_trace_files.py +0 -0
  120. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_exec.py +0 -0
  121. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_exec2.py +0 -0
  122. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_extension_api.py +0 -0
  123. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_extension_utils.py +0 -0
  124. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_frame.py +0 -0
  125. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_frame_type_handler.py +0 -0
  126. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_frame_utils.py +0 -0
  127. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_import_class.py +0 -0
  128. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_io.py +0 -0
  129. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_ipython_console_output.py +0 -0
  130. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_kill_all_pydevd_threads.py +0 -0
  131. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_pep_669_tracing_cython.c +0 -0
  132. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_pep_669_tracing_cython.cp312-win32.pyd +0 -0
  133. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_pep_669_tracing_cython.cp312-win_amd64.pyd +0 -0
  134. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_pep_669_tracing_cython.pyx +0 -0
  135. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_pep_669_tracing_wrapper.py +0 -0
  136. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_plugin_utils.py +0 -0
  137. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_process_net_command.py +0 -0
  138. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_referrers.py +0 -0
  139. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_reload.py +0 -0
  140. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_repr_utils.py +0 -0
  141. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_resolver.py +0 -0
  142. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_save_locals.py +0 -0
  143. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_signature.py +0 -0
  144. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_stackless.py +0 -0
  145. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_tables.py +0 -0
  146. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_thrift.py +0 -0
  147. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_trace_api.py +0 -0
  148. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_trace_dispatch.py +0 -0
  149. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_trace_dispatch_regular.py +0 -0
  150. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_traceproperty.py +0 -0
  151. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_user_type_renderers.py +0 -0
  152. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_user_type_renderers_utils.py +0 -0
  153. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_utils.py +0 -0
  154. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_vars.py +0 -0
  155. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_vm_type.py +0 -0
  156. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_bundle/pydevd_xml.py +0 -0
  157. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/__init__.py +0 -0
  158. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_eval_cython_wrapper.py +0 -0
  159. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_eval_main.py +0 -0
  160. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_36_38.c +0 -0
  161. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_39_310.c +0 -0
  162. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_32.cp310-win32.pyd +0 -0
  163. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_310_64.cp310-win_amd64.pyd +0 -0
  164. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_32.cp36-win32.pyd +0 -0
  165. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_36_64.cp36-win_amd64.pyd +0 -0
  166. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_32.cp37-win32.pyd +0 -0
  167. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_37_64.cp37-win_amd64.pyd +0 -0
  168. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_32.cp38-win32.pyd +0 -0
  169. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_38_64.cp38-win_amd64.pyd +0 -0
  170. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_32.cp39-win32.pyd +0 -0
  171. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_evaluator_win32_39_64.cp39-win_amd64.pyd +0 -0
  172. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_frame_tracing.py +0 -0
  173. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/_pydevd_frame_eval/pydevd_modify_bytecode.py +0 -0
  174. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/build.py +0 -0
  175. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/build_binaries_osx.py +0 -0
  176. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/build_binaries_windows.py +0 -0
  177. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/build_common.py +0 -0
  178. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/generate_code.py +0 -0
  179. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/generate_debugger_import_errors/generate_import_error.py +0 -0
  180. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/generate_debugger_import_errors/generation_utils.py +0 -0
  181. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/generate_debugger_import_errors/start_generation.py +0 -0
  182. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/msvccompiler_wrapper.py +0 -0
  183. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/names_to_rename.py +0 -0
  184. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/build_tools/rename_pep8.py +0 -0
  185. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/merge_pydev_pycharm.txt +0 -0
  186. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pycharm-console.rst +0 -0
  187. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pycharm-readme.rst +0 -0
  188. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_app_engine_debug_startup.py +0 -0
  189. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/__init__.py +0 -0
  190. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhook.py +0 -0
  191. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhookglut.py +0 -0
  192. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhookgtk.py +0 -0
  193. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhookgtk3.py +0 -0
  194. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhookpyglet.py +0 -0
  195. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhookqt4.py +0 -0
  196. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhookqt5.py +0 -0
  197. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhookqt6.py +0 -0
  198. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhooktk.py +0 -0
  199. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/inputhookwx.py +0 -0
  200. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/matplotlibtools.py +0 -0
  201. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/qt.py +0 -0
  202. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/qt_for_kernel.py +0 -0
  203. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/qt_loaders.py +0 -0
  204. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydev_ipython/version.py +0 -0
  205. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevconsole.py +0 -0
  206. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd.py +0 -0
  207. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/README.txt +0 -0
  208. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/_always_live_program.py +0 -0
  209. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/_check.py +0 -0
  210. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/_test_attach_to_process.py +0 -0
  211. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/_test_attach_to_process_linux.py +0 -0
  212. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/add_code_to_python_process.py +0 -0
  213. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/attach_amd64.dll +0 -0
  214. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/attach_linux_aarch64.so +0 -0
  215. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/attach_linux_amd64.so +0 -0
  216. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/attach_linux_x86.so +0 -0
  217. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/attach_pydevd.py +0 -0
  218. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/attach_script.py +0 -0
  219. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/attach_x86.dll +0 -0
  220. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/common/python.h +0 -0
  221. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/linux_and_mac/attach.cpp +0 -0
  222. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/linux_and_mac/compile_linux.sh +0 -0
  223. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/linux_and_mac/compile_linux_aarch64.sh +0 -0
  224. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/linux_and_mac/compile_mac.sh +0 -0
  225. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/linux_and_mac/lldb_prepare.py +0 -0
  226. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/run_code_on_dllmain_amd64.dll +0 -0
  227. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/run_code_on_dllmain_x86.dll +0 -0
  228. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/__init__.py +0 -0
  229. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/breakpoint.py +0 -0
  230. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/compat.py +0 -0
  231. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/crash.py +0 -0
  232. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/debug.py +0 -0
  233. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/disasm.py +0 -0
  234. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/event.py +0 -0
  235. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/interactive.py +0 -0
  236. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/module.py +0 -0
  237. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/plugins/README +0 -0
  238. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/plugins/__init__.py +0 -0
  239. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/plugins/do_example.py +0 -0
  240. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/plugins/do_exchain.py +0 -0
  241. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/plugins/do_exploitable.py +0 -0
  242. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/plugins/do_symfix.py +0 -0
  243. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/process.py +0 -0
  244. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/registry.py +0 -0
  245. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/search.py +0 -0
  246. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/sql.py +0 -0
  247. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/system.py +0 -0
  248. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/textio.py +0 -0
  249. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/thread.py +0 -0
  250. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/util.py +0 -0
  251. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/__init__.py +0 -0
  252. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/advapi32.py +0 -0
  253. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/context_amd64.py +0 -0
  254. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/context_i386.py +0 -0
  255. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/dbghelp.py +0 -0
  256. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/defines.py +0 -0
  257. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/gdi32.py +0 -0
  258. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/kernel32.py +0 -0
  259. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/ntdll.py +0 -0
  260. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/peb_teb.py +0 -0
  261. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/psapi.py +0 -0
  262. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/shell32.py +0 -0
  263. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/shlwapi.py +0 -0
  264. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/user32.py +0 -0
  265. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/version.py +0 -0
  266. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/win32/wtsapi32.py +0 -0
  267. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/winappdbg/window.py +0 -0
  268. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/windows/attach.cpp +0 -0
  269. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/windows/attach.h +0 -0
  270. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/windows/compile_windows.bat +0 -0
  271. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/windows/inject_dll.cpp +0 -0
  272. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/windows/run_code_on_dllmain.cpp +0 -0
  273. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/windows/stdafx.cpp +0 -0
  274. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/windows/stdafx.h +0 -0
  275. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_attach_to_process/windows/targetver.h +0 -0
  276. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_concurrency_analyser/__init__.py +0 -0
  277. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_concurrency_analyser/pydevd_concurrency_logger.py +0 -0
  278. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_concurrency_analyser/pydevd_thread_wrappers.py +0 -0
  279. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_file_utils.py +0 -0
  280. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_plugins/__init__.py +0 -0
  281. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_plugins/django_debug.py +0 -0
  282. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_plugins/extensions/__init__.py +0 -0
  283. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_plugins/jinja2_debug.py +0 -0
  284. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_pycharm.egg-info/dependency_links.txt +0 -0
  285. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_pycharm.egg-info/entry_points.txt +0 -0
  286. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_pycharm.egg-info/not-zip-safe +0 -0
  287. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_pycharm.egg-info/top_level.txt +0 -0
  288. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_pycharm.py +0 -0
  289. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/pydevd_tracing.py +0 -0
  290. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/setup.cfg +0 -0
  291. {pydevd-pycharm-241.12662.44 → pydevd-pycharm-241.13688.16}/setup_cython.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.1
2
2
  Name: pydevd-pycharm
3
- Version: 241.12662.44
3
+ Version: 241.13688.16
4
4
  Summary: PyCharm Debugger (used in PyCharm and PyDev)
5
5
  Home-page: https://github.com/JetBrains/intellij-community
6
6
  Author: JetBrains, Fabio Zadrozny and others
@@ -0,0 +1 @@
1
+ 241.13688.16
@@ -148,7 +148,7 @@ from _pydevd_bundle.pydevd_comm_constants import (
148
148
  MAX_IO_MSG_SIZE = 1000 #if the io is too big, we'll not send all (could make the debugger too non-responsive)
149
149
  #this number can be changed if there's need to do so
150
150
 
151
- VERSION_STRING = "241.12662.44"
151
+ VERSION_STRING = "241.13688.16"
152
152
 
153
153
  from _pydev_bundle._pydev_filesystem_encoding import getfilesystemencoding
154
154
  file_system_encoding = getfilesystemencoding()
@@ -17,7 +17,7 @@ from _pydevd_bundle.pydevd_comm_constants import CMD_STEP_OVER, CMD_SMART_STEP_I
17
17
  CMD_SET_BREAK, CMD_STEP_INTO, CMD_STEP_INTO_MY_CODE, CMD_STEP_INTO_COROUTINE, \
18
18
  CMD_STEP_RETURN
19
19
  from _pydevd_bundle.pydevd_constants import get_current_thread_id, PYDEVD_TOOL_NAME, \
20
- STATE_RUN, STATE_SUSPEND
20
+ STATE_RUN, STATE_SUSPEND, GlobalDebuggerHolder
21
21
  from _pydevd_bundle.pydevd_dont_trace_files import DONT_TRACE
22
22
  from _pydevd_bundle.pydevd_kill_all_pydevd_threads import kill_all_pydev_threads
23
23
  from pydevd_file_utils import NORM_PATHS_AND_BASE_CONTAINER, \
@@ -30,6 +30,399 @@ global_cache_skips = {}
30
30
  global_cache_frame_skips = {}
31
31
 
32
32
 
33
+ try:
34
+ monitoring = sys.monitoring
35
+ except AttributeError:
36
+ pass
37
+
38
+
39
+ def _make_frame_cache_key(code):
40
+ return code.co_firstlineno, code.co_name, code.co_filename
41
+
42
+
43
+ def _get_additional_info(thread):
44
+ # noinspection PyBroadException
45
+ try:
46
+ additional_info = thread.additional_info
47
+ if additional_info is None:
48
+ raise AttributeError()
49
+ except:
50
+ additional_info = set_additional_thread_info(thread)
51
+ return additional_info
52
+
53
+
54
+ def _get_abs_path_real_path_and_base_from_frame(frame):
55
+ try:
56
+ abs_path_real_path_and_base = NORM_PATHS_AND_BASE_CONTAINER[
57
+ frame.f_code.co_filename]
58
+ except:
59
+ abs_path_real_path_and_base \
60
+ = get_abs_path_real_path_and_base_from_frame(frame)
61
+
62
+ return abs_path_real_path_and_base
63
+
64
+
65
+ def _should_enable_line_events_for_code(frame, code, filename, info):
66
+ line_number = frame.f_lineno
67
+
68
+ # print('PY_START (should enable line events check) %s %s %s %s' % (line_number, code.co_name, filename, info.pydev_step_cmd))
69
+
70
+ py_db = GlobalDebuggerHolder.global_dbg
71
+
72
+ plugin_manager = py_db.plugin
73
+
74
+ stop_frame = info.pydev_step_stop
75
+ step_cmd = info.pydev_step_cmd
76
+
77
+ breakpoints_for_file = py_db.breakpoints.get(filename)
78
+
79
+ can_skip = False
80
+
81
+ if info.pydev_state == 1: # STATE_RUN = 1
82
+ can_skip = (step_cmd == -1 and stop_frame is None) \
83
+ or (step_cmd in (109, 108) and stop_frame is not frame)
84
+
85
+ if can_skip:
86
+ if plugin_manager is not None and py_db.has_plugin_line_breaks:
87
+ can_skip = not plugin_manager.can_not_skip(
88
+ py_db, frame, info)
89
+
90
+ # CMD_STEP_OVER = 108
91
+ if (can_skip and py_db.show_return_values
92
+ and info.pydev_step_cmd == 108
93
+ and frame.f_back is info.pydev_step_stop):
94
+ # trace function for showing return values after step over
95
+ can_skip = False
96
+
97
+ frame_cache_key = _make_frame_cache_key(code)
98
+ line_cache_key = (frame_cache_key, line_number)
99
+
100
+ if breakpoints_for_file:
101
+ if can_skip:
102
+ # When cached, 0 means we don't have a breakpoint
103
+ # and 1 means we have.
104
+ breakpoints_in_line_cache = global_cache_frame_skips.get(
105
+ line_cache_key, -1)
106
+ if breakpoints_in_line_cache == 0:
107
+ return False
108
+
109
+ breakpoints_in_frame_cache = global_cache_frame_skips.get(
110
+ frame_cache_key, -1)
111
+ if breakpoints_in_frame_cache != -1:
112
+ has_breakpoint_in_frame = breakpoints_in_frame_cache == 1
113
+ else:
114
+ has_breakpoint_in_frame = False
115
+ # Checks the breakpoint to see if there is a context
116
+ # match in some function.
117
+ curr_func_name = frame.f_code.co_name
118
+
119
+ # global context is set with an empty name
120
+ if curr_func_name in ('?', '<module>', '<lambda>'):
121
+ curr_func_name = ''
122
+
123
+ for breakpoint in breakpoints_for_file.values():
124
+ # will match either global or some function
125
+ if breakpoint.func_name in ('None', curr_func_name):
126
+ has_breakpoint_in_frame = True
127
+ break
128
+
129
+ # Cache the value (1 or 0 or -1 for default because of cython).
130
+ if has_breakpoint_in_frame:
131
+ global_cache_frame_skips[frame_cache_key] = 1
132
+ else:
133
+ global_cache_frame_skips[frame_cache_key] = 0
134
+
135
+ if can_skip and not has_breakpoint_in_frame:
136
+ return False
137
+
138
+ return True
139
+
140
+
141
+ def _clear_run_state(info):
142
+ info.pydev_step_stop = None
143
+ info.pydev_step_cmd = -1
144
+ info.pydev_state = STATE_RUN
145
+
146
+
147
+ def _stop_monitoring():
148
+ monitoring.set_events(monitoring.DEBUGGER_ID, 0)
149
+
150
+
151
+ def _enable_return_tracing(code):
152
+ local_events = monitoring.get_local_events(monitoring.DEBUGGER_ID, code)
153
+ monitoring.set_local_events(monitoring.DEBUGGER_ID, code,
154
+ local_events | monitoring.events.PY_RETURN)
155
+
156
+
157
+ def _enable_line_tracing(code):
158
+ local_events = monitoring.get_local_events(monitoring.DEBUGGER_ID, code)
159
+ monitoring.set_local_events(monitoring.DEBUGGER_ID, code,
160
+ local_events | monitoring.events.LINE)
161
+
162
+
163
+ def py_start_callback(code, instruction_offset):
164
+ frame = sys._getframe(1)
165
+
166
+ # print('ENTER: PY_START ', code.co_filename, frame.f_lineno, code.co_name)
167
+
168
+ py_db = GlobalDebuggerHolder.global_dbg
169
+
170
+ # noinspection PyBroadException
171
+ try:
172
+ if py_db._finish_debugging_session:
173
+ if not py_db._termination_event_set:
174
+ try:
175
+ if py_db.output_checker_thread is None:
176
+ kill_all_pydev_threads()
177
+ except:
178
+ traceback.print_exc()
179
+ py_db._termination_event_set = True
180
+ _stop_monitoring()
181
+ return
182
+
183
+ thread = threadingCurrentThread()
184
+
185
+ if not is_thread_alive(thread):
186
+ py_db.notify_thread_not_alive(get_current_thread_id(thread))
187
+ _stop_monitoring()
188
+
189
+ if py_db.thread_analyser is not None:
190
+ py_db.thread_analyser.log_event(frame)
191
+
192
+ if py_db.asyncio_analyser is not None:
193
+ py_db.asyncio_analyser.log_event(frame)
194
+
195
+ frame_cache_key = _make_frame_cache_key(code)
196
+
197
+ additional_info = _get_additional_info(thread)
198
+ pydev_step_cmd = additional_info.pydev_step_cmd
199
+ is_stepping = pydev_step_cmd != -1
200
+
201
+ if not is_stepping and frame_cache_key in global_cache_skips:
202
+ # print('skipped: PY_START (cache hit)', frame_cache_key, frame.f_lineno, code.co_name)
203
+ return
204
+
205
+ abs_path_real_path_and_base = \
206
+ _get_abs_path_real_path_and_base_from_frame(frame)
207
+
208
+ filename = abs_path_real_path_and_base[1]
209
+ file_type = get_file_type(abs_path_real_path_and_base[-1])
210
+
211
+ if file_type is not None:
212
+ if file_type == 1: # inlining LIB_FILE = 1
213
+ if not py_db.in_project_scope(filename):
214
+ # print('skipped: PY_START (not in scope)', abs_path_real_path_and_base[-1], frame.f_lineno, code.co_name, file_type)
215
+ global_cache_skips[frame_cache_key] = 1
216
+ return
217
+ else:
218
+ # print('skipped: PY_START', abs_path_real_path_and_base[-1], frame.f_lineno, code.co_name, file_type)
219
+ global_cache_skips[frame_cache_key] = 1
220
+ return
221
+
222
+ breakpoints_for_file = py_db.breakpoints.get(filename)
223
+ if not breakpoints_for_file and not is_stepping:
224
+ return
225
+
226
+ if is_stepping:
227
+ if (pydev_step_cmd == CMD_STEP_OVER
228
+ and frame is not additional_info.pydev_step_stop):
229
+ if frame.f_back is additional_info.pydev_step_stop:
230
+ _enable_return_tracing(code)
231
+ return
232
+ if (py_db.is_filter_enabled
233
+ and py_db.is_ignored_by_filters(filename)):
234
+ return
235
+ if (py_db.is_filter_libraries
236
+ and not py_db.in_project_scope(filename)):
237
+ return
238
+ # We are stepping, and there is no reason to skip the frame
239
+ # at this point.
240
+ _enable_line_tracing(code)
241
+ _enable_return_tracing(code)
242
+ return
243
+
244
+ # print('PY_START', base, frame.f_lineno, code.co_name, file_type)
245
+ if additional_info.is_tracing:
246
+ return
247
+
248
+ if _should_enable_line_events_for_code(frame, code, filename, additional_info):
249
+ _enable_line_tracing(code)
250
+ _enable_return_tracing(code)
251
+ else:
252
+ global_cache_skips[frame_cache_key] = 1
253
+ return
254
+
255
+ except SystemExit:
256
+ return
257
+ except Exception:
258
+ try:
259
+ if traceback is not None:
260
+ traceback.print_exc()
261
+ except:
262
+ pass
263
+ _stop_monitoring()
264
+
265
+
266
+ def py_line_callback(code, line_number):
267
+ frame = sys._getframe(1)
268
+ thread = threadingCurrentThread()
269
+ info = _get_additional_info(thread)
270
+
271
+ # print('LINE %s %s %s %s' % (frame.f_lineno, code.co_name, code.co_filename, info.pydev_step_cmd))
272
+
273
+ if info.is_tracing:
274
+ return
275
+
276
+ try:
277
+ info.is_tracing = True
278
+
279
+ py_db = GlobalDebuggerHolder.global_dbg
280
+
281
+ if py_db._finish_debugging_session:
282
+ return monitoring.DISABLE
283
+
284
+ stop_frame = info.pydev_step_stop
285
+ step_cmd = info.pydev_step_cmd
286
+
287
+ filename = _get_abs_path_real_path_and_base_from_frame(frame)[1]
288
+ breakpoints_for_file = py_db.breakpoints.get(filename)
289
+
290
+ frame_cache_key = _make_frame_cache_key(code)
291
+ line_cache_key = (frame_cache_key, line_number)
292
+
293
+ try:
294
+ breakpoint = None
295
+ stop = False
296
+ smart_stop_frame = info.pydev_smart_step_context.smart_step_stop
297
+ context_start_line = info.pydev_smart_step_context.start_line
298
+ context_end_line = info.pydev_smart_step_context.end_line
299
+ is_within_context = (context_start_line <= line_number
300
+ <= context_end_line)
301
+
302
+ if breakpoints_for_file and line_number in breakpoints_for_file:
303
+ breakpoint = breakpoints_for_file[line_number]
304
+ new_frame = frame
305
+ stop = True
306
+ if step_cmd == CMD_STEP_OVER:
307
+ if stop_frame is frame:
308
+ stop = False
309
+ elif step_cmd == CMD_SMART_STEP_INTO and (
310
+ frame.f_back is smart_stop_frame and is_within_context):
311
+ stop = False
312
+
313
+ if breakpoint:
314
+ if stop:
315
+ eval_result = False
316
+ if breakpoint.has_condition:
317
+ eval_result = handle_breakpoint_condition(
318
+ py_db, info, breakpoint, new_frame)
319
+
320
+ if breakpoint.expression is not None:
321
+ handle_breakpoint_expression(breakpoint, info, new_frame)
322
+ if (breakpoint.is_logpoint
323
+ and info.pydev_message is not None
324
+ and len(info.pydev_message) > 0):
325
+ cmd = py_db.cmd_factory.make_io_message(
326
+ info.pydev_message + os.linesep, '1')
327
+ py_db.writer.add_command(cmd)
328
+
329
+ if breakpoint.has_condition and not eval_result:
330
+ return
331
+ else:
332
+ if step_cmd != -1:
333
+ if (py_db.is_filter_enabled
334
+ and py_db.is_ignored_by_filters(filename)):
335
+ # ignore files matching stepping filters
336
+ return
337
+ if (py_db.is_filter_libraries
338
+ and not py_db.in_project_scope(filename)):
339
+ # ignore library files while stepping
340
+ return
341
+
342
+ if stop:
343
+ py_db.set_suspend(
344
+ thread,
345
+ CMD_SET_BREAK,
346
+ suspend_other_threads=breakpoint
347
+ and breakpoint.suspend_policy == "ALL",
348
+ )
349
+
350
+ # if thread has a suspend flag, we suspend with a busy wait
351
+ if info.pydev_state == STATE_SUSPEND:
352
+ py_db.do_wait_suspend(thread, frame, 'line', None)
353
+ elif not breakpoint:
354
+ # No stop from anyone and no breakpoint found in line (cache that).
355
+ global_cache_frame_skips[line_cache_key] = 0
356
+ except KeyboardInterrupt:
357
+ _clear_run_state(info)
358
+ raise
359
+ except:
360
+ traceback.print_exc()
361
+ raise
362
+
363
+ # Step handling. We stop when we hit the right frame.
364
+ try:
365
+ stop = False
366
+
367
+ if step_cmd == CMD_SMART_STEP_INTO:
368
+ if smart_stop_frame is frame:
369
+ if not is_within_context:
370
+ # We don't stop on jumps in multiline statements, which
371
+ # the Python interpreter does in some cases, if we they
372
+ # happen in smart step into context.
373
+ info.pydev_func_name = '.invalid.' # Must match the type in cython
374
+ stop = True # act as if we did a step into
375
+
376
+ curr_func_name = frame.f_code.co_name
377
+
378
+ if curr_func_name in ('?', '<module>') or curr_func_name is None:
379
+ curr_func_name = ''
380
+
381
+ if smart_stop_frame and smart_stop_frame is frame.f_back:
382
+ try:
383
+ if curr_func_name != info.pydev_func_name and frame.f_back:
384
+ # try to find function call name using bytecode analysis
385
+ curr_func_name = find_last_call_name(frame.f_back)
386
+ if curr_func_name == info.pydev_func_name:
387
+ stop = (find_last_func_call_order(
388
+ frame.f_back, context_start_line)
389
+ == info.pydev_smart_step_context.call_order)
390
+ except:
391
+ pydev_log.debug("Exception while handling smart step into "
392
+ "in frame tracer, step into will be "
393
+ "performed instead.")
394
+ info.pydev_smart_step_context.reset()
395
+ stop = True # act as if we did a step into
396
+
397
+ elif step_cmd == CMD_STEP_INTO:
398
+ stop = True
399
+
400
+ elif step_cmd == CMD_STEP_INTO_MY_CODE:
401
+ stop = py_db.in_project_scope(frame.f_code.co_filename)
402
+
403
+ elif step_cmd in (CMD_STEP_OVER, CMD_STEP_INTO_COROUTINE):
404
+ stop = stop_frame is frame
405
+ if stop:
406
+ # The only case we shouldn't stop on a line, is when
407
+ # we are traversing though asynchronous framework machinery
408
+ if step_cmd == CMD_STEP_INTO_COROUTINE:
409
+ stop = py_db.in_project_scope(frame.f_code.co_filename)
410
+
411
+ if stop:
412
+ py_db.set_suspend(thread, step_cmd)
413
+ py_db.do_wait_suspend(thread, frame, 'line', None)
414
+
415
+ except KeyboardInterrupt:
416
+ _clear_run_state(info)
417
+ raise
418
+ except:
419
+ traceback.print_exc()
420
+ raise
421
+
422
+ finally:
423
+ info.is_tracing = False
424
+
425
+
33
426
  class PEP669CallbackBase:
34
427
  def __init__(self, py_db):
35
428
  self.py_db = py_db
@@ -46,21 +439,6 @@ class PEP669CallbackBase:
46
439
  def thread(self):
47
440
  return threadingCurrentThread()
48
441
 
49
- @staticmethod
50
- def _make_frame_cache_key(code):
51
- return code.co_firstlineno, code.co_name, code.co_filename
52
-
53
- @staticmethod
54
- def _get_additional_info(thread):
55
- # noinspection PyBroadException
56
- try:
57
- additional_info = thread.additional_info
58
- if additional_info is None:
59
- raise AttributeError()
60
- except:
61
- additional_info = set_additional_thread_info(thread)
62
- return additional_info
63
-
64
442
  @staticmethod
65
443
  def _get_abs_path_real_path_and_base_from_frame(frame):
66
444
  try:
@@ -72,12 +450,6 @@ class PEP669CallbackBase:
72
450
 
73
451
  return abs_path_real_path_and_base
74
452
 
75
- @staticmethod
76
- def clear_run_state(info):
77
- info.pydev_step_stop = None
78
- info.pydev_step_cmd = -1
79
- info.pydev_state = STATE_RUN
80
-
81
453
 
82
454
  class PyStartCallback(PEP669CallbackBase):
83
455
  def __init__(self, py_db):
@@ -103,14 +475,14 @@ class PyStartCallback(PEP669CallbackBase):
103
475
  except:
104
476
  traceback.print_exc()
105
477
  py_db._termination_event_set = True
106
- self.stop_monitoring()
478
+ _stop_monitoring()
107
479
  return
108
480
 
109
481
  thread = self.thread
110
482
 
111
483
  if not is_thread_alive(thread):
112
484
  py_db.notify_thread_not_alive(get_current_thread_id(thread))
113
- self.stop_monitoring()
485
+ _stop_monitoring()
114
486
 
115
487
  if py_db.thread_analyser is not None:
116
488
  py_db.thread_analyser.log_event(frame)
@@ -118,9 +490,9 @@ class PyStartCallback(PEP669CallbackBase):
118
490
  if py_db.asyncio_analyser is not None:
119
491
  py_db.asyncio_analyser.log_event(frame)
120
492
 
121
- frame_cache_key = self._make_frame_cache_key(code)
493
+ frame_cache_key = _make_frame_cache_key(code)
122
494
 
123
- additional_info = self._get_additional_info(thread)
495
+ additional_info = _get_additional_info(thread)
124
496
  pydev_step_cmd = additional_info.pydev_step_cmd
125
497
  is_stepping = pydev_step_cmd != -1
126
498
 
@@ -219,7 +591,7 @@ class PyStartCallback(PEP669CallbackBase):
219
591
  # trace function for showing return values after step over
220
592
  can_skip = False
221
593
 
222
- frame_cache_key = self._make_frame_cache_key(code)
594
+ frame_cache_key = _make_frame_cache_key(code)
223
595
  line_cache_key = (frame_cache_key, line_number)
224
596
 
225
597
  if breakpoints_for_file:
@@ -300,7 +672,7 @@ class PyLineCallback(PEP669CallbackBase):
300
672
  def __call__(self, code, line_number):
301
673
  frame = self.frame
302
674
  thread = self.thread
303
- info = self._get_additional_info(thread)
675
+ info = _get_additional_info(thread)
304
676
 
305
677
  # print('LINE %s %s %s %s' % (frame.f_lineno, code.co_name, code.co_filename, info.pydev_step_cmd))
306
678
 
@@ -320,7 +692,7 @@ class PyLineCallback(PEP669CallbackBase):
320
692
  filename = self._get_abs_path_real_path_and_base_from_frame(frame)[1]
321
693
  breakpoints_for_file = self.py_db.breakpoints.get(filename)
322
694
 
323
- frame_cache_key = self._make_frame_cache_key(code)
695
+ frame_cache_key = _make_frame_cache_key(code)
324
696
  line_cache_key = (frame_cache_key, line_number)
325
697
 
326
698
  try:
@@ -387,7 +759,7 @@ class PyLineCallback(PEP669CallbackBase):
387
759
  # No stop from anyone and no breakpoint found in line (cache that).
388
760
  global_cache_frame_skips[line_cache_key] = 0
389
761
  except KeyboardInterrupt:
390
- self.clear_run_state(info)
762
+ _clear_run_state(info)
391
763
  raise
392
764
  except:
393
765
  traceback.print_exc()
@@ -446,7 +818,7 @@ class PyLineCallback(PEP669CallbackBase):
446
818
  self.py_db.do_wait_suspend(thread, frame, 'line', None)
447
819
 
448
820
  except KeyboardInterrupt:
449
- self.clear_run_state(info)
821
+ _clear_run_state(info)
450
822
  raise
451
823
  except:
452
824
  traceback.print_exc()
@@ -496,7 +868,7 @@ class PyRaiseCallback(PEP669CallbackBase):
496
868
 
497
869
  frame = self.frame
498
870
  thread = self.thread
499
- info = self._get_additional_info(thread)
871
+ info = _get_additional_info(thread)
500
872
 
501
873
  try:
502
874
  if frame is self._get_top_level_frame():
@@ -510,7 +882,7 @@ class PyRaiseCallback(PEP669CallbackBase):
510
882
  args = (
511
883
  self.py_db,
512
884
  self._get_abs_path_real_path_and_base_from_frame(frame)[1],
513
- self._get_additional_info(self.thread), self.thread,
885
+ _get_additional_info(self.thread), self.thread,
514
886
  global_cache_skips,
515
887
  global_cache_frame_skips
516
888
  )
@@ -519,11 +891,11 @@ class PyRaiseCallback(PEP669CallbackBase):
519
891
  if should_stop:
520
892
  handle_exception(args, frame, 'exception', exc_info)
521
893
  except KeyboardInterrupt:
522
- self.clear_run_state(info)
894
+ _clear_run_state(info)
523
895
  raise
524
896
 
525
897
  def _stop_on_unhandled_exception(self, exc_info):
526
- additional_info = self._get_additional_info(self.thread)
898
+ additional_info = _get_additional_info(self.thread)
527
899
  if not additional_info.suspended_at_unhandled:
528
900
  additional_info.suspended_at_unhandled = True
529
901
  stop_on_unhandled_exception(self.py_db, self.thread, additional_info,
@@ -536,7 +908,7 @@ class PyReturnCallback(PEP669CallbackBase):
536
908
 
537
909
  frame = self.frame
538
910
  thread = self.thread
539
- info = self._get_additional_info(thread)
911
+ info = _get_additional_info(thread)
540
912
 
541
913
  try:
542
914
  if self.py_db.show_return_values or self.py_db.remove_return_values_flag:
@@ -562,7 +934,7 @@ class PyReturnCallback(PEP669CallbackBase):
562
934
  if back_code.co_name != '<module>':
563
935
  PyReturnCallback.start_monitoring(back_code)
564
936
  except KeyboardInterrupt:
565
- self.clear_run_state(info)
937
+ _clear_run_state(info)
566
938
  raise
567
939
  finally:
568
940
  self.stop_monitoring(code)
@@ -0,0 +1,47 @@
1
+ # Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2
+ """Bytecode analyzing utils for extracting smart steps into variants."""
3
+
4
+ from collections import namedtuple
5
+
6
+ from _pydevd_bundle.pydevd_constants import IS_PY311_OR_GREATER, IS_PY36_OR_GREATER, \
7
+ IS_PY2, IS_CPYTHON
8
+
9
+ __all__ = [
10
+ 'find_stepping_variants',
11
+ 'get_stepping_variants',
12
+ ]
13
+
14
+
15
+ def _get_stepping_variants_dummy(_):
16
+ return []
17
+
18
+
19
+ get_stepping_variants = _get_stepping_variants_dummy
20
+
21
+ if not IS_CPYTHON:
22
+ pass
23
+ elif IS_PY311_OR_GREATER:
24
+ from _pydevd_bundle.smart_step_into.pydevd_smart_step_into_311 import (
25
+ get_stepping_variants)
26
+ elif IS_PY36_OR_GREATER:
27
+ from _pydevd_bundle.smart_step_into.pydevd_smart_step_into_36_310 import (
28
+ get_stepping_variants)
29
+ elif IS_PY2:
30
+ from _pydevd_bundle.smart_step_into.pydevd_smart_step_into_27 import (
31
+ get_stepping_variants)
32
+
33
+
34
+ _Variant = namedtuple('Variant', ['name', 'is_visited'])
35
+
36
+
37
+ def find_stepping_variants(frame, start_line, end_line):
38
+ """Finds the *ordered* stepping targets within the given line range."""
39
+ code = frame.f_code
40
+ last_instruction = frame.f_lasti
41
+ for instruction in get_stepping_variants(code):
42
+ if not instruction.lineno:
43
+ continue
44
+ if start_line <= instruction.lineno <= end_line:
45
+ yield _Variant(instruction.argval, instruction.offset < last_instruction)
46
+ if instruction.lineno > end_line:
47
+ break