Commit Graph

231 Commits

Author SHA1 Message Date
Clement Tsang 6b62176554 refactor: rearrange/resort args (#1376)
* clean up Cargo.toml

* some small cleanup

* refactor: group together similar args in the help generation and code

This groups together related arguments in both the help text and the
code itself.

* update changelog

* clippy

* builder pattern instead
2024-01-10 19:07:22 -05:00
Clement Tsang a67da93c5f other: if in a non-D0 state, short-circuit further logic (#1355)
* other: if in a non-D0 state, short-circuit further logic

* cleanup

* add back an empty name and value

* fix for macos/windows

* some testing things
2023-12-20 01:36:08 -05:00
Clement Tsang 004c83728d docs: update changelog with #1353 (#1358) 2023-12-19 22:52:29 -05:00
Clement Tsang 074b205a82 other: change group -> group_processes for consistency between config and command-line args (#1344)
* other: change group -> group_processes to match config file name

* update docs

* update changelog
2023-12-01 02:46:22 -05:00
Clement Tsang 9d0bfbbf93 docs: update changelog ordering and some wording (#1328) 2023-11-21 00:25:25 -05:00
Clement Tsang 36bf5afeb1 change changelog heading levels (#1327) 2023-11-20 23:15:14 -05:00
Yuri Astrakhan a6200640b9 chore: run spell and grammar checkers
* Chore: Run an spell cheker, and gramar cheker

* small revert

---------

Co-authored-by: Clement Tsang <34804052+ClementTsang@users.noreply.github.com>
2023-11-15 03:03:48 -05:00
Clement Tsang 11676bb6c1 deps: pin serde to 1.0.188 (#1286)
* deps: pin serde to 1.0.188

* changelog
2023-08-26 21:02:22 -04:00
Clement Tsang 3e00e65483 docs: update changelog dates 2023-08-26 11:47:26 -04:00
Clement Tsang 713b1874b7 uptick: 0.9.5 (#1280) 2023-08-24 19:25:26 -04:00
Clement Tsang 619e9d9c1b deps: bump deps as of 2023-08-08 (#1272) 2023-08-09 01:27:56 -04:00
Clement Tsang 07b7caa5fa uptick: 0.9.4 (#1270)
* uptick: 0.9.4

* update date
2023-08-05 17:51:24 -04:00
Clement Tsang a736d856ce docs: update changelog with ARC max usage fix (#1267) 2023-07-27 04:05:19 -04:00
Clement Tsang 0b0f004001 docs: update changelog to include full width battery change (#1258) 2023-07-19 20:19:44 -04:00
Clement Tsang f7ff2fc180 other: update changelog with ZFS I/O counters (#1252) 2023-07-10 00:36:11 -04:00
Clement Tsang a10b91239b bug: missing windows syscall to close the handle on drop when killing (#1245)
* bug: missing windows syscall to close the handle on drop when killing

* changelog

* fix
2023-07-05 01:40:12 -04:00
Clement Tsang df3088e80e other: hide battery tab selector if there is only one battery (#1236)
* other: hide battery tab selector if there is only one battery

* update changelog
2023-07-02 00:38:40 -04:00
Clement Tsang aa191a981d bug: fix core dump if the terminal is closed while bottom is open (#1230)
* bug: fix core dump if the terminal is closed

The cause was:

- bottom thinks it's panicking if the terminal is closed.
- The panic hook tried to print out to the terminal - but the terminal
  was closed! It would unwrap and thus panic even harder.
- To solve this, we just make the panic hook calls not unwrap, since
  honestly if they fail it's whatever as far as I understand it.

* update changelog
2023-06-27 01:57:32 -04:00
Clement Tsang 590b15a510 other: update changelog with rpm 2023-06-25 15:40:25 -04:00
Clement Tsang 3ec66b876d other: fix changelog typo 2023-06-25 15:39:46 -04:00
Clement Tsang a3ae8e08a2 uptick: 0.9.3 (#1223)
* uptick: 0.9.3

* Update CHANGELOG.md
2023-06-25 00:31:57 -04:00
Clement Tsang cc3833289f feature: support human times for rate (#1221) 2023-06-23 03:42:16 -04:00
Clement Tsang 6f1a8f7e5b bug: fix overflow/underflow with graph timespan zoom (#1219)
* bug: fix overflow/underflow with graph timespan zoom

Basically, you could overflow/underflow the time span which would skip
checks.

* changelog
2023-06-21 00:03:48 -04:00
Clement Tsang 594e091a93 bug: fix arguments being unsorted (#1216)
clap v4 apparently changed it so arguments are not sorted by default
like before - this manually sorts the arguments beforehand to achieve
the same effect.
2023-06-19 01:37:22 -04:00
Clement Tsang 531e26ea45 other: post-0.9.2 cleanup (#1203)
* other: some cleanup

* other: add conditional logging macros

* more cleanup

* use compile-time feature for some text in clap
2023-06-12 01:01:07 -04:00
Clement Tsang 93b6a5649f uptick: 0.9.2 (#1202) 2023-06-11 18:22:42 -04:00
Clement Tsang 9560722318 feature: on Linux, check coretemp and don't fail fast with name generation when gathering temps (#1188)
* feature: also check coretemp on Linux when gathering temps

* update changelog

* add comment

* add logic to check thermal zone if there are no hwmon entries

* cleanup

* handle duplicates between hwmon and thermal zone

* Revert "handle duplicates between hwmon and thermal zone"

This reverts commit 402606cc62f27ba196ef2ade6a669ae84aedf0e0.

* cleanup

* back to running thermal zone if no hwmon

* prevent failure cases

* temp logging

* name refactoring

* port dupe name logic to hwmon

* Cleanup, add fallback to sensor name

* more tests

* Fix log

* update changelog

* cleanup and more tests
2023-06-11 18:12:15 -04:00
Clement Tsang 2a354f772f other: remaining changes needed to get android to build (#1199)
* other: remaining changes needed to get android to build

* update changelog

* simplify disk os-specific code
2023-06-11 01:35:16 -04:00
Clement Tsang e4eaeb1c17 deps: bump battery to 0.8.1 to fix M1 health bug (#1195)
* deps: bump battery to 0.8.1 to fix M1 health bug

* update changelog
2023-06-09 00:47:42 -04:00
Clement Tsang f0249c61c3 docs: update changelog to include #1191 (#1192) 2023-06-08 19:49:30 -04:00
Clement Tsang 086b622c66 feature: use better names for duplicate temp sensors found by /sys/class/thermal (#1187)
* docs: update changelog

* feature: add a counter to duplicate names if using /sys/class/thermal/

* update changelog
2023-06-08 00:05:30 -04:00
Clement Tsang eccaf11937 feature: support human times for default_time_value and time_delta (#1172)
* feature: support human times for time interval and default range

* add tests, fix not using ms

* appease clippy

* changelog
2023-05-26 00:42:40 -04:00
Clement Tsang d019181b2d uptick: 0.9.1 (#1153) 2023-05-14 00:13:12 -04:00
Clement Tsang bcca7e2621 bug: fix gruvbox cache colour being invalid (#1148)
* bug: fix gruvbox cache colour being invalid

* update changelog
2023-05-12 04:39:07 -04:00
Clement Tsang 8777143801 uptick: 0.9.0 (#1143)
* uptick: 0.9.0

* years are hard

* update changelog
2023-05-10 03:17:25 -04:00
Yuxuan Shui 80183b8b1c feature: show running time of processes (#801)
* feature: show running time of processes

* fix clippy

* add time searching

* update changelog

* use safer duration for linux in case of 0

* some cleanup

* quick hack to deal with some Windows processes returning unix epoch time as start time

---------

Co-authored-by: Clement Tsang <34804052+ClementTsang@users.noreply.github.com>
2023-05-02 01:33:53 -04:00
Clement Tsang 605314d44c feature: add customizable process columns (#1115)
* feature: add customizable process columns

* Add some tests and actual logic

* more tests

* update changelog

* update config field

* even more tests

* update documentation

* more testing
2023-04-29 19:21:48 -04:00
Clement Tsang a00ab46c5e deps: bump regex to 1.8.0 (#1111) 2023-04-22 00:19:12 -04:00
Clement Tsang 3618449d42 deps: update clap to 4.x (#1107)
* deps: update clap to 4.x

* changelog

* fix test

* add gpu feature/flag test
2023-04-21 00:07:34 -04:00
Clement Tsang 1c95411494 feature: add current battery charging state, update field names (#1106) 2023-04-19 00:46:57 -04:00
Clement Tsang 20902e87b9 other: Speed up first draw and first data collection (#1100)
* other: add first draw immediately after initialization

Previously, I would only do the first draw after an event triggered, so
this just makes it so that I *always* draw once first. Some widgets look
a bit weird with no data, but this is fine I guess if we want to gain a
bit of responsiveness.

* other: potentially shorten first time to get data

* other: move event loop thread init earlier in app initialization
2023-04-15 00:15:36 -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 9edde9b133 refactor: migrate disk collection code off of heim, remove heim (#1064)
Migrates existing heim-based disk data collection code off of it to either sysinfo or vendored code based on heim/sysinfo/other sources. This also allows us to remove heim completely from bottom.

---

* refactor: fix some refresh code

* remove async from the freebsd code

* some file/implementation organization

Turns out sysinfo lacks a lot of data I need. I can still use it for the
Windows disk usage implementation, but I'm probably going to manually
implement macos/linux usage and all io usage stats.

* more restructuring

* Some other fixes

* remove futures

* ready for some big changes?

* big changes

* linux io + reads

* use lossy conversion for mount point

* add windows refresh

* so long heim, and thanks for all the fish

* fix filter behaviour, remove string allocation when reading lines

* rename unix -> system for more accurate file struct representation

* fix freebsd

* port generic unix partition code

* add bindings and fix errors

* finish macOS bindings for I/O

* disable conform check, this seems to... make disk I/O work on macOS?????

* fix linux

* add safety comments

* more comments

* update changelog

* changelog

* We're going full 0.9.0 for this

* update lock

* fix some typing

* bleh

* some file management

* hoist out get_disk_usage

* fix some stuff for Windows

* typing and remove dead code allow lint

* unify typing

* fix

* fix 2

* macOS fix

* Add bindings file for windows

* add windows implementation

* fix macos
2023-04-10 05:52:46 -04:00
Clement Tsang 994c11e3b3 refactor: migrate network collection to sysinfo (#1041)
* refactor: migrate network collection to sysinfo

* remove net feature from heim

* comments and changelog
2023-03-04 01:34:52 -05:00
Clement Tsang caba611036 docs: update changelog and some comments (#1040) 2023-03-03 01:00:33 -05:00
Clement Tsang 6d15f01009 other: support hw.temperature-based temps on FreeBSD (#1024)
* other: support hw.temperature-based temps for FreeBSD

* update changelog

* enable sysctl always for freebsd
2023-02-19 18:44:35 -05:00
Clement Tsang 2a1c4104fd other: promote macOS aarch64 to official support (#1025)
Since I have a macOS M1 laptop to test on now, I think it's a good time
to bump it to be officially supported, especially since it's going
to be the main macOS platform for the foreseeable feature.
2023-02-19 01:12:13 -05:00
Clement Tsang f89b243589 feature: support 3-char hex colours (#1022) 2023-02-18 01:55:26 -05:00
Clement Tsang edc61d428c bug: fix selected text bg colour being wrong if only the fg colour was set (#1021)
* rename file to be more generic

* fix selected text BG colour being wrong by default

* update changelog

* add test for bug
2023-02-18 00:51:13 -05:00
Clement Tsang c19f429d35 docs: update changelog and missing doc info (#1018) 2023-02-11 02:48:23 -05:00