Microsoft hat seine Python Extension für den Code-Editor Visual Studio Code mit dem neuesten Update versehen. Darin wurden insgesamt 35 Issues geschlossen. Es gibt Neuerungen für den Python Language Server, der seit letztem Jahr besteht, sowie für das noch junge Feature Jupyter Notebook Cell Debugging. Im Marketplace steht die September-Ausgabe der Extension zum Download bereit. Die Features wurden von Microsoft in einem Blogeintrag vorgestellt.
Python Language Server
Mit dem September-Release wurde der Python Language Server mit neuen Linting-Fähigkeiten ausgestattet. Sie erlauben unter anderem das Aufspüren von ungelösten Imports, undefinierten Variablen oder zu vielen Argumenten in einem Funktionsaufruf. Alle Linting-Messages sind auf GitHub einzusehen.
Zudem wurde allgemeiner #noqa
-Support hinzugefügt, sodass Linting-Messages von Fall zu Fall deaktiviert werden können. Für Zeilen mit #noqa
-Kommentar wird der Diagnostik-Output unterdrückt, wie Microsoft demonstriert:

#noqa-Kommentar in VS Code Python Extension; Quelle: Microsoft
Jupyter Notebook Cell Debugging
Im August-Release wurde das Debugging von Jupyter-Notebook-Zellen eingeführt. Mit dem aktuellen Release kann nicht mehr nur User-Code, sondern auch Non-User-Code debuggt werden. Um das neue Feature zu nutzen, muss in Datei > Einstellungen > Einstellungen nach „Data Science: Debug Just My Code“ gesucht und die Option deaktiviert werden. Dadurch wird es möglich, in Funktionsaufrufe hineinzugehen und z. B. zu untersuchen, wie sich Non-User-Code verhält und wie sich Variablen beim Ausführen verändern.
Microsoft zeigt das Debugging:

Jupyter Notebook Cell Debugging in VS Code Python Extension; Quelle: Microsoft
Zu den weiteren Features im September-Update der Python Extension zählen das Erkennen einer neuen virtuellen Umgebung sowie ein überarbeitetes Assignment Handling im Python Language Server.
Weiterhin werden neue Features per A/B-Test ausgerollt. Wer also etwas Unerwartetes bemerkt, könnte sich im Testprogramm befinden. Falls die Teilnahme nicht erwünscht ist, bietet die Deaktivierung der Telemetriedaten eine Opt-Out-Möglichkeit.
Weitere Informationen zum September-Update gibt es im Blogeintrag von Luciana de Melo e Abud, Program Manager, Python Extension in Visual Studio Code.