Commit Graph
683 Commits
Author SHA1 Message Date
ClementTsang 7f7d0cebf4 bug: fix spacing for disk table widget headers when sorting 2022-11-06 02:26:16 -05:00
Clement TsangandGitHub 36837ae8ac feature: basic sortable disk (#870) 2022-11-06 01:34:32 -05:00
Clement TsangandGitHub 4d9f5093b2 feature: basic sortable temp (#868)
* feature: basic sortable temp

* add shortcuts

* fix missing shortcut names in header

* update changelog

* update docs
2022-11-05 19:32:14 -04:00
Clement TsangandGitHub e6e1e9d688 deps: update nvml to 0.8.0 (#869) 2022-11-05 02:12:31 -04:00
Clement TsangandGitHub 76c3bc4254 refactor: clippy and small cleanup/comments (#865)
* refactor: small cleanup and comments in some code

* clippy

* more clippy

* fixes for macos/freebsd
2022-11-04 04:17:22 -04:00
DianaandGitHub b8c73d3a0b More human friendly temperature sensor naming (#807)
* More human friendly temperature sensor names

This makes the names more human friendly, and possible to distinguish from each other

* Keep hwmon sensor name for GPUs

* Keep hwmon sensor name for non-GPUs too

* fix device path
2022-11-02 00:43:58 -04:00
Clement TsangandGitHub 064d740c6d refactor: move data passing for table to another step (#863)
* refactor: remove redundant scroll direction enum

This was made redundant from the table refactor.

* add some todos/docs

* refactor: temp hack to pass in data on process
2022-11-02 00:36:55 -04:00
lroobrouandGitHub ee2f6c7a72 feature: Implement PgUp and PgDown in the help dialog. (#841) 2022-10-20 00:34:00 -04:00
Clement TsangandGitHub b879c36588 refactor: move some state code around (#839) 2022-10-16 03:10:30 -04:00
Justin MartinandGitHub dd003101a0 enable gpu mem cli and update docs for arc/gpu mem (#836) 2022-10-16 00:08:38 -04:00
ClementTsang d99f41f17e Revert "refactor: remove heim network usage (#833)"
This reverts commit 913562e7e6.
2022-10-15 18:42:55 -04:00
Clement TsangandGitHub 913562e7e6 refactor: remove heim network usage (#833) 2022-10-15 18:24:35 -04:00
Clement TsangandGitHub a949740c94 other: make gpu memory collection configurable (#835)
Follow-up to #794, this makes GPU memory collection toggleable.
2022-10-15 16:50:21 -04:00
Justin MartinandGitHub bd35bbdc9c feature: add gpu ram collector for nvidia feature flag (#794)
* add gpu ram collector for nvidia feature flag

* add row for TX in basic layout

* size gpu point_vec

* use vec for mem basic widget drawing

* remove to_owned

* code review: change mem tuple to struct with cfg fields, rename mem_basic ratio and use vec macro for layout

* build on freebsd
2022-10-15 15:08:48 -04:00
Clement TsangandGitHub 41970d9c64 other: add quick test for building clap app (#834) 2022-10-15 07:27:56 -04:00
Clement TsangandGitHub 8b72a33f40 refactor: move point definition to tui_rs widget (#832) 2022-10-13 15:40:19 -04:00
Clement TsangandGitHub b6a75db1b4 refactor: switch to pipe gauge implementation for basic cpu + mem (#829)
* refactor: switch to pipe gauge implementation for basic cpu + mem

* fix incorrect new basic cpu chunking scheme, revert to old one
2022-10-13 10:17:26 -04:00
Clement TsangandGitHub 436dadb683 refactor: switch to associated type for SortsRow (#828) 2022-10-12 19:02:54 -04:00
Clement TsangandGitHub 2a740f48f7 refactor: tables V2 (#749)
* refactor: move to new data table implementation

* more work towards refactor

* move disk and temp over, fix longstanding bug with disk and temp if removing the last value and selected

* work towards porting over CPU

work towards porting over CPU

fix typo

partially port over cpu, fix some potentially inefficient concat_string calls

more work towards cpu widget migration

some refactoring

* sortable data

sortable data

more refactoring

some sort refactoring

more refactoringgggg

column refactoring

renaming and reorganizing

more refactoring regarding column logic

add sort arrows again

* move over sort menu

* port over process

port over process

precommit

temp

temp two, remember to squash

work

fix broken ltr calculation and CPU hiding

add back row styling

temp

fix a bunch of issues, get proc working

more fixes around click

fix frozen issues

* fix dd process killing

* revert some of the persistent config changes from #257

* fix colouring for trees

* fix missing entries in tree

* keep columns if there is no data

* add and remove tests

* Fix ellipsis
2022-10-12 16:25:38 -04:00
Clement TsangandGitHub 1e5f0ea2d9 bug: add bindings to grab ppid in some cases on macos (#825) 2022-10-11 19:49:39 -04:00
Clement TsangandGitHub a965e53c6c fix wrong unit being used for memory in sysinfo data (#824)
* fix wrong unit being used for memory in sysinfo data

* update sysinfo to 0.26.4 for unsupported reasons w/ ntapi
2022-10-07 19:15:11 -04:00
Clement TsangandGitHub 7fec637360 bug: fix missing temp path locations to check on Linux (#816)
* bug: fix missing temp path locations to check on Linux

* remember to divide by a thousand in thermal_zone
2022-09-23 00:48:58 -04:00
Clement TsangandGitHub e80e07a716 refactor: minor cleanup of linux disk code (#813)
Since we no longer use heim for Linux disk checking, we can remove the
async reliance and update some file names/comments to be more
appropriate to the current state of the code. We also do some small
cleanup.
2022-09-18 05:13:27 -04:00
Clement TsangandGitHub cc048de3b0 refactor: replace heim temp conversion code (#811) 2022-09-17 23:43:40 -04:00
DianaandGitHub c3e4a95d04 Replace heim with sysfs and dont wake devices (#805)
* Replace heim with sysfs and dont wake devices

This commit replaces heim sensor reading with manual sysfs sensor reading, and skips reading sensors for any device that is in ACPI D3cold

This has the notable downside of still keeping a device awake, which I hope to solve in a later commit

* Update docs

They were referring to files i ultimately decided against using in this implementation, and so were no longer relevant to document.

* has_temp check should be before reading hwmon_name

* should_read_temp doesn't have to be mutable

* Fix sensor for zenpower kernel module
2022-09-16 05:06:17 -04:00
Clement TsangandGitHub c6c7fb3a30 deps: update sysinfo to 0.26.2 (#806)
* deps: update sysinfo to 0.26.2

This dependency update has some nice things in store for us:
- MacOS M1 temperature support
- Bevy of bug fixes

* update documentation

* some fixes
2022-09-16 04:42:24 -04:00
Clement TsangandGitHub 46a2a3a52b other: Clarify help menu (#800)
* other: clarify that numbers are for help menu

* bug: fix incorrect overscroll check, should be min
2022-09-03 04:04:03 -04:00
Justin MartinandGitHub 6e0bc96093 feature: Add zfs feature flag for arc memory (#784)
* freebsd clippy

* add arc support

* Code Review: moved runtime cfg checks to compile time and formatting

* remove compile platform checks

* add zfs feature flag to get_arc_data
2022-08-22 02:47:22 -04:00
ClementTsang 658b8c720f refactor: minor tweak to update_position code 2022-08-15 00:50:27 -04:00
ViridiCanisandGitHub f5e2b7242a feature: clamp scrolling (#775)
* clamp scrolling when trying to go beyond the top or bottom

* add more 'do nothing' cases to `update_position`

* adjust tests to clamping scrolling

* fixup! add more 'do nothing' cases to `update_position`

* fixup! clamp scrolling when trying to go beyond the top or bottom

* fixup! fixup! clamp scrolling when trying to go beyond the top or bottom
2022-08-15 00:45:27 -04:00
Clement TsangandGitHub 3016a3d6a2 refactor: change max_scroll_index usage to better reflect name (#783)
Tweaks `max_scroll_index` usage in the help menu to better reflect its name of being a max index, not a max index bound.

For example, before, the index could not be equal to or more than `max_scroll_index`, but the name would have implied that it should be less than or equal to it.
2022-08-14 18:21:48 -04:00
5da7411d3c Feature: half page scrolling (#774)
* add ctrl-u/ctrl-d to process table

* add help text for ctrl-u/ctrl-d

* add ctrl-u/ctrl-d to help dialog

* store height of help menu, fix overscroll with half page down on help menu

Co-authored-by: ClementTsang <34804052+ClementTsang@users.noreply.github.com>
2022-08-14 17:47:03 -04:00
ClementTsang 56bb3657a4 clippy: fix clippy eq warning 2022-08-13 11:34:17 -04:00
Wesley MooreandGitHub 577fda96fc Implement support for FreeBSD (#766)
* WIP FreeBSD support

* Implement get_cpu_data_list for FreeBSD

* Implement disks for FreeBSD

It doesn't work though as sysinfo doesn't make the device name available.

* Use libxo to read process cpu info on FreeBSD

* Populate get_io_usage with libxo too

Actual I/O stats still aren't populated though as there's not an
easy source for them.

* Share more processes code between macos and freebsd

* Extract function for deserializing libxo output on FreeBSD

* Implement filtering of disks in FreeBSD

* Clean up memory data collection

* Update module docs
2022-07-23 20:44:29 -04:00
Clement TsangandGitHub 121632760d bug: fix total read/write units having /s (#763)
Fixes the total read/write columns in processes using the wrong unit (having /s).
2022-07-07 05:45:30 -04:00
Clement TsangandGitHub 04d1218f65 feature: add note on how to exit if running in non-terminal (#761)
Addition to #760, adds an extra message so users know how to exit in this scenario.
2022-06-29 01:15:37 -04:00
Clement TsangandGitHub baf844244d feature: add check for whether the output is to a terminal (#760)
Adds a warning if the user is calling bottom from an environment where the output is not a terminal.
2022-06-28 23:00:52 -04:00
Clement TsangandGitHub c6f5d5488a docs: re-enable lib docs for development purposes (#750)
Enables lib docs, primarily intended for dev use. Also change some existing documentation based on warnings (mainly broken/bare links).
2022-06-14 18:31:32 -04:00
Clement TsangandGitHub c1a7979be7 refactoring: Move around components and state (#746)
A small refactor to move some state/component files around in terms of file structure and code location. Should have no effect on logic.
2022-06-03 04:49:39 -04:00
Clement TsangandGitHub 8689492ae5 refactor: unify all mod.rs structure to 2018 style (#742)
This is a pretty small change, but at least _for now_, unifies all
`mod.rs` use cases to the 2018 style for consistency.

I personally don't mind going back to it on a case-by-case basis in the
future if it results in cleaner code, though.
2022-06-02 03:24:30 -04:00
Clement TsangandGitHub b986a259e1 other: make the graph legend the same color as the graph (#732)
This makes the graph legend the same color as the rest of the graph.
2022-05-17 05:42:48 -04:00
ClementTsang 01574c8afe bug: hide user column for non-unix 2022-05-16 15:08:46 -04:00
ClementTsang cc6d7b8ad7 bug: fix a variety of bugs
Bugs squashed:
- Incorrect column sizing for flex cases
- Case where the sort menu bounds were still existing despite being
  hidden
- Proc widget not actually taking into account the calculated row widths
  in some cases during data conversion.
2022-05-16 04:53:41 -04:00
ClementTsang 0831a56341 refactor: simplify partial ordering fn, clean up code 2022-05-15 21:02:33 -04:00
ClementTsang 1877ed5c88 refactor: remove redundant get_ordering fn, add tests 2022-05-15 21:02:33 -04:00
ClementTsang ba362f81c9 bug: fix issues with macos and windows during refactor 2022-05-15 21:02:33 -04:00
ClementTsang 05e9cd4d4d other: delete redundant code, run clippy and fmt 2022-05-15 21:02:33 -04:00
ClementTsang ed17264832 refactor: more work towards unifying process code
A bunch of work towards also refactoring how the process widget
gathers and converts data.
2022-05-15 21:02:33 -04:00
ClementTsang 7ee6f6a737 refactor: begin migration of process widget 2022-05-15 21:02:28 -04:00
ClementTsang 69ec526dc6 refactor: heavily simplify the old network legend 2022-05-15 05:03:42 -04:00