Hyperkit's go api could not create console on stdio.
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 35/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- go
調査の方向性
まず、StdioInteractiveConsole と ConsoleStdio の Go API パスを run() まで追跡し、その後 isTerminal(os.Stdout) のチェックと、それに続く StdoutPipe() の呼び出しを調べます。stdio を TTY に接続した状態で両方のケースを再現し、TTY のケースで誤ったエラーが返されなくなり、ConsoleStdio で "exec: Stdout already set." が報告されなくなったことを確認します。
索引モデルが issue の本文から書いたものです。
説明
Could not create console on stdio with ConsoleStdio or StdioInteractiveConsole
Case 1. StdioInteractiveConsole
If I set the value of Serial.InteractiveConsole to StdioInteractiveConsole to create console on stdio, it return an error:
If StdioInteractiveConsole is set, stdio must be a TTY.
Unlike the description of the error, this error occurs when isTerminal() condition returns true. That is, although stdio is a tty, error occurs.
if isTerminal(os.Stdout) {
return errors.New("If StdioInteractiveConsole is set, stdio must be a TTY")
}
Case 2. ConsoleStdio
If I set the value of Hyperkit.Console (without Serial) field to ConsoleStdio and call run(), an error occurs: exec: Stdout already set.
With stdio console, cmd.Stdout is set to os.Stdout (cmd.Stdout = os.Stdout). But the next line, cmd.StdoutPipe() method is called and the method return error when cmd.Stdout is not nil.
- 主要言語
- C
- スター
- 3.7k
- フォーク
- 336
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
moby/hyperkit のほかの issue
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 15/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 20/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 38/100
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
duckdb/duckdb-wasm#2258 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
rofl0r/microsocks#110 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
espressif/esp-aws-iot#261 ·
-
os:linux
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
mpv-player/mpv#18510 · コメント 2 件 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100