pipとvirtualenvを組み合わせ、PipfileとPipfile.lockで再現性の高いビルドを実現する、Python向けのvirtualenv・依存関係管理ツール。
jaraco/pip-run
1回の実行に必要なパッケージを一時環境にインストールし、実行後に破棄するPythonランチャー。
- スター
- 143
- フォーク
- 21
- 未解決の Issue
- 12
- 最終コミット
- 8 日前
これは何?
pip-runは、必要な依存パッケージを実行時にインストールし、プロセスの終了後に削除してPythonコードを実行するコマンドラインツールです。pip-runにパッケージ名を渡し、必要に応じてpip installの引数を続けた後、`--`と実行するスクリプト、モジュール、またはコマンドを指定します。virtualenvの作成、パッケージのインストール、コードの実行、環境の削除という通常の手順をまとめて置き換えます。
スクリプトのimport文から依存パッケージを推測したり、`__requires__`変数やスクリプト内のメタデータに宣言された要件を読み取ったりできます。また、`-m`によるモジュール、コンソールスクリプト、対話型インタプリタも実行できます。インストールしたパッケージは一時領域に配置され、pipのダウンロードキャッシュは再利用されます。任意の永続化モードを有効にすると、環境をユーザーキャッシュに保存して次回以降も使えます。環境の最大保持期間も指定できます。
本番環境の依存関係管理ではなく、スクリプトの実行、テストランナーや実験の実行、バグの切り分けといった単発の作業を想定しています。Editable(`-e`)要件には対応していません。
主な機能
- 01import文または宣言されたメタデータから、スクリプトの依存パッケージを推測します。
- 02パッケージを一時領域にインストールし、実行後に削除します。
- 03依存パッケージを使って、モジュール、コンソールスクリプト、スクリプト、対話型インタプリタを実行できます。
- 04インストールオプションをpipに渡し、pipのダウンロードキャッシュを再利用します。
- 05最大保持期間を指定できる任意の永続化モードを利用できます。
ユースケース
- プロジェクトをセットアップせずに、サードパーティパッケージが必要なPythonスクリプトを1回だけ実行する。
- システム環境に手を加えず、対話型セッションでライブラリを試す。
- 一時的な依存関係を使ってテストランナーやビルドツールを実行する。
- shebang行を使った、単一ファイルで完結するPythonツールを作成する。
クイックスタート
- 1
pip-runをpipと一緒にシステムのsite-packagesにインストールします(READMEのInstallationセクションを参照)
- 2
一時的な依存関係(ここではcowsay)を使ってモジュールを実行します
pip-run cowsay -- -m cowsay "moove over, pip-run" - 3
import文から依存関係が推定されるスクリプトを実行します
pip-run requests myscript.py
使う前に知っておきたいこと
- READMEには、本番環境での依存関係管理を目的としていないと記載されています。
- プロジェクトのメタデータにライセンスが記載されていません。
トピック
よくある質問
- pip-run とは?
- 1回の実行に必要なパッケージを一時環境にインストールし、実行後に破棄するPythonランチャー。 pip-runは、必要な依存パッケージを実行時にインストールし、プロセスの終了後に削除してPythonコードを実行するコマンドラインツールです。pip-runにパッケージ名を渡し、必要に応じてpip installの引数を続けた後、`--`と実行するスクリプト、モジュール、またはコマンドを指定します。virtualenvの作成、パッケージのインストール、コードの実行、環境の削除という通常の手順をまとめて置き換えます。
- pip-run は無料で使えますか?ライセンスは?
- pip-run にはライセンスが明記されていません。コードは公開されていますが、ライセンスがない場合は再利用の許諾がないため、利用前に作者に確認することをおすすめします。
- pip-run は今もメンテナンスされていますか?
- 活発にメンテナンス中。pip-run の最終コミットは 2026年10月29日 です。
- pip-run は何に使えますか?
- プロジェクトをセットアップせずに、サードパーティパッケージが必要なPythonスクリプトを1回だけ実行する。 システム環境に手を加えず、対話型セッションでライブラリを試す。 一時的な依存関係を使ってテストランナーやビルドツールを実行する。 shebang行を使った、単一ファイルで完結するPythonツールを作成する。
- pip-run のインストール方法は?
- pip-runをpipと一緒にシステムのsite-packagesにインストールします(READMEのInstallationセクションを参照) 一時的な依存関係(ここではcowsay)を使ってモジュールを実行します: pip-run cowsay -- -m cowsay "moove over, pip-run" import文から依存関係が推定されるスクリプトを実行します: pip-run requests myscript.py
- pip-run はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/jaraco/pip-run
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
アプリケーションと依存関係を、ポータブルな virtualenv のように使える単一の実行可能な .pex ファイルにパッケージ化する Python ツール。
Rust製の超高速なPythonパッケージ/プロジェクト管理ツール。pip、virtualenv、pyenv、pipxなどを置き換えます。
Pythonの依存関係を固定した再現可能なrequirementsファイルにまとめ、環境をその内容に同期するコマンドラインツール(pip-compile、pip-sync)のセット。
Pythonのvirtualenvと連携することもできる、Node.jsとnpmをそれぞれ備えた分離環境を作成するPythonツールです。
PHPコードをスキャンし、実際には使われていないComposerパッケージを見つける、Composerプラグイン形式のCLIです。