Cela devrait être possible avec la configuration de débogage intégrée. Pour autant que je sache, le seul cas où ce n'est pas possible est lorsque les dépendances de Python sont des codes C (ex. OpenCV, pygame) parce qu'ils sont stockés en tant que .donc au lieu de fichiers Python.
Disons que j'ai cette structure :
main
test.py
pkgs
mypkg
__init__.py
moduleA.py
setup.py
J'ai créé mypkg
sur la base de Emballage des projets Python dans la documentation de Python. Je l'ai ensuite installé sur mon env en utilisant la même commande que vous avez mentionnée :
pip install -e /path/to/mypkg
Dans test.py, j'ai ceci :
import moduleA
moduleA.add_two_num(1, 2)
Tout d'abord, assurez-vous de configurer l'interpréteur VSCode pour qu'il utilise le même environnement que celui dans lequel vous avez installé mypkg
. Voir Sélectionner et activer un environnement de la documentation du VSCode.
Suivant, créer une configuration de débogage pour test.py :
{
"name": "test",
"type": "python",
"request": "launch",
"cwd": "${workspaceFolder}",
"program": "/path/to/test.py",
"pythonPath": "/path/to/.virtualenvs/test-py37/bin/python",
"console": "integratedTerminal",
}
Il est important, ici encore, de définir pythonpath
pour pointer vers le même python
où vous avez installé mypkg
. Ici, j'utilise un environnement virtuel nommé test-py37
.
Placez maintenant un point d'arrêt sur la ligne contenant le paquet externe :
Lancez ensuite le débogueur (appuyez sur F5 ou sélectionnez-le dans le panneau Debug puis appuyez sur le bouton Play). Lorsque le débogueur s'arrête au point d'arrêt :
Il suffit d'appuyer sur la touche Entrer dans le jeu (ou F11 ) et VS Code devrait vous amener au code de la dépendance externe. Vous pouvez également ouvrir le fichier directement dans VS Code, puis placer des points d'arrêt. Une fois qu'il est ouvert dans votre éditeur, la prochaine fois que vous déboguerez, il s'arrêtera sur ces points d'arrêt.