変更点—ドキュメントをクリックします
提供:Dev Guides
Click/docs/8.0.x/changes
変更点
バージョン8.0.3
2021-10-10をリリース
Path(resolve_path=True)
タイプが無効なパスを作成する問題を修正しました。 :issue: `2088`readline
をインポートしても、バックスペースを押したときにconfirm()
プロンプトが消えることはありません。 :issue: `2092`invoke()
によって挿入されたデフォルト値は、対応するパラメーターのタイプにキャストされます。 :issue: `2089、2090`
バージョン8.0.2
2021年10月8日リリース
is_flag
がFalse
の場合、is_bool_flag
はTrue
に設定されません。 :issue: `1925`- Bashバージョンの検出はロケールに依存しません。 :issue: `1940`
multiple=True
の場合、空のdefault
値は表示されません。 :issue: `1969`- 絶対ファイルパスなどのスラッシュで始まる引数のシェル補完を修正しました。 :issue: `1929`
Path
タイプとresolve_path=True
は、相対シンボリックリンクを、含まれているディレクトリからの相対リンクに解決します。 :issue: `1921`- 完了しても、終了時にPythonのリソースのクリーンアップがスキップされないため、予期しない警告出力が回避されます。 :issue: `1738、2017`
prompt
関数のtype
引数の型注釈を修正しました。 :issue: `2062`- 下線を追加するときに誤って追加された上線と斜体のスタイルを修正しました。 :pr: `2058`
count=True
のオプションでは、ヘルプテキストに「[x> = 0]」と表示されません。 :issue: `2072`- デフォルト値は、処理中にパラメータタイプに2回キャストされません。 :issue: `2085`
multiple
およびflag_value
のオプションは、内部プレースホルダーを残す代わりにフラグ値を使用します。 :issue: `2001`
バージョン8.0.1
2021年5月19日リリース
- 最上位の名前をエクスポート済みとしてマークして、タイプチェックがユーザープロジェクトのインポートを理解できるようにします。 :issue: `1879`
Context.obj
にAny
の注釈を付けて、型チェックで任意のオブジェクトに対するすべての操作が可能になるようにします。 :issue: `1885`- Python3.6.0で利用できなかったいくつかのタイプを修正します。 :issue: `1882`
ProgressBar
オブジェクトを反復処理するためのタイプチェックを修正しました。 :issue: `1892`- NS
importlib_metadata
バックポートパッケージはPython <3.8にインストールされます。 :issue: `1889` nargs=-1
の引数は、コマンドライン値が指定されていない場合にのみenvvar値を使用します。 :issue: `1903`- フラグオプションは、通常のオプションが
default
から行うように、指定されている場合はflag_value
からタイプを推測します。 :issue: `1886` - 文字列に加えて、カスタムパラメータタイプにすでに有効な値が渡される可能性があるというドキュメントを追加しました。 :issue: `1898`
- コマンドを解決すると、
command.name
ではなく、指定された名前が返され、テキストとdefault_map
ルックアップを支援するための意図しない変更が修正されます。AliasedGroup
のようなパターンを使用する場合は、resolve_command
をオーバーライドして、必要に応じて返される名前を変更してください。 :issue: `1895` - デフォルト値が無効な場合でも、ヘルプテキストの表示が妨げられることはありません。 :issue: `1889`
- メインコマンドを呼び出してWindowsでパターン拡張を無効にする場合は、
windows_expand_args=False
を渡します。 CMDでパターンをエスケープする方法はないため、プログラムがパターンをそのまま渡す必要がある場合は、拡張を無効にする必要があります。 :issue: `1901`
バージョン8.0.0
2021年5月11日リリース
- Python2および3.5のサポートを終了します。
- Coloramaは、スタイルと色のサポートを提供するために、常にWindowsにインストールされます。 :pr: `1784`
- コマンドにreprを追加し、よりわかりやすいデバッグのためにコマンド名を表示します。 :issue: `1267` 、:pr:` 1295`
- コマンドラインパラメーターのソースを区別するためのサポートを追加します。 :issue: `1264` 、:pr:` 1329`
ProgressBar.update
にオプションのパラメータを追加して、current_item
を設定します。 :issue: `1226` 、:pr:` 1332`version_option
は、pkg_resources
の代わりにimportlib.metadata
(またはimportlib_metadata
バックポート)を使用します。 バージョンは、エントリポイント名ではなく、パッケージ名に基づいて検出されます。 Pythonパッケージ名は、インストールされているパッケージ名と一致するか、package_name=
で渡される必要があります。 :issue: `1582`hide_input=True
のプロンプトの検証が失敗した場合、その値はエラーメッセージに表示されません。 :issue: `1460`IntRange
またはFloatRange
オプションは、ヘルプテキストに許容範囲を示します。 :issue: `1525` 、:pr:` 1303`min_open
とmax_open
を設定することにより、IntRange
とFloatRange
の境界を閉じる(<=
)代わりに開く(<
)ことができます。 ]。 これを反映するためにエラーメッセージが変更されました。 :issue: `1100`- 重複するフラグ名(
"--foo/--foo"
)で定義されたオプションは、ValueError
を発生させます。 :issue: `1465` echo()
は、Windowsでpytestのcapsys
フィクスチャを使用するときに失敗しません。 :issue: `1590`- コマンドを解決すると、一致した名前ではなく、正規のコマンド名が返されます。 これにより、
AliasedGroup
のようなパターンを使用するときに、ヘルプテキストやContext.invoked_subcommand
などの動作の一貫性が保たれます。 :issue: `1422` BOOL
タイプは、「オン」と「オフ」の値を受け入れます。 :issue: `1629`Group
とinvoke_without_command=True
は、常に結果コールバックを呼び出します。 :issue: `1178`nargs == -1
およびnargs > 1
は、環境変数およびデフォルトからの値について解析および検証されます。 :issue: `729`python -m name
でモジュールまたはパッケージを実行するときにプログラム名を検出します。 :issue: `1603`- サブコマンドのヘルプ概要に必要な親引数を含めます。 :issue: `1475`
show_default=True
を使用したブールフラグのヘルプでは、True
またはFalse
の代わりにフラグ名が表示されます。 :issue: `1538`style()
およびsecho()
に渡された非文字列オブジェクトは文字列に変換されます。 :pr: `1146`edit(require_save=True)
は、1秒の解像度のファイルシステムで非常に高速に終了するエディターの保存を検出します。 :pr: `1050`- 新しいクラス属性により、アプリケーション全体でカスタムコアオブジェクトを簡単に使用できるようになります。 :pr: `938`
Command.context_class
は、コマンドの実行時に作成されるコンテキストを制御します。Context.invoke
は同じタイプの新しいコンテキストを作成するため、カスタムタイプは呼び出されたサブコマンドに保持されます。Context.formatter_class
は、ヘルプと使用法の生成に使用されるフォーマッターを制御します。Group.command_class
は、@group.command()
を使用してサブコマンドのデフォルトタイプを変更します。Group.group_class
は、@group.group()
のサブグループのデフォルトタイプを変更します。type
に設定すると、グループ自体と同じタイプのサブグループが作成されます。- コアオブジェクトは、サブクラス化のサポートを向上させるために、一貫して
super()
を使用します。
Context.with_resource()
を使用して、通常with
ステートメントで使用されるリソースを管理し、サブコマンドやコールバック全体で使用できるようにして、コンテキストの終了時にクリーンアップします。 :pr: `1191`- テストランナーの
invoke()
メソッドによって返される結果オブジェクトには、呼び出されたコマンドによって返される値を持つreturn_value
属性があります。 :pr: `1312` Choice
タイプの必須引数は、中括弧で囲まれた選択肢を示し、必須であることを示します({a|b|c}
)。 :issue: `1272`- 名前だけが
option()
に渡される場合、Clickは名前の名前を--name
に変更することを提案します。 :pr: `1355` - コンテキストの
show_default
パラメーターは、デフォルトで親コンテキストの値になります。 :issue: `1565` click.style()
は256およびRGBカラーコードを出力できます。 最近のほとんどの端末はこれらのコードをサポートしています。 :pr: `1429`CliRunner.invoke()
を使用する場合、置き換えられたstdin
ファイルにはname
およびmode
属性があります。 これにより、-
値を持つFile
オプションが非テスト動作と一致するようになります。 :issue: `1064`Group
を作成するときは、dictの代わりにコマンドのリストを渡すことを許可してください。 :issue: `1339`- 長いオプション名が有効でない場合は、
difflib
を使用して、可能な修正についてより適切な提案を行ってください。 :issue: `1446` - コアオブジェクトには
to_info_dict()
メソッドがあります。 これにより、ユーザー向けのドキュメントを生成するツールに役立つ可能性のあるオブジェクトの構造に関する情報が収集されます。 CLI全体の構造を取得するには、Context(cli).to_info_dict()
を使用します。 :issue: `461` - シェル補完システムを再設計します。 :issue: `1484` 、:pr:` 1622`
- Bash> = 4.4、Zsh、およびFishをサポートし、他のシェルのサポートを追加する拡張機能を備えています。
- コマンド、グループ、パラメーター、およびタイプがそれらの補完の提案をオーバーライドできるようにします。
- グループは、コマンドが登録された名前を完成させます。これは、作成された名前とは異なる場合があります。
- オプションと引数の
autocompletion
パラメーターの名前がshell_complete
に変更されました。 関数はctx, param, incomplete
を取り、すべての値を返すのではなく照合を行い、文字列のリストまたはCompletionItem
のリストを返す必要があります。 古い名前と動作は非推奨になり、8.1で削除されます。 - 完了を開始するために使用されるenvvar値の順序が変更されました。
source_{shell}
ではなく{shell}_source
のように、シェルが最初に来るようになり、常に必要になります。
- Completionは、引用シーケンスまたはエスケープシーケンスが不完全なコマンドライン文字列を正しく解析します。 :issue: `1708`
- 追加のコンテキスト設定(
obj=...
など)が完了システムに渡されます。 :issue: `942` - 完了時に
--help
オプションを含めます。 :pr: `1504` ParameterSource
はenum.Enum
サブクラスです。 :issue: `1530`- ブール型とUUID型は、変換する前に周囲のスペースを取り除きます。 :issue: `1605`
- パラメータタイプの検証からのエラーメッセージがより一貫性のあるものになるように調整されました。 引用符は、無効な値を区別するために使用されます。 :issue: `1605`
nargs
> 1およびmultiple=True
のパラメーターのデフォルト値は、タプルのリストである必要があります。 :issue: `1649`- パラメータの値を取得するとき、一貫した処理を保証するために、他のソースと同じセクションでデフォルトが試行されます。 :issue: `1649`
- すべてのパラメータタイプは、すでに正しいタイプである値を受け入れます。 :issue: `1649`
- シェルの完了では、引数の値がコマンドライン引数からのものでない場合、引数は不完全であると見なされます。 :issue: `1649`
- プロンプトが表示されたパラメーター値を追跡するために
ParameterSource.PROMPT
を追加しました。 :issue: `1649` nargs
> 1のオプションで、デフォルトが指定されていない場合にエラーが発生しなくなりました。nargs
> 1のパラメーターは、デフォルトでNone
になり、multiple=True
またはnargs=-1
のパラメーターは、デフォルトで空のタプルになります。 :issue: `472`- オプションが渡されなかったかのように、空のenv変数を処理します。 これにより、7.1で導入された変更が拡張され、より多くの場合に一貫性が保たれます。 :issue: `1285`
Parameter.get_default()
は、Context.default_map
をチェックして、ヘルプテキスト、invoke()
、およびプロンプトで一貫してオーバーライドを処理します。 :issue: `1548`prompt_required
パラメータをOption
に追加します。False
に設定すると、値が渡されなかった場合にのみユーザーに入力を求めるプロンプトが表示されます。 :issue: `736`- オプションへの値の提供は、
is_flag=False
を介してオプションにすることができ、代わりに、値の入力を求めたり、デフォルト値として渡すことができます。 :issue: `549、736、764、921、1015、1618` Command.options_metavar
が空の場合のフォーマットを修正しました。 :pr: `1551`- 折り返すオプションヘルプテキスト間のスペースの追加を元に戻します。 :issue: `1831`
prompt
に渡されるデフォルト値は、入力値と同じように正しいタイプにキャストされます。 :pr: `1517`- 自動生成された短いヘルプメッセージは、フレーズの最初の終わりまたは二重改行で停止します。 :issue: `1082`
update_min_steps
を設定することにより、非常に高速なイテレーターで効率を上げるためにプログレスバーのレンダリング手順をスキップします。 :issue: `676`Choice
のシェル補完を行うときは、case_sensitive=False
を尊重してください:issue: `1692`- ポケットベルの実装では、
mktemp()
の代わりにmkstemp()
を使用してください。 :issue: `1752` Option.show_default
が文字列の場合、default
がNone
であっても表示されます。 :issue: `1732`click.get_terminal_size()
は非推奨であり、8.1で削除される予定です。 代わりにshutil.get_terminal_size()
を使用してください。 :issue: `1736`temp_dir
を渡すことにより、CLIRunner.isolated_filesystem
によって作成された一時ディレクトリの場所を制御します。 カスタムディレクトリは自動的に削除されません。 :issue: `395`click.confirm()
は、default=None
で呼び出された場合、入力が行われるまでプロンプトを表示します。 :issue: `1381`- オプションプロンプトは、タイプに加えてオプションのコールバックを使用して値を検証します。 :issue: `457`
confirmation_prompt
はカスタム文字列に設定できます。 :issue: `723`- WindowsのJupyterでスタイル付き出力を許可します。 :issue: `1271`
style()
は、strikethrough
、italic
、およびoverline
スタイルをサポートします。 :issue: `805、1821`- 複数行のマーカーが短いヘルプテキストから削除されました。 :issue: `1597`
- ファイルがTTYでない場合に、ラベルのみをエコーするプログレスバーの動作を復元します。 :issue: `1138`
- 実行時間が0.5秒未満の場合でも、プログレスバーの出力が表示されます。 :issue: `1648`
- プログレスバー
item_show_func
には、前のアイテムではなく、現在のアイテムが表示されます。 :issue: `1353` Path
パラメータタイプをpath_type=pathlib.Path
に渡して、文字列の代わりにパスオブジェクトを返すことができます。 :issue: `405`TypeError
は、multiple=True
またはnargs > 1
のパラメーターに反復不可能なデフォルトがある場合に発生します。 :issue: `1749`Context.meta
からキーを渡すためのpass_meta_key
デコレータを追加します。 これは、meta
を使用して情報を保存する拡張機能に役立ちます。 :issue: `1739`Path
resolve_path
resolves symlinks on Windows Python < 3.8. :issue: `1813`- コマンドの廃止通知は、ヘルプテキストの先頭と短いヘルプに表示されます。 通知はすべて大文字ではありません。 :issue: `1791`
- Windowsで
sys.argv
から引数を取ると、globパターン、ユーザーdir、およびenv変数が展開されます。 :issue: `1096` - アプリケーションがClickの組み込み文字列を翻訳できるようにするために、CLIによって
gettext()
でマークされたメッセージが表示されます。 :issue: `303` - テストランナー使用時に
stderr
に無効な文字を書き込んでも、UnicodeEncodeError
は発生しません。 :issue: `848` - バックスペースを押すと、
readline
が入力だけでなくprompt()
行全体をクリアする問題を修正します。 :issue: `665` Context.invoke()
に渡されたすべてのkwargをctx.params
に追加します。Context.forward()
呼び出しをネストするときの不整合を修正します。 :issue: `1568`MultiCommand.resultcallback
デコレータの名前がresult_callback
に変更されました。 古い名前は廃止されました。 :issue: `1160`echo_stdin=True
使用時のCliRunner
出力の問題を修正しました。 :issue: `1101`- 返される文字列が
max_width + 3
と同じ長さになる可能性があるclick.utils.make_default_short_help
のバグを修正します。 :issue: `1849` - パラメータを定義するとき、
default
はmultiple
およびnargs
で検証されます。 処理中の値についても、さらに検証が行われます。 :issue: `1806` HelpFormatter.write_text
は、テキストを折り返すときに全行幅を使用します。 :issue: `1871`
バージョン7.1.2
2020年4月27日リリース
echo_with_pager
およびedit
のコマンドへのシェル引用の適用を元に戻します。 これはコマンドにスペースを入れることを目的としていましたが、文字列が実際にコマンドと引数である場合、またはWindowsで問題が発生しました。 代わりに、文字列はコマンドラインに表示されるため、手動で引用符で囲む必要があります。 :issue: `1514`
バージョン7.1
2020-03-09リリース
- PyPIパッケージ名を修正しました。「クリック」は再び小文字になります。
unicode_literals
エラーメッセージのリンクを修正してください。 :pr: `1151`- UNIXJupyterノートブックでのカラー出力のサポートを追加します。 :issue: `1185`
- ANSIコントロールを削除する操作は、カーソルの非表示/表示シーケンスを削除します。 :issue: `1216`
bytes
の未使用の互換シムを取り外します。 :pr: `1195`- termui、特にWindowsのgetcharを中心にテストを拡張します。 :issue: `1116`
- MSVC14で構築されたWindowsPython2.7の出力を修正しました。 :pr: `1342`
- MSYS2で実行しているときの
OSError
を修正しました。 :issue: `1338` - Windowsで
NUL
ストリームにリダイレクトするときのOSError
を修正しました。 :issue: `1065` - WindowsでUnicode引数を解析するときのメモリリークを修正しました。 :issue: `1136`
- 新しいAppEngine環境でのエラーを修正しました。 :issue: `1462`
click.Choice
:issue: `1277` 、:pr:` 1318` に対して渡された選択肢の1つを常に返しますno_args_is_help
オプションをclick.Command
に追加します。デフォルトはFalseです:pr: `1167`show_default
パラメーターをContext
に追加して、デフォルトをグローバルに表示できるようにします。 :issue: `1018`- オプションが渡されなかったかのように
env MYPATH=
を処理します。 :issue: `1196` - アクティブなプログレスバーインスタンスで
next(bar)
を呼び出すことが再び可能になります。 :issue: `1125` open_file
とatomic=True
は、既存のファイルのアクセス許可を保持し、新しいファイルの現在のumaskを尊重します。 :issue: `1376`mix_stderr=False
でテストCliRunner
を使用する場合、result.stderr
が空の場合、ValueError
は発生しません。 :issue: `1193`CliRunner.invoke
から未使用のmix_stderr
パラメーターを削除します。 :issue: `1435`- ブールフラグを使用して
type=bool
を指定したときに発生するTypeError
を修正しました。 :issue: `1287` - オプションのヘルプテキストの改行は、不均一な改行を避けるために、再折り返しの前にスペースに置き換えられます。 :issue: `834`
MissingParameter
例外は、Pythonインタープリターで印刷できます。 :issue: `1139`- プロンプト中にファイルタイプオプションのデフォルト値がどのように表示されるかを修正しました。 :issue: `914`
-
を含むコマンドの環境変数の自動生成を修正しました。 :issue: `1253`- オプションのヘルプテキストは、再折り返し時に改行をスペースに置き換えますが、段落の区切りを保持し、複数行の書式を修正します。 :issue: `834、1066、1397`
- 折り返されているオプションのヘルプテキストは、次のオプションと区別するために末尾に改行を追加します。 :issue: `1075`
click.edit()
に使用するエディターを決定するときは、sensible-editor
を考慮してください。 :pr: `1469`click.edit
に渡される実行可能パスなどのシステムコールへの引数には、スペースを含めることができます。 :pr: `1470`- ZSH完了の自動ロードとエラー処理を追加します。 :issue: `1348`
Command
、Group
、Option
、およびArgument
にreprを追加して、よりわかりやすいデバッグ用の名前を表示します。 :issue: `1267`- 値が
--
区切り文字の後に-
で始まる場合、補完はオプション名を考慮しません。 :issue: `1247` - ZSH補完は、値の特殊文字をエスケープします。 :pr: `1418`
- Fishシェルの完了サポートを追加します。 :pr: `1423`
- バイトのデコードオプション値は、多くの場合UTF-8にフォールバックします。 :pr: `1468`
- 古い2引数パラメータコールバックに関する警告を非推奨の警告にします。これは8.0で削除されます。 これは、Click2.0以降の警告です。 :pr: `1492`
- エラーメッセージを調整して、使用される引用符のタイプを標準化し、Pythonからのエラーメッセージと一致するようにします。
バージョン7.0
2018年9月25日リリース
- Python2.6および3.3のサポートを終了します。 :pr: `967、976`
click.Choice
の欠落しているメッセージをラップします。 :issue: `202` 、:pr:` 1000`- ネイティブのZSHオートコンプリートサポートを追加します。 :issue: `323` 、:pr:` 865`
- Python2のバイト配列からANSIカラー情報が解析されないことを文書化します。 :issue: `334`
CliRunner
のバイトストリッピング動作を文書化します。 :issue: `334` 、:pr:` 1010`- 使用エラーは、
--help
オプションを示唆するようになりました。 :issue: `393` 、:pr:` 557` - ストリーミングページャーを実装します。 :issue: `409` 、:pr:` 889`
- バーのフォーマットを独自のメソッドに抽出します。 :pr: `414`
- 指定された日時形式で入力を変換するための
DateTime
タイプを追加します。 :pr: `423` secho
の最初の引数は、echo
のように、None
にすることができます。 :pr: `424`ProgressBar.update
の最初の呼び出しに渡される引数が0の場合のProgressBar.make_step
のZeroDivisionError
を修正します。 :issue: `447` 、:pr:` 1012`- 合計実行時間が表示されている場合にのみプログレスバーを表示します。 :pr: `487`
- ヘルプからコマンドとオプションを非表示にする機能が追加されました。 :pr: `500`
- オプションが
required=True
である可能性があることを文書化します。 :issue: `514` 、:pr:` 1022` Context.exit
への非スタンドアロン呼び出しは、sys.exit
を呼び出すのではなく、終了コードを返します。 :issue: `667` 、:pr:` 533、1098`click.getchar()
は、他のプラットフォームと同じように、Windows上のPython3でUnicodeを返します。 :issue: `537、821、822、1088` 、:pr:` 1108`FloatRange
タイプを追加しました。 :pr: `538、553`Options
およびArguments
のtype=click.Choice
のbash補完のサポートが追加されました。 :issue: `535` 、:pr:` 681`Argument
パラメーター宣言には1つの位置引数のみを許可してください。 :issue: `568、574` 、:pr:` 1014`- Choiceのオプションとして
case_sensitive=False
を追加します。 :issue: `569` click.getchar()
は、Linuxの「^ C」ではKeyboardInterrupt
を、「^ D」ではEOFError
を正しく発生させます。 :issue: `583` 、:pr:` 1115`- Linuxでの
click.getchar(echo=True)
のエンコードの問題を修正しました。 :pr: `1115` - エラーの
param_hint
は、param自体から派生するようになりました。 :issue: `598、704` 、:pr:` 709` - 引数が使用エラーにフォーマットされたときに、名前ではなくメタ変数が使用されることを確認するテストを追加します。 :pr: `612`
CliRunner.invoke
でprog_name
を追加として設定できるようにします。 :issue: `616` 、:pr:` 999`- docstringから取得したヘルプテキストは、
\f
フォームフィード文字で切り捨てられます。これは、Sphinxスタイルのパラメータードキュメントを非表示にするのに役立ちます。 :pr: `629、1091` launch
はCygwinで正しく動作するようになりました。 :pr: `650`- 反復後に進行状況を更新します。 :issue: `651` 、:pr:` 706`
CliRunner.invoke
は、Unixシェルコマンドを表す文字列としてargs
を受け取ることができるようになりました。 :pr: `664`Argument.make_metavar()
をデフォルトでmetavarタイプにします。 :pr: `675`ignore_unknown_options
のドキュメントを追加します。 :pr: `684`click.style
の明るい色のサポートを追加し、パラメーターfg
およびbg
のリセットオプションを修正します。 :issue: `703` 、:pr:` 809`- ヘルプに環境変数を表示するための
show_envvar
を追加します。 :pr: `710` - stdoutまたはstderrが閉じたパイプである場合、インタープリターのシャットダウン中は
BrokenPipeError
を避けてください。 :issue: `712` 、:pr:` 1106` - カスタマイズオプション名を文書化します。 :issue: `725` 、:pr:` 1016`
- サポートしていないPythonインタープリターで
sys._getframes()
を無効にします。 :pr: `728` None
でsys.exit
を呼び出すときのテストランナーのバグを修正しました。 :pr: `739`- コマンドラインオプションに関するドキュメントを明確にします。 :issue: `741` 、:pr:` 1003`
- Windowsコンソールでのクラッシュを修正しました。 :issue: `744`
- チェーンされたコマンドでbashの完了が不適切な完了を与える原因となっていたバグを修正しました。 :issue: `754` 、:pr:` 774`
- ユーザー提供のコールバックからの動的bash完了のサポートが追加されました。 :pr: `755`
- スペースを含むbash補完のサポートが追加されました。 :pr: `773`
- オートコンプリート関数が、不完全な引数で始まる補完を返すかどうかを決定できるようにします。 :issue: `790` 、:pr:` 806`
- ドキュメントに一致し、決定論的になるようにオプションの命名ルーチンを修正しました。 :issue: `793` 、:pr:` 794`
- パス検証のバグを修正しました。 :issue: `795` 、:pr:` 1020`
Option
の命名:機能に関するテストとドキュメントを追加します。 :pr: `799`path_type
の引数名と一致するようにドキュメントを更新します。 :pr: `801`- 生の文字列が追加されたため、正しいエスケープが発生します。 :pr: `807`
- Windowsでの
click.echo
の16k文字制限を修正しました。 :issue: `816` 、:pr:` 819` - Windows 7でバイナリストリームに書き込むときに、64k文字の制限を克服します。 :issue: `825` 、:pr:` 830`
- 「t」と「f」のブール変換を追加します。 :pr: `842`
NoSuchOption
エラーはctx
を取るため、--help
ヒントがエラー出力に出力されます。 :pr: `860`- 2.xおよび3.xでのUnicodeに関するクリックエラーメッセージの動作を修正しました。 メッセージは常にUnicodeになり、strおよびUnicodeの特殊メソッドはそのプラットフォームで期待どおりに機能します。 :issue: `862`
- プログレスバーはデフォルトでstderrを使用するようになりました。 :pr: `863`
- オートコンプリートドキュメントのサポートを追加します。 :issue: `866` 、:pr:` 869`
CliRunner
がstdoutとstderrを分離できるようにします。 :pr: `868`- 変数の優先順位を修正しました。 :issue: `873` 、:pr:` 874`
- 無効なエスケープシーケンスを修正します。 :pr: `877`
- 一部のテスト中に発生する
ResourceWarning
を修正しました。 :pr: `878` - 誤って構成されたロケールを検出する場合、
locale
コマンドが失敗しても失敗しないでください。 :pr: `880` Choice
タイプのオプションとしてcase_sensitive=False
を追加します。 :pr: `887`- stdout / stderrを強制的に書き込み可能にします。 これは、Jupyterからのもののようなパッチが不適切な標準ストリームの問題を回避します。 :pr: `918`
- 最後の引数:issue: `919` 、:pr:` 930` の後のサブコマンドオプションの完了を修正しました
_AtomicFile
は、元のファイル名のrealpath
を使用するようになり、作業ディレクトリを変更しても影響を受けなくなりました。 :pr: `920`- デフォルトが存在する場合の誤った補完を修正:issue: `925` 、:pr:` 930`
- カスタムクラスを再利用できるように、コピーオプションattrsを追加します。 :issue: `926` 、:pr:` 994`
- 「x」および「a」ファイルモードは、ファイルが
"-"
の場合にstdoutを使用するようになりました。 :pr: `929` __all__
リストで欠落しているカンマを修正しました。 :pr: `935`- パラメータの命名方法を明確にします。 :issue: `949` 、:pr:` 1009`
- Stdoutは自動的に非ブロッキングに設定されます。 :pr: `954`
- オプションを2回設定しないでください。 :pr: `962`
fcntl
インポートを移動します。 :pr: `965`- Google App Engine
ImportError
を修正しました。 :pr: `995` - 動的なデフォルトオプション値のヘルプテキストの処理が改善されました。 :pr: `996`
get_winter_size()
を修正して、(0,0)
が正しく返されるようにします。 :pr: `997`- カスタムパラメータタイプのテストケースチェックを追加します。 :pr: `1001`
- cmdフォーマットに対応するために短い幅を許可します。 :pr: `1002`
- Pythonバージョンのサポートに関する詳細を追加します。 :pr: `1004`
- コマンドに非推奨フラグを追加しました。 :pr: `1005`
fd
が未定義であった問題を修正しました。 :pr: `1007`- 短いヘルプのフォーマットを修正しました。 :pr: `1008`
auto_envvar_prefix
がコマンドグループでどのように機能するかを文書化します。 :pr: `1011`- プログレスバーにデフォルトで改行を追加しないでください。 :pr: `1013`
- ZSHの補完にはPythonの並べ替え順序を使用します。 :issue: `1047` 、:pr:` 1059`
- パラメータ名がデフォルトで小文字に変換されることを文書化します。 :pr: `1055`
- 関数によって名前が付けられたサブコマンドでは、アンダースコアがダッシュに自動的に置き換えられるようになりました。
my_command
という名前の関数を登録すると、コマンドラインインターフェイスでmy-command
になります。 - 非表示のコマンドとオプションを完了から非表示にします。 :issue: `1058` 、:pr:` 1061`
- 絶対インポートのブロックを修正しました。クリックがWindows上のプロジェクトにベンダーされないようにします。 :issue: `1068` 、:pr:` 1069`
- 小文字の
auto_envvar_prefix
が大文字に変換されない問題を修正しました。 :pr: `1105`
バージョン6.7
2017年1月6日リリース
click.progressbar
がcodecs.open
ファイルで機能するようにします。 :pr: `637`- ネストされたサブコマンドを使用したbash補完のバグを修正しました。 :pr: `639`
- テストランナーが呼び出し元の環境を正しく保存しない問題を修正しました。 :pr: `644`
- SIGPIPEの処理を修正しました。 :pr: `62`
- Google AppEngineなどの壊れたWindows環境に対処します。 :issue: `711`
バージョン6.3
2016年2月22日リリース
- Windowsで
-m
および-c
を使用してインタプリタを呼び出すための引数チェックを修正しました。 - Python3でロケール検出がエラーになるバグを修正しました。
バージョン6.2
2015年11月27日リリース
- 非表示のプログレスバーの修正を修正しました。
バージョン6.1
2015年11月27日リリース
- 非表示のプログレスバーがレンダリングされなくなる問題を解決しました。
- サブコマンドは本質的に壊れているため、サブコマンドを使用してチェーンコマンドを無効にします。
MissingParameter
がパラメーターを渡さないと機能しない問題を修正しました。
バージョン6.0
2015年11月24日リリース、コードネーム「powpow」
- プログレスバーのレンダリングを最適化して、実際に変更されていないときにレンダリングしないようにしました。
- デフォルトが設定されている
nargs=-1
を明示的に禁止します。 - コンテキストは、スタックからポップされる前に閉じられるようになりました。
- トグルの偽旗作戦の短いエイリアスのサポートが追加されました。
- Clickは、OSを使用して使用可能なロケールを一覧表示することにより、ロケールエラーのデバッグをより適切に支援しようとします。
- 一部の単体テストの状況で、Python2でバイト文字列を返すために使用されるクリック。 これは、Unicode文字列を正しく返すように修正されました。
- Python 2を使用しているWindowsユーザーの場合、ClickはUnicodeをより正確に処理するようになり、システムからのUnicodeをより正確に処理できるようになりました。 これには、ファイル名が
Path
タイプでデフォルトで常にユニコードになるという残念な副作用もあります。これは、これを認識しないコードに小さなバグが発生する可能性があることを意味します。 type
パラメーターをPath
に追加して、値に特定の文字列タイプを強制します。- WindowsでPythonを実行しているユーザーの場合、
echo
およびprompt
関数は、出力ストリームをエミュレートすることにより、PythonWindowsコンソールの完全なUnicode機能で動作するようになりました。 これは、click.get_text_stream(...)
を介した仮想出力および入力ストリームの取得にも当てはまります。 - ユニットテストでは、常に特定の仮想端末幅が強制されるようになりました。
Path
タイプの標準ストリームをダッシュで示すことができるようにするためのサポートが追加されました。- チェーンモードのマルチコマンドは、解析から残った引数をコールバックに伝播しなくなりました。 また、チェーンモードが有効になっている場合に、オプションの引数がマルチコマンドに付加されている場合、例外によって許可されなくなりました。
- 連鎖コマンドが他の連鎖コマンドを子コマンドとして持つことを禁止する制限が緩和されました。
- 正のnargsを持つ引数に、デフォルトを実装できるようになりました。 以前は、この構成では、わずかに予期しない値が返されることがよくありました。
バージョン5.1
2015年8月17日リリース
- 誤ってコンテキストも渡す
pass_obj
のバグを修正します。
バージョン5.0
2015年8月16日リリース、コードネーム「toktok」
- さまざまな非推奨の機能を削除しました。
- アトミックファイルは
w
モードのみを受け入れるようになりました。 - 非常に長いコマンドのヘルプ出力の使用部分を変更して、4つのスペースでインデントされた次の行に引数をラップします。
CliRunner
の使用時にリターンコードとエラーメッセージが正しくないバグを修正しました。get_current_context
を追加しました。- リンクされたコンテキストのリスト全体で共有されるコンテキストに
meta
辞書を追加して、クリックユーティリティが状態をそこに配置できるようにしました。 Context.scope
を発表しました。echo
関数はスレッドセーフになりました。基になるオブジェクトのwrite
メソッドを1回だけ呼び出します。prompt(hide_input=True)
は、^C
に改行を出力するようになりました。- ユーザーが
unicode_literals
を使用している場合、クリックで警告が表示されるようになりました。 - Clickは、
PAGER
環境変数が空であるか、空白のみが含まれている場合、それを無視するようになりました。 click-contrib
GitHub組織が作成されました。
バージョン4.1
2015-07-14リリース
- エラーメッセージに末尾の
None
文字列が含まれるバグを修正します。 - 末尾に改行があるdocstringでClickがクラッシュするバグを修正します。
- より良いエラーでバーフィングすることにより、Python3でエンコーディングが
None
に設定されたストリームをサポートします。 - less-pagerで^ Cを適切に処理します。
sys.getfilesystemencoding
からのNone
の戻り値を処理しますclick.echo
でUnicodeファイルに書き込むときのクラッシュを修正しました。- 複数のオプションで型推論を修正しました。
バージョン4.0
2015年3月31日リリース、コードネーム「ズームズーム」
- 直接または間接的にエコーを呼び出す多くのインターフェイスに
color
パラメーターを追加しました。 これは以前は常に自動検出でした(echo_via_pager
機能を除く)。 クリックの自動検出を無効にして、強制的に有効または無効にできるようになりました。 - いくつかの特別な高度なユースケースで2.x / 3.xでのテキスト処理を簡素化する、タイプの変更を実行しない
UNPROCESSED
タイプを追加しました。 - エラーのより一般的な処理のために、
NoSuchOption
およびBadOptionUsage
の例外を追加しました。 - 引数が基になるツールに転送される状況で役立つ可能性がある未処理のオプションの処理のサポートが追加されました。
- ヘルプ出力の最大幅を変更するために使用できるコンテキストに
max_content_width
パラメーターを追加しました。 デフォルトでは、Clickは80文字を超える幅のコンテンツをフォーマットしません。 - stderrにプロンプトを書き込むためのサポートが追加されました。
- 複数の引数のデフォルトを表示するときのバグを修正します。
option
およびargument
にカスタムサブクラスのサポートが追加されました。- coloramaがインストールされている場合のWindowsの
clear()
のバグを修正しました。 - オプションの
nargs=-1
を適切に拒否します。 オプションを可変個引数にすることはできません。 - ASCII以外の文字またはダッシュを含むコマンドでbashの完了が正しく機能しない問題を修正しました。
- プログレスバーを手動で更新する方法を追加しました。
- 欠落している引数のフォーマットを変更しました。 以前は内部引数名がエラーメッセージに表示されていましたが、渡された場合はメタ変数が表示されるようになりました。 自動化されたメタバーが選択されている場合、最初に余分なフォーマットが削除されます。
バージョン3.3
2014年9月8日リリース
- コマンドの無効な転送に関するPython3のエラーレポートの問題を修正しました。
バージョン3.2
2014年8月22日リリース
secho
関数に欠落しているerr
パラメーター転送を追加しました。- コンテキストinvokeメソッドによってデフォルトパラメータが適切に処理されない問題を修正しました。 関数が不適切に使用された場合、これは後方互換性のない変更です。 詳細については、 3.2 へのアップグレードを参照してください。
invoked_subcommands
属性を大幅に削除しました。 解析がどのように機能するかにより、エラーなしで機能するように提供することはできません。そのため、このAPIは非推奨になりました。 詳細については、 3.2 へのアップグレードを参照してください。- 3.1でリグレッションとして壊れていた
invoked_subcommand
の機能を復元しました。
バージョン3.1
2014年8月13日リリース
- 親コマンドが呼び出される前にサブコマンドのコンテキストが作成される原因となっていたリグレッションを修正しました。これは、以前のClickバージョンからのリグレッションでした。
バージョン3.0
2014年8月12日リリース、コードネーム「clonkclonk」
- Formatterは、50文字未満の端末に対応しようとしなくなりました。 それが起こった場合、それは最小の幅を想定しています。
- テストシステムで例外を飲み込まない方法を追加しました。
- ポケットベルを使用した色のサポートと、自動検出をオーバーライドする方法が追加されました。
- CLIランナーの結果オブジェクトにトレースバックがアタッチされました。
- 自動ショートヘルプ検出が改善され、文を終了しないドットでより適切に機能するようになりました。
- 現在、実際の有効なオプション文字列なしでオプションを定義すると、Clickはサイレントに渡すのではなく、エラーメッセージを表示します。 これは、ユーザーがオプションではなく引数を作成したい状況をキャッチする必要があります。
- 再構築ベンダーをサポートするために内部的にクリックします。
- マルチコマンドチェーンのサポートが追加されました。
multiple
のオプションとnargs != 1
のオプションと引数のデフォルトのサポートが追加されました。progressbar
に渡されたラベルは、空白が削除されてレンダリングされなくなりました。- Clickコマンドで
main
メソッドのスタンドアロンモードを無効にして、エラーをより適切に処理できるようにする方法を追加しました。 - コマンドコールバックから値を返すためのサポートが追加されました。
echo
からstderrへの印刷の簡略化を追加しました。- グループの結果コールバックを追加しました。
- コンテキストを複数回入力すると、最後の終了が発生するまでクリーンアップが延期されます。
open_file
を追加しました。
バージョン2.6
2014年8月11日リリース
- Python3でラップされたストリームがseekableの誤った値を報告する問題を修正しました。
バージョン2.5
2014年7月28日リリース
- Python3でのテキストの折り返しに関するバグを修正しました。
バージョン2.4
2014年7月4日リリース
- 2.3のヘルプオプションの変更のバグを修正しました。
バージョン2.3
2014年7月3日リリース
- カウントオプションの誤った形式のヘルプレコードを修正しました。
- coloramaが利用できない場合は、WindowsでのANSIコードストリッピングのサポートを追加します。
- 特定のエッジケースのヘルプパラメータのClick1.0処理を復元しました。
バージョン2.2
2014年6月26日リリース
- PyPyでのtty検出を修正しました。
- コンテキストマネージャーを入力したときにプログレスバーが表示されない問題を修正しました。
バージョン2.1
2014年6月14日リリース
- Windowsの launch()関数を修正しました。
- アプリケーションが中断された場合にコンソールを台無しにしないように努力するように、Windowsでのcoloramaサポートを改善しました。
- Windowsターミナルの幅が79文字ではなく80文字であると誤って報告される問題を修正しました
- 可能な場合はcoloramawin32バインディングを使用して、Windowsターミナルの正しいサイズを取得します。
- Python3のカスタム関数タイプの問題を修正しました。
- 不明なオプションがエラーメッセージで誤って報告される問題を修正しました。
バージョン2.0
2014年6月6日リリース、コードネーム「タップタップタップ」
- Windowsでバイナリモードでstdin / stdoutを正しく開くためのサポートが追加されました。
- 一時ファイルを経由することによるファイルへのアトミック書き込みのサポートが追加されました。
- 型システムと同じエラーメッセージでカスタム検証を簡単に実行するために使用できる BadParameter が導入されました。
- progressbar()を追加しました。 プログレスバーを表示する機能。
- get_app_dir()を追加しました。 構成のホームフォルダを計算する関数。
colorama
を介して echo()関数にANSIコードの透過的な処理を追加しました。- clear()関数を追加しました。
- 重大な変更:パラメーターコールバックは、2番目の引数として渡されるパラメーターオブジェクトを取得するようになりました。 警告するがスクリプトを実行する古いコールバックのレガシーサポートがあります。
- ANSIスタイルに style()、 unstyle()、 secho()を追加しました。
- デフォルトのエディターを呼び出す edit()関数を追加しました。
- ブラウザとアプリケーションを起動する launch()関数を追加しました。
- 引数のナルグが-1の場合、必須フラグを使用して強制的に単一のアイテムにすることができます。 デフォルトでは必須ではありません。
- 引数のデフォルトを設定すると、暗黙的に不要になります。
- 確認プロンプトの「yN」/「Yn」を「y / N」および「Y / n」に変更しました。
- bash補完の基本的なサポートが追加されました。
- 端末から単一の文字をフェッチするための getchar()が追加されました。
- エラーは意図したとおりにstderrに送られるようになりました。
- DOS / Windowsスタイルの引数などのよりエキゾチックなパラメータ形式に関するさまざまな問題を修正しました。
- Windows
pause
cmd組み込みと同様に機能するが、アプリケーションが端末を介して実行されない場合は自動noopになる pause()が追加されました。 - 欠落している選択パラメーターに関する追加情報を少し追加しました。
- ヘルプオプションのグローバルオーバーライドを可能にするために、ヘルプ機能の実装方法を変更しました。
- 大文字と小文字を区別しない処理を実装するためのトークン正規化のサポートが追加されました。
- コンテキスト設定のデフォルトを提供するためのサポートが追加されました。
バージョン1.1
2014年5月23日リリース
- Python2のテキストファイルがネイティブ文字列を受け入れない原因となっていたバグを修正しました。
バージョン1.0
2014年5月21日リリース
- 初回リリース。