Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Python plugin fails with debugpy 1.8.16 - timeout during adapter connection

オープン
#460 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
42/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
python
領域
testing-qa

調査の方向性

The reported failure points to the Python plugin’s start.py, where debugpy.listen() is called, and compares debugpy 1.8.16 with 1.8.15. Read that call and check the plugin’s debugpy dependency requirements, then reproduce with both versions using the listed Gauge command. Done means debugging connects successfully with debugpy 1.8.16 or the supported version constraint is clear.

索引モデルが issue の本文から書いたものです。

説明

bug help wanted

Python plugin fails with debugpy 1.8.16 - timeout during adapter connection

Environment

  • Gauge version: 1.6.21 (Commit Hash: 7d3f2cf)
  • Gauge plugins: html-report (4.3.3), json-report (0.5.2), python (0.4.11), screenshot (0.3.2)
  • VS Code Gauge extension: v0.2.3
  • debugpy version: 1.8.16 (broken), 1.8.15 (works)
  • Python version: 3.12.11
  • OS: Windows

Description

When running Gauge specs with debugpy 1.8.16, the Python plugin consistently fails with a timeout error during debugpy adapter connection. The plugin's start.py calls debugpy.listen() but the adapter connection times out. Downgrading to debugpy 1.8.15 resolves the issue completely.

This appears to be a compatibility issue between Gauge Python plugin and the latest debugpy version.

Steps to Reproduce

  1. Install debugpy 1.8.16: pip install debugpy==1.8.16
  2. Configure Gauge Python plugin with debugging enabled
  3. Run any Gauge spec: gauge run --hide-suggestion --simple-console <spec_file>
  4. Observer timeout error

Expected Behavior

The debugger should connect successfully and allow debugging of test execution, as it does in version 1.8.15.

Actual Behavior

Traceback (most recent call last):
  File "<venv>\Lib\site-packages\debugpy\server\api.py", line 235, in listen
    sock, _ = endpoints_listener.accept()
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<python>\Lib\socket.py", line 295, in accept
    fd, addr = self._accept()
               ^^^^^^^^^^^^^^
TimeoutError: timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\...\AppData\Roaming\gauge\plugins\python\0.4.11\start.py", line 72, in <module>
    main()
  File "C:\Users\...\AppData\Roaming\gauge\plugins\python\0.4.11\start.py", line 29, in main
    start()
  File "C:\Users\...\AppData\Roaming\gauge\plugins\python\0.4.11\start.py", line 52, in start
    debugpy.listen(('127.0.0.1', int(debug_port)))
  File "<venv>\Lib\site-packages\debugpy\public_api.py", line 47, in wrapper
    return wrapped(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "<venv>\Lib\site-packages\debugpy\server\api.py", line 133, in debug
    log.reraise_exception("{0}() failed:", func.__name__, level="info")
  File "<venv>\Lib\site-packages\debugpy\server\api.py", line 131, in debug
    return func(address, settrace_kwargs, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<venv>\Lib\site-packages\debugpy\server\api.py", line 249, in listen
    raise RuntimeError("timed out waiting for adapter to connect")
RuntimeError: timed out waiting for adapter to connect

Workaround

Downgrade to debugpy 1.8.15:

pip install debugpy==1.8.15

Additional Context

The issue is in the Gauge Python plugin's start.py (line 52) which calls debugpy.listen(('127.0.0.1', int(debug_port))). Something changed in debugpy 1.8.16 that breaks the adapter connection flow.

The timeout occurs even with extended timeout values configured in Gauge Python properties. This suggests the issue is not just timing but a breaking change in debugpy's API or connection handling.

Suggested Fix

  • Pin debugpy version to <=1.8.15 in plugin requirements, or
  • Update plugin's debugpy integration to work with 1.8.16+, or
  • Investigate if debugpy's listen() API changed and needs different parameters/setup
主要言語
Python
スター
96
フォーク
38
平均マージ
1時間 9分
マージ済み PR(30日)
3

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

getgauge/gauge-python のほかの issue

getgauge/gauge-python の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。