Commit graph

847 commits

Author SHA1 Message Date
Xuehai Pan
c869a835cb fix(tui): support custom colors defined via init_color()
Use true-color (24-bit) ANSI sequences for colors defined with
init_color(). Previously, custom RGB values stored in color_table
were ignored during rendering.
2026-02-02 02:08:25 +08:00
Xuehai Pan
3ba255dd31 feat(tui): improve key input handling and add cursor APIs
- Rewrite Unix key input to use non-blocking I/O via fcntl
- Fix key repeat/hold by reading Python's buffer before select()
- Add SIGWINCH handler for window resize detection
- Implement cursor APIs: clear, clrtoeol, clrtobot, clearok, timeout
- Return KEY_RESIZE on terminal resize events
2026-02-02 02:01:28 +08:00
Xuehai Pan
fa93507dce fix(tui): add missing key mappings for arrow keys, Shift+Tab, and modified keys
Add support for:
- SS3 format arrow keys (ESC O A/B/C/D) for application cursor mode
- SS3 navigation keys (Home, End, keypad Enter)
- Shift+Tab (ESC [ Z -> KEY_BTAB)
- Parameterized sequences with modifiers (ESC [ n ; m X)
- Shifted key variants (Shift+Arrow, Shift+Delete, etc.)
- Windows Shift+Tab (scan code 15)

These sequences are sent by terminals in application mode (tmux, screen,
vim, etc.) and were previously unrecognized, causing arrow keys and
Shift+Tab to not work.
2026-02-02 01:25:21 +08:00
Xuehai Pan
a8fe6924ad feat(tui): implement curses emulation with ANSI escape sequences
- Add complete terminal handling with screen buffer management
- Implement keyboard and mouse input (SGR extended mouse protocol)
- Add support for text attributes, colors, and ACS line-drawing characters
- Handle wide characters and combining character merging
- Support both Windows (msvcrt) and Unix (termios) platforms
- Fix ERR constant to match standard curses (-1 instead of 1)
- Fix unctrl() return type annotation (str instead of int)
2026-02-02 01:06:20 +08:00
Xuehai Pan
319e88f16b deps(colorama): bump colorama dependency 2026-02-01 19:27:34 +08:00
Xuehai Pan
87bbb625fc feat(tui): add curses interface 2026-02-01 19:27:33 +08:00
Xuehai Pan
adb029d938 refactor(tui): drop dependency windows-curses 2026-02-01 19:27:33 +08:00
Xuehai Pan
35ad791103 docs(CHANGELOG): update CHANGELOG.md 2026-02-01 19:27:33 +08:00
Xuehai Pan
daf26ec762 ver: bump version to v1.6.2
Some checks failed
Build / Build sdist and wheels (release) Has been cancelled
Build and Publish Docker Images / Build and Publish Docker Images for nvitop (release) Has been cancelled
Build and Publish Docker Images / Build and Publish Docker Images for nvitop-exporter (release) Has been cancelled
Build / Publish to PyPI (release) Has been cancelled
2026-01-28 01:02:12 +08:00
Xuehai Pan
8e2a517433 deps(nvidia-ml-py): add nvidia-ml-py 13.580.126 and 13.590.48 to support list 2026-01-28 00:58:17 +08:00
Xuehai Pan
86b1f2d7dd chore: fix grammar and typos 2026-01-21 16:37:52 +08:00
Xuehai Pan
5cc0e40f98 chore(pre-commit): update pre-commit hooks 2026-01-12 23:47:21 +08:00
Xuehai Pan
75fc7b4c65 fix(gui): fix column alignment for device with power limit >= 1000W 2026-01-04 18:15:24 +08:00
Xuehai Pan
31792dddf1 chore(tui): tweak bar chart spacing 2025-12-15 16:08:22 +08:00
dependabot[bot]
a7dd6efce5
deps(workflows): bump actions/upload-artifact from 5 to 6 (#197)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 14:01:53 +08:00
dependabot[bot]
2299e92d5a
deps(workflows): bump actions/download-artifact from 6 to 7 (#196)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Xuehai Pan <XuehaiPan@pku.edu.cn>
2025-12-15 14:01:24 +08:00
Xuehai Pan
de681c992c deps(nvidia-ml-py): add nvidia-ml-py 13.590.44 to support list 2025-12-09 13:19:39 +08:00
Xuehai Pan
ce152e6d98 ver: bump version to v1.6.1
Some checks failed
Build / Build sdist and wheels (release) Has been cancelled
Build and Publish Docker Images / Build and Publish Docker Images for nvitop (release) Has been cancelled
Build and Publish Docker Images / Build and Publish Docker Images for nvitop-exporter (release) Has been cancelled
Build / Publish to PyPI (release) Has been cancelled
2025-12-08 11:43:51 +08:00
Xuehai Pan
4d948e2c9d
feat(api/device): support devices with unified memory (#195) 2025-12-08 11:41:35 +08:00
Xuehai Pan
506dba0b49 docs: polish docstrings and fix grammars 2025-11-28 16:47:12 +08:00
dependabot[bot]
8218bbd48b
deps(workflows): bump actions/checkout from 4 to 6 (#194)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Xuehai Pan <XuehaiPan@pku.edu.cn>
2025-11-25 00:30:12 +08:00
Xuehai Pan
5a4f1d52ea feat(exporter): add exporter and prometheus extras for nvitop PyPI package 2025-11-16 14:02:52 +08:00
Xuehai Pan
07c4819e1b chore(exporter): build nvitop-exporter docker image with local source code 2025-11-12 13:01:09 +08:00
Xuehai Pan
d0a043e205 ver: bump version to v1.6.0
Some checks failed
Build / Build sdist and wheels (release) Has been cancelled
Build and Publish Docker Images / Build and Publish Docker Images for nvitop (release) Has been cancelled
Build and Publish Docker Images / Build and Publish Docker Images for nvitop-exporter (release) Has been cancelled
Build / Publish to PyPI (release) Has been cancelled
2025-11-11 15:59:54 +08:00
Xuehai Pan
ffc344d379
feat(workflows/docker): add workflow to build docker images (#191) 2025-11-11 15:57:18 +08:00
Xuehai Pan
466f4f57b4 chore(tui/utils): rename functions for better name 2025-11-10 17:54:22 +08:00
Xuehai Pan
51ee688d2b feat(tui/device): add extra information to bar charts 2025-11-10 17:31:45 +08:00
Xuehai Pan
932257a5f9 feat(tui/device): add bar charts for memory bandwidth and power usage (#190) 2025-11-09 23:55:36 +08:00
dependabot[bot]
a1e15da2bf
deps(workflows): bump actions/download-artifact from 5 to 6 (#187)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-27 12:34:53 +08:00
dependabot[bot]
144eb86048
deps(workflows): bump actions/upload-artifact from 4 to 5 (#188)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-27 12:34:33 +08:00
Johnny
2cdce49c4e
deps(nvidia-ml-py): add nvidia-ml-py 13.580.82 to support list (#186) 2025-10-18 18:53:31 +08:00
Xuehai Pan
996078bfb8 chore(pre-commit): update pre-commit hooks 2025-10-18 18:46:54 +08:00
Xuehai Pan
a5f8a525c7 chore(pre-commit): update pre-commit hooks 2025-10-07 19:47:49 +08:00
Xuehai Pan
8522195960 chore: update .gitignore 2025-10-07 19:47:47 +08:00
dependabot[bot]
6dfbb75862
deps(workflows): bump actions/setup-python from 5 to 6 (#184)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Xuehai Pan <XuehaiPan@pku.edu.cn>
2025-09-08 14:54:18 +08:00
dependabot[bot]
5d434b8987
deps(workflows): bump actions/checkout from 4 to 5 (#180)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-18 15:01:49 +08:00
Xuehai Pan
d73ab01163 fix(exporter): fix typo rx -> tx for PCIe TX query in dashboard template 2025-08-16 20:32:18 +08:00
Xuehai Pan
251f071c2c ver: bump version to v1.5.3
Some checks failed
Build / build (release) Has been cancelled
Build / publish (release) Has been cancelled
2025-08-16 14:14:34 +08:00
Xuehai Pan
032370319c
chore!: remove per-version install extras for nvidia-ml-py and prefer nvitop[cudaXX] instead (#179) 2025-08-16 14:12:11 +08:00
Xuehai Pan
89334065d8
deps(nvidia-ml-py): add nvidia-ml-py 13.580.65 to support list (#178) 2025-08-16 13:45:40 +08:00
dependabot[bot]
c166dfce10
deps(workflows): bump actions/download-artifact from 4 to 5 (#177)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Xuehai Pan <XuehaiPan@pku.edu.cn>
2025-08-11 16:25:59 +08:00
Xuehai Pan
3b902b5318 docs(CHANGELOG): update CHANGELOG.md 2025-08-06 14:15:32 +08:00
Isaac K. Ko
c54a7fb3f6
fix(api/device): fix device.pcie_tx_throughput() returns PCIe RX throughput due to a typo in argument (#176) 2025-08-06 14:14:31 +08:00
Xuehai Pan
246f385c81 deps(nvidia-ml-py): add nvidia-ml-py 12.570.172 to support list 2025-08-06 14:01:22 +08:00
Xuehai Pan
a0e2d8cfcd chore(pre-commit): update pre-commit hooks 2025-08-06 14:01:22 +08:00
Xuehai Pan
f9ff0de87c feat(exporter): draw network and disk I/O graphs with centered symmetric zero 2025-07-26 23:02:00 +08:00
Xuehai Pan
96cb945ca7 ver: bump version to v1.5.2
Some checks failed
Build / build (release) Has been cancelled
Build / publish (release) Has been cancelled
2025-07-25 16:07:37 +08:00
Xuehai Pan
bc1b075d85 docs: prefer uvx over pipx in docs 2025-07-25 00:13:21 +08:00
Xuehai Pan
8a02ca5dc1
fix(api/process): fix snapshot cache for GPU processes with shared host process (#172) 2025-07-25 00:08:11 +08:00
Xuehai Pan
c8dd200416 chore(pre-commit): update pre-commit hooks 2025-07-24 22:34:31 +08:00