🔍
uvのデバッグ環境をVS Codeで構築する
TL;DR
Rustで書かれたPythonパッケージマネージャーuvのデバッグ環境をVisual Studio Codeで構築する方法を紹介します。
動機
uvの挙動を詳しく調査したいケースがあります。特に、ブレークポイントを打って動作を確認したい場合があります。
すること
- uvのリポジトリをフォークします。
- VS Codeに必要な拡張機能をインストールします。
- デバッグ設定ファイル(launch.json)を作成します。
- デバッグを実行します。
やり方
1. リポジトリのフォーク
GitHubでuvのリポジトリをフォークし、ローカルにクローンします。
2. VS Code拡張機能のインストール
以下のコマンドを実行して、必要な拡張機能をインストールします。
$ code --install-extension rust-lang.rust-analyzer
$ code --install-extension vadimcn.vscode-lldb
3. launch.jsonの作成
- VS Codeの "Run and Debug" メニューを開きます。
- "create a launch.json file." を選択します。
- デバッガーとして "LLDB" を選択します。
4. launch.jsonの編集
作成されたlaunch.jsonを以下のように編集します。args
にデバッグしたいuvコマンドの引数を指定します。
{
"version": "0.2.0",
"configurations": [
{
"type": "lldb",
"request": "launch",
"name": "Debug executable 'uv'",
"cargo": {
"args": [
"build",
"--bin=uv",
"--package=uv"
],
"filter": {
"name": "uv",
"kind": "bin"
}
},
"args": ["add", "markupsafe", "--directory", "test", "--index", "https://download.pytorch.org/whl/cu124", "--verbose"],
"cwd": "${workspaceFolder}"
}
]
}
この設定例では、uv add markupsafe --directory test --index https://download.pytorch.org/whl/cu124 --verbose
コマンドをデバッグ実行します。
5. デバッグの実行
- ソースコードにブレークポイントを設定します。
- 「実行とデバッグ」メニューから「Debug executable 'uv'」を選択します。
- デバッグが開始され、ブレークポイントで実行が停止します。
以下は、実際にデバッグを実行している様子です。
まとめ
VS Codeを使ってuvのデバッグ環境を構築する方法を紹介しました。この環境を使うことで、uvの内部動作を詳細に調査できます。
この方法を使えば、uvの動作をステップ実行したり、変数の値を確認したりすることができます。Rustプロジェクトのデバッグに慣れていない方でも、視覚的に分かりやすく追跡できるでしょう。
Discussion