mirror of
https://github.com/espressif/esp-idf
synced 2025-03-09 09:09:10 -04:00
Merge branch 'fix/gdbgui_py3.13_v5.1' into 'release/v5.1'
fix(tools): Print message about GDBGUI being not supported with Python 3.13 (v5.1) See merge request espressif/esp-idf!34379
This commit is contained in:
commit
05a0f5e602
@ -389,14 +389,23 @@ def action_extensions(base_actions: Dict, project_path: str) -> Dict:
|
||||
return args
|
||||
|
||||
def _get_gdbgui_version(ctx: Context) -> Tuple[int, ...]:
|
||||
completed_process = subprocess.run(['gdbgui', '--version'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
||||
captured_output = completed_process.stdout.decode('utf-8', 'ignore')
|
||||
try:
|
||||
completed_process = subprocess.run(['gdbgui', '--version'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
||||
subprocess_success = True
|
||||
captured_output = completed_process.stdout.decode('utf-8', 'ignore')
|
||||
except FileNotFoundError:
|
||||
# This is happening at least with Python 3.12 when gdbgui is not installed
|
||||
subprocess_success = False
|
||||
|
||||
if completed_process.returncode != 0:
|
||||
if not subprocess_success or completed_process.returncode != 0:
|
||||
if sys.version_info[:2] >= (3, 11) and sys.platform == 'win32':
|
||||
raise SystemExit('Unfortunately, gdbgui is supported only with Python 3.10 or older. '
|
||||
'See: https://github.com/espressif/esp-idf/issues/10116. '
|
||||
'Please use "idf.py gdb" or debug in Eclipse/Vscode instead.')
|
||||
if sys.version_info[:2] >= (3, 13) and sys.platform != 'win32':
|
||||
raise SystemExit('Unfortunately, gdbgui is supported only with Python 3.12 or older. '
|
||||
'See: https://github.com/cs01/gdbgui/issues/494. '
|
||||
'Please use "idf.py gdb" or debug in Eclipse/Vscode instead.')
|
||||
raise FatalError('Error starting gdbgui. Please make sure gdbgui has been installed with '
|
||||
'"install.{sh,bat,ps1,fish} --enable-gdbgui" and can be started. '
|
||||
f'Error: {captured_output}', ctx)
|
||||
|
@ -3,5 +3,6 @@
|
||||
|
||||
# gdbgui Python 3.11 issue https://github.com/cs01/gdbgui/issues/447 was fixed in 0.15.2.0. Windows users need an
|
||||
# older Python to use since new gdbgui versions don't support Windows anymore.
|
||||
gdbgui; sys_platform != 'win32'
|
||||
# Python 3.13 is not supported: https://github.com/cs01/gdbgui/issues/494
|
||||
gdbgui; sys_platform != 'win32' and python_version < "3.13"
|
||||
gdbgui; sys_platform == 'win32' and python_version < "3.11"
|
||||
|
Loading…
x
Reference in New Issue
Block a user