コマンド

コマンド #

コマンドラインインターフェースを使用していくつかのことを行う方法についてはすでに学習しました。この章では、利用可能なすべてのコマンドについて説明します。

コマンドラインからヘルプを取得するには、単にpoetryを呼び出してコマンドの完全なリストを表示し、それらのいずれかと組み合わせた--helpを使用すると、さらに詳しい情報を得ることができます。

グローバルオプション #

  • --verbose (-v|vv|vvv): メッセージの冗長度を上げます。通常の出力には"-v"、より詳細な出力には"-vv"、デバッグには"-vvv"を使用します。
  • --help (-h) : ヘルプ情報を表示します。
  • --quiet (-q) : メッセージを出力しません。
  • --ansi: ANSI出力を強制します。
  • --no-ansi: ANSI出力を無効にします。
  • --version (-V): このアプリケーションのバージョンを表示します。
  • --no-interaction (-n): インタラクティブな質問をしません。
  • --no-plugins: プラグインを無効にします。
  • --no-cache: Poetryのソースキャッシュを無効にします。
  • --directory=DIRECTORY (-C): Poetryコマンドの作業ディレクトリ(デフォルトは現在の作業ディレクトリ)。

new #

このコマンドは、ほとんどのプロジェクトに適したディレクトリ構造を作成することで、新しいPythonプロジェクトを始めるのに役立ちます。

poetry new my-package

次のフォルダーを作成します。

my-package
├── pyproject.toml
├── README.md
├── my_package
│   └── __init__.py
└── tests
    └── __init__.py

プロジェクト名をフォルダー名と異なる名前にしたい場合は、--nameオプションを渡すことができます。

poetry new my-folder --name my-package

srcフォルダーを使用したい場合は、--srcオプションを使用できます。

poetry new --src my-package

これにより、次のようなフォルダー構造が作成されます。

my-package
├── pyproject.toml
├── README.md
├── src
│   └── my_package
│       └── __init__.py
└── tests
    └── __init__.py

--nameオプションは、名前空間パッケージを検出し、必要な構造を自動的に作成するのに十分スマートです。

poetry new --src --name my.package my-package

次の構造を作成します。

my-package
├── pyproject.toml
├── README.md
├── src
│   └── my
│       └── package
│           └── __init__.py
└── tests
    └── __init__.py

オプション #

  • --name: 結果のパッケージ名を設定します。
  • --src: プロジェクトにsrcレイアウトを使用します。
  • --readme: readmeファイルの拡張子を指定します。デフォルトはmdです。PyPIに公開する場合は、PyPIフレンドリーなREADMEの推奨事項に留意してください。

init #

このコマンドは、パッケージに関する基本的な情報の入力を促すことで、インタラクティブにpyproject.tomlファイルを作成するのに役立ちます。

いくつかのスマートなデフォルトを使用しながら、インタラクティブにフィールドの入力を求めます。

poetry init

オプション #

  • --name: パッケージの名前。
  • --description: パッケージの説明。
  • --author: パッケージの作成者。
  • --python: 互換性のあるPythonバージョン。
  • --dependency: バージョン制約付きで要求するパッケージ。foo:1.0.0形式にする必要があります。
  • --dev-dependency: 開発要件。--dependencyを参照してください。

install #

installコマンドは、現在のプロジェクトからpyproject.tomlファイルを読み取り、依存関係を解決してインストールします。

poetry install

現在のディレクトリにpoetry.lockファイルがある場合は、依存関係を解決するのではなく、そこから正確なバージョンを使用します。これにより、ライブラリを使用するすべての人が同じバージョンの依存関係を取得できるようになります。

poetry.lockファイルがない場合、Poetryは依存関係の解決後にファイルを作成します。

インストールから1つ以上の依存関係グループを除外する場合は、--withoutオプションを使用できます。

poetry install --without test,docs
--no-devオプションは非推奨になりました。代わりに--only mainまたは--without dev表記を使用する必要があります。

--withオプションを使用して、オプションの依存関係グループを選択することもできます。

poetry install --with test,docs

onlyオプションを使用すると、特定の依存関係グループのみをインストールすることもできます。

poetry install --only test,docs

依存関係なしでプロジェクト自体のみをインストールするには、--only-rootフラグを使用します。

poetry install --only-root

依存関係グループの詳細については、依存関係グループを参照してください。

環境を同期してロックファイルと一致するようにするには、--syncオプションを使用します。

poetry install --sync

--syncはグループ関連のオプションと組み合わせることができます。

poetry install --without dev --sync
poetry install --with docs --sync
poetry install --only dev --sync

-E|--extrasオプションを渡すことで、インストールするエクストラを指定することもできます(詳細については、エクストラを参照してください)。プロジェクトに定義されたすべてのエクストラをインストールするには、--all-extrasを渡します。

poetry install --extras "mysql pgsql"
poetry install -E mysql -E pgsql
poetry install --all-extras

エクストラは--syncの影響を受けません。指定されていないエクストラは常に削除されます。

poetry install --extras "A B"  # C is removed

デフォルトでは、poetryinstallを実行するたびにプロジェクトのパッケージをインストールします。

$ poetry install
Installing dependencies from lock file

No dependencies to install or update

  - Installing <your-package-name> (x.x.x)

このインストールをスキップする場合は、--no-rootオプションを使用します。

poetry install --no-root

--no-rootと同様に、--no-directoryを使用してディレクトリパスの依存関係をスキップできます。

poetry install --no-directory

これは主にCIでのキャッシュや、Dockerイメージを構築する場合に役立ちます。このオプションの詳細については、FAQエントリを参照してください。

デフォルトでは、poetryはインストール中にPythonソースファイルをバイトコードにコンパイルしません。これによりインストールプロセスが高速化されますが、Pythonがソースファイルを自動的にバイトコードにコンパイルするため、最初の実行には少し時間がかかる場合があります。インストール中にソースファイルをバイトコードにコンパイルする場合は、--compileオプションを使用できます。

poetry install --compile
installer.modern-installationfalseに設定されている場合、古いインストーラーは常にソースファイルをバイトコードにコンパイルするため、--compileオプションは効果がありません。

オプション #

  • --without: 無視する依存関係グループ。
  • --with: 含めるオプションの依存関係グループ。
  • --only: 含める依存関係グループのみ。
  • --only-root: ルートプロジェクトのみをインストールし、すべての依存関係を除外します。
  • --sync: 環境をロックされたパッケージと指定されたグループと同期します。
  • --no-root: ルートパッケージ(プロジェクト)をインストールしません。
  • --no-directory: すべてのディレクトリパスの依存関係(推移的な依存関係を含む)をスキップします。
  • --dry-run: 操作を出力しますが、実際には何も実行しません(暗黙的に –verbose が有効になります)。
  • --extras (-E): インストールする追加機能(複数の値を指定できます)。
  • --all-extras: すべての追加機能をインストールします(–extras とは競合します)。
  • --compile: Python ソースファイルをバイトコードにコンパイルします。
  • --no-dev: 開発用依存関係をインストールしません。(非推奨、代わりに --only main または --without dev を使用してください)
  • --remove-untracked: ロックファイルに存在しない依存関係を削除します。(非推奨、代わりに --sync を使用してください)
--only が指定された場合、--with および --without オプションは無視されます。

update #

依存関係の最新バージョンを取得し、poetry.lock ファイルを更新するには、update コマンドを使用する必要があります。

poetry update

これにより、プロジェクトのすべての依存関係が解決され、正確なバージョンが poetry.lock に書き込まれます。

一部のパッケージのみを更新したい場合は、次のようにリストできます。

poetry update requests toml

これは、pyproject.toml ファイルで指定された バージョン制約 の範囲外の依存関係のバージョンを更新しないことに注意してください。言い換えれば、foo に指定されたバージョン制約が ~2.3 または 2.3 で、2.4 が利用可能な場合、poetry update foo は何も実行しません。foo を更新するには、制約を ^2.3 のように更新する必要があります。これは add コマンドを使用して行うことができます。

オプション #

  • --without: 無視する依存関係グループ。
  • --with: 含めるオプションの依存関係グループ。
  • --only: 含める依存関係グループのみ。
  • --dry-run : 操作を出力しますが、実際には何も実行しません(暗黙的に –verbose が有効になります)。
  • --no-dev : 開発用依存関係を更新しません。(非推奨、代わりに --only main または --without dev を使用してください)
  • --lock : インストールを実行しません(ロックファイルのみを更新します)。
  • --sync: 環境をロックされたパッケージと指定されたグループと同期します。
--only が指定された場合、--with および --without オプションは無視されます。

add #

add コマンドは、必要なパッケージを pyproject.toml に追加し、インストールします。

バージョン制約を指定しない場合、poetry は利用可能なパッケージのバージョンに基づいて適切なものを選択します。

poetry add requests pendulum

パッケージは、デフォルトでは、デフォルトのパッケージソース からのみ検索されます。デフォルトのソース(PyPI)を変更したり、追加のパッケージソース または 明示的なパッケージソース を追加して使用したりできます。

詳細については、パッケージソース のドキュメントを参照してください。

パッケージを追加するときに制約を指定することもできます。

# Allow >=2.0.5, <3.0.0 versions
poetry add pendulum@^2.0.5

# Allow >=2.0.5, <2.1.0 versions
poetry add pendulum@~2.0.5

# Allow >=2.0.5 versions, without upper bound
poetry add "pendulum>=2.0.5"

# Allow only 2.0.5 version
poetry add pendulum==2.0.5
@ 演算子の詳細については、依存関係の仕様 のページを参照してください。

すでに存在するパッケージを追加しようとすると、エラーが発生します。ただし、上記のように制約を指定すると、依存関係は指定された制約を使用して更新されます。

すでに存在する依存関係の最新バージョンを取得したい場合は、特別な latest 制約を使用できます。

poetry add pendulum@latest
パッケージのバージョン制約の設定の詳細については、依存関係の仕様 を参照してください。

git の依存関係を追加することもできます。

poetry add git+https://github.com/sdispater/pendulum.git

または、https の代わりに ssh を使用します。

poetry add git+ssh://git@github.com/sdispater/pendulum.git

# or alternatively:
poetry add git+ssh://git@github.com:sdispater/pendulum.git

特定のブランチ、タグ、またはリビジョンをチェックアウトする必要がある場合は、add を使用するときに指定できます。

poetry add git+https://github.com/sdispater/pendulum.git#develop
poetry add git+https://github.com/sdispater/pendulum.git#2.0.5

# or using SSH instead:
poetry add git+ssh://git@github.com:sdispater/pendulum.git#develop
poetry add git+ssh://git@github.com:sdispater/pendulum.git#2.0.5

または、サブディレクトリを参照します。

poetry add git+https://github.com/myorg/mypackage_with_subdirs.git@main#subdirectory=subdir

ローカルディレクトリまたはファイルを追加することもできます。

poetry add ./my-package/
poetry add ../my-package/dist/my-package-0.1.0.tar.gz
poetry add ../my-package/dist/my_package-0.1.0.whl

依存関係を編集可能モードでインストールする場合は、--editable オプションを使用できます。

poetry add --editable ./my-package/
poetry add --editable git+ssh://github.com/sdispater/pendulum.git#develop

または、pyproject.toml ファイルで指定することもできます。これは、ローカルディレクトリでの変更が環境に直接反映されることを意味します。

[tool.poetry.dependencies]
my-package = {path = "../my/path", develop = true}
poetry 1.1 より前のバージョンでは、パスの依存関係はデフォルトで編集可能モードでインストールされていました。poetry のすべてのバージョンで動作が同じになるように、常に develop 属性を明示的に設定する必要があります。
develop 属性は Poetry 固有の機能であるため、パッケージ配布メタデータには含まれていません。言い換えれば、Poetry を使用してプロジェクトをインストールする場合にのみ考慮されます。

インストールするパッケージが extras を提供する場合は、パッケージを追加するときにそれらを指定できます。

poetry add "requests[security,socks]"
poetry add "requests[security,socks]~=2.22.0"
poetry add "git+https://github.com/pallets/flask.git@1.1.1[dotenv,dev]"
警告
一部のシェルでは、角かっこ([ および ])を特殊文字として扱う場合があります。予期しないシェルの拡張を防ぐために、これらの文字を含む引数は常に引用符で囲むことをお勧めします。

依存関係の特定のグループにパッケージを追加する場合は、--group (-G) オプションを使用できます。

poetry add mkdocs --group docs

依存関係グループの詳細については、依存関係グループを参照してください。

オプション #

  • --group (-G): 依存関係を追加するグループ。
  • --dev (-D): 開発用依存関係としてパッケージを追加します。(非推奨、代わりに -G dev を使用してください)
  • --editable (-e): vcs/path の依存関係を編集可能として追加します。
  • --extras (-E): 依存関係に対して有効にする extras。(複数の値を指定できます)
  • --optional: オプションの依存関係として追加します。
  • --python: 依存関係をインストールする必要がある Python のバージョン。
  • --platform: 依存関係をインストールする必要があるプラットフォーム。
  • --source: パッケージのインストールに使用するソースの名前。
  • --allow-prereleases: プレリリースを受け入れます。
  • --dry-run: 操作を出力しますが、実際には何も実行しません(暗黙的に –verbose が有効になります)。
  • --lock: インストールを実行しません(ロックファイルのみを更新します)。

remove #

remove コマンドは、インストールされているパッケージの現在のリストからパッケージを削除します。

poetry remove pendulum

依存関係の特定のグループからパッケージを削除する場合は、--group (-G) オプションを使用できます。

poetry remove mkdocs --group docs

依存関係グループの詳細については、依存関係グループを参照してください。

オプション #

  • --group (-G): 依存関係を削除するグループ。
  • --dev (-D): 開発用依存関係からパッケージを削除します。(非推奨、代わりに -G dev を使用してください)
  • --dry-run : 操作を出力しますが、実際には何も実行しません(暗黙的に –verbose が有効になります)。
  • --lock: 操作を実行しません(ロックファイルのみを更新します)。

show #

利用可能なすべてのパッケージをリストするには、show コマンドを使用できます。

poetry show

特定のパッケージの詳細を確認したい場合は、パッケージ名を渡すことができます。

poetry show pendulum

name        : pendulum
version     : 1.4.2
description : Python datetimes made easy

dependencies
 - python-dateutil >=2.6.1
 - tzlocal >=1.4
 - pytzdata >=2017.2.2

required by
 - calendar >=1.4.0

オプション #

  • --without: 無視する依存関係グループ。
  • --why: 完全なリストを表示する場合、または単一のパッケージに対して --tree を使用する場合、それらが直接の依存関係であるか、他のパッケージによって要求されているかを表示します。
  • --with: 含めるオプションの依存関係グループ。
  • --only: 含める依存関係グループのみ。
  • --no-dev: 開発用依存関係をリストしません。(非推奨、代わりに --only main または --without dev を使用してください)
  • --tree: 依存関係をツリーとしてリストします。
  • --latest (-l): 最新バージョンを表示します。
  • --outdated (-o): 最新バージョンを表示しますが、古いパッケージのみを表示します。
  • --all (-a): すべてのパッケージを表示します(現在のシステムと互換性のないパッケージも含む)。
  • --top-level (-T): 明示的に定義されたパッケージのみを表示します。
--only が指定された場合、--with および --without オプションは無視されます。

build #

build コマンドは、ソースアーカイブと wheel アーカイブをビルドします。

poetry build

現時点では、純粋な python wheel のみがサポートされていることに注意してください。

オプション #

  • --format (-f): フォーマットを wheel または sdist のいずれかに制限します。
  • --output (-o): ビルドアーティファクトの出力ディレクトリを設定します。デフォルトは dist です。

publish #

このコマンドは、以前に build コマンドでビルドされたパッケージを、リモートリポジトリに公開します。

初めて送信する場合は、アップロード前にパッケージを自動的に登録します。

poetry publish

--build オプションを渡すと、パッケージをビルドすることもできます。

公開可能なリポジトリの設定と使用方法の詳細については、公開可能なリポジトリ を参照してください。

オプション #

  • --repository (-r): パッケージを登録するリポジトリ(デフォルト: pypi)。config コマンドで設定されたリポジトリ名と一致する必要があります。
  • --username (-u): リポジトリにアクセスするためのユーザー名。
  • --password (-p): リポジトリにアクセスするためのパスワード。
  • --cert: リポジトリにアクセスするための認証局。
  • --client-cert: リポジトリにアクセスするためのクライアント証明書。
  • --dist-dir: ビルドされたアーティファクトが保存されている dist ディレクトリ。デフォルトは dist です。
  • --build: 公開する前にパッケージをビルドします。
  • --dry-run: パッケージのアップロードを除くすべてのアクションを実行します。
  • --skip-existing: リポジトリにすでに存在するファイルからのエラーを無視します。
資格情報の設定方法の詳細については、資格情報の設定 を参照してください。

config #

config コマンドを使用すると、poetry の構成設定とリポジトリを編集できます。

poetry config --list

使用法 #

poetry config [options] [setting-key] [setting-value1] ... [setting-valueN]

setting-key は構成オプション名であり、setting-value1 は構成値です。利用可能なすべての設定については、構成 を参照してください。

警告

値がハイフン (-) で始まる可能性がある場合は、-- を使用してオプションの解析を終了します。例:

poetry config http-basic.custom-repo gitlab-ci-token -- ${GITLAB_JOB_TOKEN}

-- がないと、${GITLAB_JOB_TOKEN} がハイフンで始まる場合、このコマンドは失敗します。

オプション #

  • --unset: setting-key で指定された構成要素を削除します。
  • --list: 現在の構成変数のリストを表示します。
  • --local: プロジェクトに固有の設定(ローカル構成ファイル poetry.toml 内)を設定/取得します。

run #

run コマンドは、プロジェクトの仮想環境内で指定されたコマンドを実行します。

poetry run python -V

pyproject.toml で定義されたスクリプトのいずれかを実行することもできます。

したがって、次のようなスクリプトを定義している場合

[tool.poetry.scripts]
my-script = "my_module:main"

次のように実行できます。

poetry run my-script

このコマンドにはオプションがないことに注意してください。

shell #

shell コマンドは、プロジェクトの仮想環境内でシェルを起動します。

デフォルトでは、現在アクティブなシェルが検出されて使用されます。それがない場合、環境変数 SHELL ( *nix の場合) または COMSPEC (Windows の場合) を介して定義されたシェルが使用されます。

仮想環境が存在しない場合は、作成されます。

poetry shell

このコマンドは新しいシェルを起動し、仮想環境をアクティブ化することに注意してください。

したがって、deactivate の代わりに exit を使用して、シェルと仮想環境を適切に終了する必要があります。

Poetry は、現在アクティブなシェルを検出するために、内部的に Shellingham プロジェクトを使用します。

check #

check コマンドは、pyproject.toml ファイルの内容と poetry.lock ファイルとの整合性を検証します。エラーがある場合は、詳細なレポートを返します。

このコマンドは、pre-commit フックとしても利用できます。詳細については、pre-commit フック を参照してください。
poetry check

オプション #

  • --lock: 現在の pyproject.toml に対して poetry.lock が存在することを確認します。

このコマンドは、リモートインデックスでパッケージを検索します。

poetry search requests pendulum

lock #

このコマンドは、pyproject.toml で指定された依存関係を(インストールせずに)ロックします。

デフォルトでは、すべての依存関係を最新の互換性のあるバージョンにロックします。ロックファイルを更新するだけであれば、--no-update オプションを使用します。このコマンドは、pre-commit hook としても利用可能です。詳細については、pre-commit hook を参照してください。
poetry lock

オプション #

  • --check: poetry.lockpyproject.toml と一致しているか検証します。(非推奨)代わりに poetry check --lock を使用してください。
  • --no-update: ロックされたバージョンを更新せず、ロックファイルのみを更新します。

version #

このコマンドは、プロジェクトの現在のバージョンを表示するか、有効な bump ルールが指定されている場合はプロジェクトのバージョンを上げて、新しいバージョンを pyproject.toml に書き戻します。

新しいバージョンは、有効な PEP 440 文字列、または有効な bump ルール(patch, minor, major, prepatch, preminor, premajor, prerelease)である必要があります。

プロジェクトでセマンティックバージョニングを使用したい場合は、こちらを参照してください。

以下の表は、これらのルールの効果を具体的な例で示しています。

ルール 変更前 変更後
major 1.3.0 2.0.0
minor 2.1.4 2.2.0
patch 4.1.1 4.1.2
premajor 1.0.2 2.0.0a0
preminor 1.0.2 1.1.0a0
prepatch 1.0.2 1.0.3a0
prerelease 1.0.2 1.0.3a0
prerelease 1.0.3a0 1.0.3a1
prerelease 1.0.3b0 1.0.3b1

--next-phase オプションを使用すると、プレリリースフェーズのバージョンをインクリメントできます。

ルール 変更前 変更後
prerelease –next-phase 1.0.3a0 1.0.3b0
prerelease –next-phase 1.0.3b0 1.0.3rc0
prerelease –next-phase 1.0.3rc0 1.0.3

オプション #

  • --next-phase: 現在のバージョンのフェーズをインクリメントします。
  • --short (-s): バージョン番号のみを出力します。
  • --dry-run: pyproject.toml ファイルを更新しません。

export #

このコマンドは、ロックファイルを他の形式でエクスポートします。

poetry export -f requirements.txt --output requirements.txt
警告
このコマンドは、Export Poetry Plugin によって提供されています。今後の Poetry のバージョンでは、このプラグインはデフォルトでインストールされなくなります。破壊的な変更を避け、自動化を将来に対応させるために、poetry-plugin-export を明示的にインストールしてください。プラグインのインストール方法については、プラグインの使用を参照してください。
このコマンドは、pre-commit hook としても利用可能です。詳細については、pre-commit hook を参照してください。
install コマンドとは異なり、このコマンドは、オプションを指定せずに使用した場合、tool.poetry.dependencies で定義された暗黙的な main グループで定義されたプロジェクトの依存関係のみを含みます。

オプション #

  • --format (-f): エクスポートする形式(デフォルト:requirements.txt)。現在、constraints.txtrequirements.txt のみがサポートされています。
  • --output (-o): 出力ファイルの名前。省略した場合、標準出力に出力します。
  • --dev: 開発依存関係を含めます。(非推奨、代わりに --with dev を使用してください)
  • --extras (-E): 含める依存関係の追加セット。
  • --without: 無視する依存関係グループ。
  • --with: 含めるオプションの依存関係グループ。
  • --only: 含める依存関係グループのみ。
  • --without-hashes: エクスポートされたファイルからハッシュを除外します。
  • --without-urls: エクスポートされたファイルからソースリポジトリの URL を除外します。
  • --with-credentials: 追加のインデックスの認証情報を含めます。

env #

env コマンドは、特定のプロジェクトに関連付けられた仮想環境を操作するためのサブコマンドをグループ化します。

これらのコマンドの詳細については、環境の管理を参照してください。

cache #

cache コマンドは、Poetry のキャッシュを操作するためのサブコマンドをグループ化します。

cache list #

cache list コマンドは、Poetry の利用可能なキャッシュを一覧表示します。

poetry cache list

cache clear #

cache clear コマンドは、キャッシュされたリポジトリからパッケージを削除します。

たとえば、pypi リポジトリからのパッケージのキャッシュ全体をクリアするには、次を実行します。

poetry cache clear pypi --all

キャッシュから特定のパッケージのみを削除するには、次の形式でキャッシュエントリを指定する必要があります。cache:package:version

poetry cache clear pypi:requests:2.24.0

source #

source 名前空間は、Poetry プロジェクトのリポジトリソースを管理するためのサブコマンドをグループ化します。

source add #

source add コマンドは、プロジェクトにソース構成を追加します。

たとえば、pypi-test ソースを追加するには、次を実行します。

poetry source add pypi-test https://test.pypi.org/simple/

カスタムリポジトリの名前として pypi は、デフォルトの PyPI ソースで使用するために予約されているため、使用できません。ただし、PyPI の優先度を設定できます。

poetry source add --priority=explicit pypi

オプション #

  • --default: このソースをデフォルトとして設定します(PyPI を無効にします)。--priority を推奨します。
  • --secondary: このソースをセカンダリソースとして設定します。--priority を推奨します。
  • --priority: このソースの優先度を設定します。指定できる値は、defaultsecondarysupplementalexplicit です。詳細については、リポジトリの専用セクションを参照してください。
上記のオプションは、最大で 1 つのみ指定できます。詳細については、パッケージソースを参照してください。

source show #

source show コマンドは、プロジェクトに構成されているすべてのソースに関する情報を表示します。

poetry source show

オプションで、名前を指定することにより、1 つ以上のソースの情報を表示できます。

poetry source show pypi-test
このコマンドは、pyproject.toml を介して構成されたソースのみを表示し、暗黙的なデフォルト PyPI は含まれません。

source remove #

source remove コマンドは、構成済みのソースを pyproject.toml から削除します。

poetry source remove pypi-test

about #

about コマンドは、現在のバージョンや poetry-core のバージョンなど、Poetry に関するグローバルな情報を表示します。

poetry about

help #

help コマンドは、グローバルヘルプ、または特定のコマンドのヘルプを表示します。

グローバルヘルプを表示するには

poetry help

特定のコマンド(たとえば show)のヘルプを表示するには

poetry help show

--help オプションを任意のコマンドに渡して、特定のコマンドのヘルプを取得することもできます。

たとえば

poetry show --help

list #

list コマンドは、利用可能なすべての Poetry コマンドを表示します。

poetry list

self #

self 名前空間は、Poetry インストール自体を管理するためのサブコマンドをグループ化します。

これらのコマンドを使用すると、必要な pyproject.toml ファイルと poetry.lock ファイルが設定ディレクトリに作成されます。
警告
特に Windows では、パッケージを更新または削除する self コマンドは問題が発生する可能性があるため、プラグインをインストールしたり Poetry を更新したりするための他の方法が推奨されます。詳細については、プラグインの使用およびPoetry のインストールを参照してください。

self add #

self add コマンドは、Poetry プラグインをインストールし、実行時に利用できるようにします。さらに、Poetry 自体の依存関係をアップグレードしたり、追加のパッケージを実行環境に挿入したりするためにも使用できます。

self add コマンドは、add コマンドとまったく同じように機能します。ただし、管理されるパッケージが Poetry の実行環境用である点が異なります。

self add コマンドでサポートされるパッケージ指定形式は、add コマンドでサポートされる形式と同じです。

たとえば、poetry-plugin-export プラグインをインストールするには、次を実行します。

poetry self add poetry-plugin-export

最新の poetry-core バージョンに更新するには、次を実行します。

poetry self add poetry-core@latest

キーリングプロバイダー artifacts-keyring を追加するには、次を実行します。

poetry self add artifacts-keyring

オプション #

  • --editable (-e): vcs/path の依存関係を編集可能として追加します。
  • --extras (-E): 依存関係に対して有効にする extras。(複数の値を指定できます)
  • --allow-prereleases: プレリリースを受け入れます。
  • --source: パッケージのインストールに使用するソースの名前。
  • --dry-run: 操作を出力しますが、実際には何も実行しません(暗黙的に –verbose が有効になります)。

self update #

self update コマンドは、現在の実行環境で Poetry のバージョンを更新します。

self update コマンドは、update コマンドとまったく同じように機能します。ただし、管理されるパッケージが Poetry の実行環境用である点が異なります。
poetry self update

オプション #

  • --preview: プレリリースバージョンのインストールを許可します。
  • --dry-run: 操作を出力しますが、実際には何も実行しません(暗黙的に –verbose が有効になります)。

self lock #

self lock コマンドは、この Poetry インストールのシステム pyproject.toml ファイルを読み取ります。システムの依存関係は、対応する poetry.lock ファイルにロックされます。

poetry self lock

オプション #

  • --check: poetry.lockpyproject.toml と一致しているか検証します。(非推奨
  • --no-update: ロックされたバージョンを更新せず、ロックファイルのみを更新します。

self show #

self show コマンドは、show コマンドと同様に動作しますが、Poetry の実行環境内で動作します。これにより、Poetry のインストール環境にインストールされているすべてのパッケージが一覧表示されます。

self add を介して追加された追加パッケージとその依存関係のみを表示するには、self show --addons を使用します。

poetry self show

オプション #

  • --addons: インストールされたアドオンパッケージのみを一覧表示します。
  • --tree: 依存関係をツリーとしてリストします。
  • --latest (-l): 最新バージョンを表示します。
  • --outdated (-o): 最新バージョンを表示しますが、古いパッケージのみを表示します。

self show plugins #

self show plugins コマンドは、現在インストールされているすべてのプラグインを一覧表示します。

poetry self show plugins

self remove #

self remove コマンドは、インストールされたアドオンパッケージを削除します。

poetry self remove poetry-plugin-export

オプション #

  • --dry-run: 操作を出力しますが、何も実行しません(暗黙的に –verbose が有効になります)。

self install #

self install コマンドは、指定されたすべての追加パッケージが現在の実行環境にインストールされていることを確認します。

self install コマンドは、install コマンドと同様に動作します。ただし、管理されるパッケージが Poetry の実行環境用である点が異なります。
poetry self install --sync

オプション #

  • --sync: 環境をロックされたパッケージと指定されたグループと同期します。
  • --dry-run: 操作を出力しますが、実際には何も実行しません(暗黙的に –verbose が有効になります)。