microsoft / microsoft/vscode-python-debugger
NumPy array metadata (shape, dtype, ndim)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 180
- Forks
- 126
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 3
Description
Type: Feature Request
Hello VS Code team,
Feature request: please add an option to show NumPy array metadata (shape, dtype, ndim) directly in the Variables/Locals view when debugging Python. Current workarounds (Data Viewer, Watch, Debug Console) are helpful but a compact shape/dtype column would greatly speed up debugging numeric code.
Use case:
- Quickly inspect array shapes/dtypes (e.g.,
frame.shape,frame.dtype) while paused at breakpoints without opening the Data Viewer or adding watches. - Helpful for image-processing / ML workflows where many arrays are inspected frequently.
Suggested design:
- Add optional compact badges or columns in Variables:
name | type | shape | dtype | value-preview. - Or provide a toggle
Python: Show Array Shape/DType in Variables.
Repro steps:
- Open a Python file using NumPy arrays.
- Start debugger and pause on a line where arrays exist.
- Observe Variables view — shape/dtype not visible by default.
Environment:
- VS Code version: 1.109.4
- Python extension: 2026.2.0
- OS: linux
Thanks for considering.
Regards,
Uri ZACKHEM urizackhem@gmail.com
VS Code version: Code 1.109.4 (c3a26841a84f20dfe0850d0a5a9bd01da4f003ea, 2026-02-16T15:35:57.932Z)
OS version: Linux x64 6.17.0-14-generic snap
Modes:
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the Variables/Locals rendering entry point in the TypeScript debugger extension and reviewing how paused Python values are represented. Determine where NumPy shape, dtype, and ndim could be exposed and how an optional display should behave; done means the requested metadata is visible while paused without requiring the Data Viewer or watches.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- numpy, python, typescript
- Domain
- developer-experience, devtools
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100