Description
This plan captures our work on the Python Extension in November 2024. We follow the same iteration cycle as VS Code. Although we plan for a whole iteration, we may not only ship at the end of an iteration but throughout.
Legend of annotations
Mark | Description |
---|---|
🏃♀️ | work in progress |
✋ | blocked task |
💪 | stretch goal for this iteration |
🔴 | missing issue reference |
🔵 | more investigation required to remove uncertainty |
⚫ | under discussion within the team |
⬛ | a large work item, larger than one iteration |
Summary for plan reading
- Continue work on the Python Environments extension; @karthiknadig
- Addressing bugs and incorporating feedback on Terminal and REPL; @anthonykim1
- Addressing bugs and improvements for testing, investigate pytest plugin compatibility, enhance coverage features; @eleanorjboyd
- Addressing bugs in the debugger repo; @eleanorjboyd
Environments
- ⬛ Finish up environment manager extension required features; issue; @karthiknadig
- Replace selection, create, get and set environments in pyhton extension with new behavior; issue; @karthiknadig
Terminal
- Python 3.13 bug fixes for REPL and Smart send; @anthonykim1
- Fix normalization for Python 3.13; issue; @anthonykim1
- cpython upstream fix to adjust terminal cursor to correct place; issue; @anthonykim1
- KeyboardInterrupt when using shell integration's executeCommand; issue; @anthonykim1
- Properly differentiate Windows, Linux, and WSL for Python Shell Integration; issue; @anthonykim1
- Ensure Python Terminal Shell Integration setting is effective without reloading; issue; @anthonykim1
- Gitbash terminal not opening to desired workspace folder. issue; @anthonykim1
REPL
- Python REPL doesn't handle window reload; issue; @anthonykim1
- 🏃♀️ Show notification to suggest Native REPL when "python" is typed in terminal; issue; @anthonykim1
- Leave focus on editor after smart-send to Native REPL; issue; @anthonykim1
- 💪 Show "install Jupyter extension" only if users have rich output in REPL; issue; @anthonykim1
Testing
- 🏃♀️ ✋ Contribute to the coverage.py package through surfacing branch coverage; issue; @eleanorjboyd
- Add error communication around dynamic adapter activation bug issue @eleanorjboyd
- Pytest
--rootdir
arg alignment withpython.testing.cwd
setting; issue; @eleanorjboyd - Add support for
pytest-describe
plugin issue; @eleanorjboyd - 🏃♀️ Try top pytest plugins and ensure their compatability with rewrite infrastructure issue; @eleanorjboyd
- Ignore files omitted in coverage runs in UI issue; @eleanorjboyd
- Fix failing tests and merge in fifo work for testing communication issue; @eleanorjboyd
Debugger
- Add support for interpreter paths with spaces in the debugpy extension; issue; @eleanorjboyd
- Fix bug on debugger restart testing running all tests in workspace; issue; @eleanorjboyd
Engineering
N/A
Deferred Items
-
Formalize Python project/packages structure and content for opinionated flow; issue; @cwebster-99 @karthiknadig
-
⬛ Create content for AI tutorial; issue; @cwebster-99 @luabud
-
💪 Support interrupt for Native REPL on Windows; issue; @anthonykim1
-
💪 Start refactoring code for custom args; issue; @eleanorjboyd
-
🏃 Add launch support for test discovery and execution in
settings.json
; issue @eleanorjboyd -
Unify
venvPath
andvenvFolders
; issue -
Switch to using
unittest.main
and a custom runner for unittest; issue; @eleanorjboyd -
Understand the problem for git pre-commit hooks; issue @anthonykim1
-
💪 Run in Python REPL for Chat; issue; @anthonykim1