uvというツールの存在を知ったので使ってみた。
pip・poetry・virtualenvなどの置き換えが可能で、高速に動く。
Pythonのバージョンや、Pythonプロジェクトの管理もできる。
スクリプトのインストールも可能で、uvから実行することも可能。
と言う感じなので、最近のパッケージ管理系ツールのいいところ全部入りという感じ。
インストール
macを使っていれば、Homebrewでインストールできる。
brew install uv
また、shellのオートコンプリートにも対応しているので、ついでに設定しておくとよい。
# fishの場合
echo 'uv generate-shell-completion fish | source' >> ~/.config/fish/config.fish
Pythonのインストールと管理
uv python install 3.12
ツールのインストールと実行
uvxコマンドを使用する
このとき、まだインストールされていないツールが実行された場合は、自動でインストールされる。
uvx pycowsay hello from uv
プロジェクトの作成・実行
initコマンドを使用する
これを実行すると、pyproject.tomlや.venvなど必要なものが作成される。
また、インストールされたライブラリのバーションはuv.lockに記録される。
# 新規作成
uv init my_project
# 既存のディレクトリをuvで管理する
cd /path/to/my_project
uv init