54 Commits

Author SHA1 Message Date
Clement Tsang 61e56754db feature: basic scrollbar support for tables and dialogs (#2046)
Adds scrollbars to dialogs (help, process kill) and optionally tables.
2026-04-25 09:47:15 +00:00
Clement Tsang 5d09d18469 feature: support showing a decimal place for CPU usage (#2045)
* feature: support showing a decimal place for CPU usage

* update docs + changelog + schema

* fix basic cpu formatting
2026-04-21 23:27:25 -04:00
Clement Tsang ae425d09d8 feature: add new table_gap option with a drawn-line option (#2039)
This PR replaces the `hide_table_gap` option with a new `table_gap` option that controls whether a space is drawn, a line is drawn, or nothing is drawn.
2026-04-17 08:02:16 +00:00
dastarruer 8cb217cd19 feature: add a global bg_color option for widgets (#1979)
* feature: add global bg_color option

* period

* fmt

* oops, format again

* update default config + schema

* rename field + apply it to dialogs

* update dialog to just draw once

* handle basic

* add test + some small tweaks

---------

Co-authored-by: Clement Tsang <34804052+ClementTsang@users.noreply.github.com>
2026-04-11 03:59:25 -04:00
Clement Tsang bb08494c12 other: use vhs to automatically record demo gif (#2006)
This PR adds a vhs "tape" file to automatically do the demo gif
recording. The point of this is to make it more consistent/easy to do,
and this has the benefit of making a smaller gif file.
2026-03-22 18:57:23 -04:00
Clement Tsang 7496bbdd54 feature: configurable default sort column for temperature and disk table widgets. (#2003)
Adds support for configuring the default sort column for temperature and disk widgets via config file.
2026-03-21 17:23:16 -04:00
Clement Tsang d458d1958b other: fix some config code for nice/priority (#1911)
* other: fix some config code for nice/priority

* driveby change from cfg(target_family=unix) to just cfg(unix)

* remove nice as a default for now
2025-12-21 15:22:00 -05:00
Adarsh Das 45b2522929 feature: add readonly mode (#1861)
* init

* Fixed code smells

* Updated documentation as per feedback
2025-11-17 06:03:46 -05:00
Justin Martin 118bb5e061 feature: free arc (#1812)
* feature: free arc

* freebsd clippy no-default-features

* add alias to free_arc

* add get_threads to default config

* clippy

* code review: combine zfs feature and target_os build cfgs
2025-10-12 15:08:55 -04:00
Justin Martin 392a659f33 bug: skip avg cpu in basic mode with dedicated row (#1811)
update sample config
2025-09-14 14:53:30 -04:00
Justin Martin b07f940970 feature: hide k-threads (#1772)
* hide k-threads init

comment

* add config for hide_k_threads

arg help

* update docs for hide_k_threads

* add test_toggle_k_thread for process_table

* update help text and schema

* add hide_k_threads to sample_configs default

* add Virt column to sample default config

* update sample demo config column name for schema ci

* force_rerender_and_update from toggle_k_threads for updates when frozen

* use is_kernel for ProcessType

* remove todo

* Apply suggestions from code review

Co-authored-by: Clement Tsang <34804052+ClementTsang@users.noreply.github.com>

---------

Co-authored-by: Clement Tsang <34804052+ClementTsang@users.noreply.github.com>
2025-09-07 18:56:56 -04:00
Clement Tsang a35b81a187 docs: update docs page with missing features (#1805)
* add no key setting

* do it here instead of in main loop

* add a warning

* docs: update a bunch of docs with features

* linux-only test

* oop

* skip field check for other os

* oop

* easier way of doing it

* use dead code

* oop

* huh guess I don't need it
2025-08-29 23:12:19 -04:00
Clement Tsang 58a9a643a4 docs: update default config (#1803) 2025-08-21 23:31:12 -04:00
Clement Tsang 868667add8 deps: bump deps as of 2025-08-11 (#1778)
* docs: update changelog

* bump deps
2025-08-12 08:47:02 +00:00
Clement Tsang 566502347e docs: update things to reference 0.11.0 in prep for release (#1765)
* docs: update things to reference 0.11.0 in prep for release

Things still missing:
- Update schema
- Release notes
- Any doc site updates?
- Any GIF updates?
- Take a pass over README?

* update schema with 0.11

* update schema with virt

* update

* update date

* an attempt and failure to update the gif

* bump freebsd

* bump

* I swear

* okay so no freebsd 15, got it
2025-08-06 04:09:39 +00:00
Clement Tsang 98342617a1 refactor: update how we render and handle process kill dialogs (#1701)
* fmt

* temp work

* get yes/no working

* cleanup

* fill out some more buttons

* conditional compilation

* update

* update docs

* wait this just works

* like 80% of the way there

* some stuff around the killing screen

* mouse works

* done!

* clippy

* more stuff

* fix some imports for windows

* android fixes

* oop

* ahh

* hmm
2025-06-08 04:46:31 -04:00
Clement Tsang 9999a4824a docs: update documentation around how grouping processes and tree mode are incompatible (#1679)
* update default config

* use info, not note
2025-02-21 11:04:08 +00:00
Clement Tsang 196d6d18c6 feature: add the ability to configure the disk widget's table columns (#1625)
* a bit of refactoring here...

* some refactoring, add columns

* cleanup

* add disk column feature

* update changelog
2024-11-18 02:28:20 +00:00
Clement Tsang 4e47f9b51a bug: fix incorrect default config definitions for chart legends (#1594)
I had changed how this was parsed in-code but I forgot to update the default configs. This also adds some e2e tests to hopefully catch this all for real in the future, since the schema ones don't catch this stuff and the constants test doesn't actually run the binary for a proper e2e test.
2024-09-12 09:51:23 +00:00
Clement Tsang 2c03525945 other: regenerate the sample default config to match 0.10.2 (#1573)
The default sample config was outdated.
2024-08-27 18:10:31 -04:00
Clement Tsang 5a009987ac docs: update docs around disable_gpu change. (#1562)
* docs: update changelog

* update docs
2024-08-14 20:27:32 -04:00
Frederick Zhang 4c8367225a fix: missing parent section names in TOML (#1551) 2024-08-07 12:59:44 -04:00
Clement Tsang a6e1ea3bd8 docs: update docs on filter (#1519)
Updates some outdated docs on filtering, and adds some tests as well. In particular, this also adds a cfg_attr on tests to try and catch unknown fields; we'll be more lenient in prod builds though and allow them.
2024-07-31 06:41:30 +00:00
Clement Tsang c77256eaaf change: make table headers bold by default (#1513)
* change: make table headers bold by default

* changelog
2024-07-31 00:37:38 +00:00
Clement Tsang f091ebdc6a feature: support simple colour settings for text fields too (#1511)
* feature: support simple colour settings for text fields too

* also add 'color' back to some options

* tests
2024-07-30 07:15:23 +00:00
Clement Tsang 28972a1e64 refactor: refactor styling options (#1499)
Introduce a new configuration system for styling.
2024-07-29 09:03:35 +00:00
Clement Tsang 3602429529 other: add schema test for uncommented default config (#1484)
* other: add schema test for uncommented default time

* ahhh

* forgot to disable this
2024-06-17 00:59:36 -04:00
Clement Tsang 982b7181a6 change: change how disk, temp, and net filters in config are set (#1481)
* change: change how disk, temp, and net filters in config are set

* run rustfmt

* update default config
2024-06-16 02:15:36 -04:00
Clement Tsang ee2e1fee1c refactor: use struct for args instead of builder interface (#1472)
* start moving args

* tmp

* refactor config

* port over ags

* update changelog
2024-05-27 01:16:37 -04:00
Clement Tsang 93d6718766 other: update a bunch of argument descriptions and some arg/config names (#1441)
* other: update a bunch of argument descriptions and some arg/config names

* update docs

* changelog
2024-04-10 20:46:35 -04:00
Clement Tsang a3541c9350 docs: use consistent wording around command-line options (#1378)
* docs: use consistent wording around command-line options

* fix missing code blocks
2024-01-11 02:14:05 -05:00
Clement Tsang b6f92c2f3d feature: support default selection of average CPU graph (#1353)
* feature: support default selection of average CPU graph

* test
2023-12-10 15:21:35 -05:00
Justin Martin e4a6e751ec feature: Add gpu proc info (#1276)
* Add gpu util, power and procs.

Consolidated gpu calls into `data_harvester`.

Changed config flag from `enable_gpu_memory` to `enable_gpu`.

Added GPU utilization to the cpu widget.

Added GPU process memory usage and utilization percentage to the proc widget.
Added key binds for gpu process toggling.

Added GPU power usage to the battery widget.
Added bounds check to battery widget header.
Show battery widget header when `gpu_enable`.

Added feature flag `legacy-functions` to `nvml-wrapper`.

updated config file(s).
updated help text.
updated docs.

* Code Review:

Remove GPU util from cpu widget
Remove GPU power from battery widget
Use reference for gpu widgets_to_harvest
Extract match arm to function for feature gate

* Code Review: add gmem% toggle

* Do not poll gpu temp when filtered

* Code Review Two Changes:

adjust doc wordings
remove extra references
remove extra widget harvest checks
init proc gpu values
use convert_temp_unit for gpu temp
2023-11-19 23:54:15 -05:00
Clement Tsang 4ac3b43260 docs: update time-related documentation (#1222)
* docs: update time-related documentation

* fix retention too
2023-06-24 01:36:36 -04:00
Clement Tsang 0b7f4c745d other: fix humantime-related documentation, add tests, support numbers + strings in toml (#1220)
* update documentation and support either numerical times or human times for time_delta and default_time_value

* update docs

* give more human times on error
2023-06-22 00:01:01 -04:00
Clement Tsang b02a5963fc docs: update default config file with processes section (#1120) 2023-05-01 01:26:41 -04:00
Twan Stok 1b1e80ec3c feature: add buffer and cache memory (#1063)
* First implementation of cache memory data collection, mostly copied from RAM and swap implementations

* First implementation of cache memory display, copied from RAM and swap implementations. placed cache as second in the list as it is more similar to the RAM than any other item in the list

* expanded comment to explain method.

* rustfmt

* all cache-related code excluded on windows, in the process refactored src/data_conversion.rs convert_mem_label() to convert a single label instead of all at once

* better factoring-out of cache memory logic to allow individual disabling

* added --enable_cache_memory flag, disabled cache memory collection by default

* renamed CCH to CHE
not sure how i messed that up

* changelog updated

* Added command line flag documentation

* updated config file documentation

* specified that buffer and cache memory display does not work on windows

* resolved merge conflicts

* added documentation to cache memory data collection

* capitalized Windows

* implemented missing canvas styling logic

* fixed misplaced no-windows flag

* reduced colour collisions, as cache colour was the same as the first GPU colour

* made FIFTH_COLOUR constant windows-only

* Revert "made FIFTH_COLOUR constant windows-only"

This reverts commit 72698f1dd7.

* made FIFTH_COLOUR constant non-windows-only

* minor fix for basic mode row count

* Update src/app/data_harvester/memory/sysinfo.rs

Co-authored-by: Clement Tsang <34804052+ClementTsang@users.noreply.github.com>

* Update src/canvas/widgets/mem_basic.rs

Co-authored-by: Clement Tsang <34804052+ClementTsang@users.noreply.github.com>

* updated default_config.toml

* formatting

---------

Co-authored-by: ClementTsang <34804052+ClementTsang@users.noreply.github.com>
2023-04-12 22:51:41 -04:00
Clement Tsang 07fd2152f4 docs: update changelog + docs for default expansion feature (#928) 2022-12-07 04:28:43 -05:00
Chon Sou 4272dd0c2d feature: Adding default expanded option to commandline and config (#919)
* [#822] adding default expanded option to commandline and config

* refactoring (#919)

* nullifying default expanded when in basic mode (#919)
2022-12-06 19:34:41 -05:00
Clement Tsang 4f00434210 other: non-normalized process CPU% cleanup and docs (#910)
* refactor: simplify non-normalized code

* update docs

* appease clippy

* add comment

* unnormalized

* fix issues on non-Linux regarding typos/imports
2022-11-21 05:28:42 -05:00
database64128 71bc6c940e feature: per-core process cpu usage percentage (#899) 2022-11-21 03:12:47 -05:00
Clement Tsang 50768907ec feature: add custom retention periods for data (#892)
* feature: add custom retention periods for data

* docs: update changelog

* docs: update docs
2022-11-13 01:51:10 -05:00
Justin Martin dd003101a0 enable gpu mem cli and update docs for arc/gpu mem (#836) 2022-10-16 00:08:38 -04:00
Clement Tsang 74645159bb other: update default config file (#561)
Update the default config file example in the repo as of 2021-07-25.
2021-07-25 20:17:03 -04:00
Clement Tsang 90be9730a6 feature: Add network interface filtering (#381)
Adds a new option in the config file to filter out network interfaces.  Also add the option to filter by whole words.

Interface follows that of the existing ones:

```toml
[net_filter]
is_list_ignored = false
list = ["virbr0.*"]
regex = true
case_sensitive = false
whole_word = false
```
2021-01-01 18:09:28 -05:00
Clement Tsang 60d0117c85 feature: Add process_command to default to the process command (#379)
Adds a `process_command` flag and config option to default to showing the full command in the process widget on startup.
2020-12-28 14:34:32 -05:00
ClementTsang 5abb1ce1a3 other: update default config.toml 2020-11-22 13:26:58 -05:00
Clement Tsang c458a4d101 docs: update screenshots 2020-05-04 17:23:15 -04:00
ClementTsang 87dba602f9 fix: Fixes typo in config generation 2020-04-22 17:26:50 -04:00
ClementTsang 121370e9f4 docs: update default config 2020-04-22 17:19:36 -04:00