X11 title and ctype tests pick their display from $$ and can silently attach to a foreign X server
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 85/100
調査の方向性
tests/test_gfx_utf8_title.sh と tests/test_gfx_ctype_locale.sh を読み、Xvfb の起動方法を tests/ui_native_input.py の -displayfd 方式と比較してください。両方のスクリプトを更新し、それぞれ自身の Xvfb が報告した display を使うようにします。古い $$ % 式がなくなったことを確認し、make gfx-x11-regressions を実行してください。古い式で選ばれるはずの display で別の Xvfb が動作していても、両方のスクリプトが成功すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Found while fixing #2204 (PR #2214).
tests/test_gfx_utf8_title.sh uses DISPLAY_NUM=":$((90 + ($$ % 900)))" and tests/test_gfx_ctype_locale.sh uses ":$((190 + ($$ % 700)))". If that display is already taken (the dev box keeps Xvfb on :99, and #1717 plans a sweep there), the test's own Xvfb exits with "server already active". The readiness loop then sees xdpyinfo succeed against the OTHER server, and the test runs its cases there. The windows land on someone else's display, and when that server goes away mid-run the test fails for a reason unrelated to the code under test. On the dev box the collision hits when $$ % 900 == 9 for the title test.
The tree already has the standard answer: tests/ui_native_input.py starts Xvfb -displayfd FD, which makes the server pick a free display and report it. Nothing can then attach the test to a server it didn't start.
Done when
- Both scripts start Xvfb with
-displayfd(or otherwise prove the display is the one their own Xvfb holds) and read the display number from it.grep -n '\$\$ %' tests/test_gfx_utf8_title.sh tests/test_gfx_ctype_locale.shprints nothing. - Plant: with another Xvfb already running on the display the old formula would pick, each script still runs its cases on its own server (its Xvfb log shows the client connections) and passes.
-
make gfx-x11-regressionspasses.
— Duet (orchestrator)
- 主要言語
- C
- スター
- 3
- フォーク
- 7
- 平均マージ
- 6時間 21分
- マージ済み PR(30日)
- 323
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
InauguralSystems/EigenScript のほかの issue
-
needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
InauguralSystems/EigenScript#2311 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
InauguralSystems/EigenScript#2305 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
area:ci bug found-by:duet-audit
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
InauguralSystems/EigenScript#2283 ·
メンテナーはふだん 1 日以内に返信
-
area:docs found-by:duet-audit kind:docs-drift
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
InauguralSystems/EigenScript#2282 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
area:gfx kind:bug
難易度 1/5 1〜3時間 初心者へのやさしさ 90/100
InauguralSystems/EigenScript#2215 ·
メンテナーはふだん 1 日以内に返信
InauguralSystems/EigenScript の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
FujiNetWIFI/fujinet-firmware#2261 ·
メンテナーはふだん 1 日以内に返信
-
area/infrared type/bug
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
DarkFlippers/unleashed-firmware#1201 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
pocoproject/poco#5626 ·
メンテナーはふだん 2 日以内に返信
-
難易度 1/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
FujiNetWIFI/fujinet-lib#272 ·
メンテナーはふだん 1 日以内に返信