Windows ANSI initialization uses nonexistent subprocess.STD_OUTPUT_HANDLE

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

@Fire162 がすでに取り組んでいます。

2026年10月29日 から。

  • #727 @Fire162 による — オープン

評価

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

調査の方向性

fire/formatting_windows.py の initialize_or_disable() から始め、Windows の標準出力ハンドルをどのように取得しているか確認してください。issue では subprocess.STD_OUTPUT_HANDLE の参照が欠けていることを指摘し、初期化経路全体が Windows でテストされていないと述べています。コードが有効な Win32 定数を使用し、指定された条件下で Windows の初期化経路が機能すれば完了です。

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

説明

In fire/formatting_windows.py, initialize_or_disable() references a constant that does not exist in Python's subprocess module.

Problematic code
out_handle = kernel32.GetStdHandle(
    subprocess.STD_OUTPUT_HANDLE
)
Verification
import subprocess

print(hasattr(subprocess, 'STD_OUTPUT_HANDLE'))
# False
Expected behavior

The application should obtain the Windows standard output handle using a valid Win32 constant.

Actual behavior

When this code path executes, accessing the missing attribute would raise AttributeError.

Environment

This affects the Windows-specific code path when Colorama is installed, standard output is a terminal, and platform.release() returns '10'.

Testing

Verified that the attribute is absent. The complete Windows initialization path has not been tested on Windows.

主要言語
Python
スター
28.2k
フォーク
1.5k
PR マージ指標
30日以内にマージされた PR はありません

環境構築

はじめの一歩

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

google/python-fire のほかの issue

google/python-fire の issue をすべて見る

似ている issue

Python の issue をもっと見る

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

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