Skip to content

Preview#

Ruff には、コミュニティのフィードバックの機会を提供し、すべての人に変更を有効にする前に、変更が最終的なメリットであるという確信を高めるためのオプトインプレビューモードが含まれています。

プレビューモードでは、新しい lint ルールと修正、フォーマッタスタイルの変更、インタフェースの更新など、不安定な機能のコレクションが有効になります。プレビューモードを使用すると、非推奨の機能に関する警告がエラーに変わる場合があります。

プレビュー・モードを有効にしても、すべてのプレビュー・ルールが有効になるわけではありません。プレビュー・ルールの選択の詳細は、rules sectionを参照してください。

Enabling preview mode#

プレビューモードを有効にするには、CLI の--previewフラグを使用するか、Ruffconfiguration ファイルでpreview = trueを設定します。

プレビュー・モードは、リンティングとフォーマット用に個別に構成できます(Ruff v0.1.1+が必要)。プレビュー・スタイルのフォーマットなしでプレビュー・リント・ルールを有効にするには、次の手順に従います::

[tool.ruff.lint]
preview = true
[lint]
preview = true
ruff check --preview

プレビューのリントルールを有効にせずに、プレビュースタイルの書式設定を有効にするには:

[tool.ruff.format]
preview = true
[format]
preview = true
ruff format --preview

Using rules that are in preview#

ルールがプレビューとしてマークされている場合、プレビュー・モードが使用可能になっている場合にのみ選択できます。たとえば、仮定のルールHYP001を考えてみます。HYP001がプレビュー中の場合、選択したルール・セットに追加しても使用可能にはなりません。

[tool.ruff.lint]
extend-select = ["HYP001"]
[lint]
extend-select = ["HYP001"]
ruff check --extend-select HYP001

また、次のようにHYPカテゴリを選択しても有効にはなりません。:

[tool.ruff.lint]
extend-select = ["HYP"]
[lint]
extend-select = ["HYP"]
ruff check --extend-select HYP

Similarly, it would not be enabled via the ALL selector:

同様に、ALLセレクタを使用して有効にすることはできません。:

[tool.ruff.lint]
select = ["ALL"]
[lint]
select = ["ALL"]
ruff check --select ALL

ただし、プレビューモードを有効にした場合は、上記のいずれの場合でも有効になります。:

[tool.ruff.lint]
extend-select = ["HYP"]
preview = true
[lint]
extend-select = ["HYP"]
preview = true
ruff check --extend-select HYP --preview

現在プレビュー中のルールを確認するには、rules referenceを参照してください。

Selecting single preview rules#

プレビューモードが有効な場合、ルールのカテゴリまたはプレフィックスを選択すると、一致するすべてのプレビュールールが含まれます。

各プレビュールールを個別に選択したい場合は、設定ファイルのexplicit-preview-rules設定を切り替えることができます。:

[tool.ruff.lint]
preview = true
explicit-preview-rules = true
[lint]
preview = true
explicit-preview-rules = true

前の例では、ALL``HYPHYP0、またはHYP00--selectを使用すると、HYP001は有効になりません。各プレビュールールは、--select ALL,HYP001のように、正確なコードで選択する必要があります。

プレビューモードが有効になっていない場合、この設定は効果がありません。

Deprecated rules#

プレビュー・モードが使用可能な場合、推奨されないルールは使用不可になります。推奨されないルールが明示的に選択された場合、エラーが発生します。推奨されないルールは、ルール・カテゴリまたは接頭辞を介して選択された場合、含まれません。