Commit Graph

919 Commits

Author SHA1 Message Date
Clement Tsang 32f64f4d52 bug: fix occasionally wrong run time reported by sysinfo (#1542)
* bug: fix occasionally wrong runtime reported by sysinfo

Seems like on other platforms, sysinfo will sometimes report a run time
that starts from UNIX epoch - this gives a non-sensical value of 19000+
days, and it at least looks a little more reasonable to just return 0 in
this case. I guess we can also make it return N/A in the future but this
is a quick fix for now.

* update changelog
2024-08-05 20:15:22 -04:00
Clement Tsang feb0c6912c bug: fix default_cpu_entry arg not being used and missing from docs (#1543) 2024-08-05 18:55:05 -04:00
Clement Tsang 9f7e00497d bug: fix not updating sysinfo processes correctly (#1541)
* bug: fix not updating sysinfo processes correctly

* also fix a potential panic spot on slow computers

* update changelog
2024-08-05 18:38:36 -04:00
Zeb Piasecki d6c2ef3e22 feat: add option to move avg CPU to another row (#1487)
Adds an `average_cpu_row` option to move the average CPU usage to its own row
when using basic mode.
2024-08-03 01:10:36 -04:00
Clement Tsang 5b68b6ee81 other: add test to catch issues with incorrect long arg names (#1528) 2024-08-01 15:45:24 +00:00
Clement Tsang 03e69b3be0 bug: fix using clap macro incorrectly, causing broken long help name (#1526)
Basically, I did:

```
long = "blah blah blah"
```

but it should have been:

```
long,
long_help = "blah blah blah"
```

The former makes the _long help flag_ the description which... well,
isn't right.
2024-08-01 15:21:09 +00:00
Clement Tsang 8afae3fbe8 uptick: 0.10.0 (#1510)
* uptick: 0.10.0

* docs: fix changelog

* bump lockfile

* match clap

* add/update schema

* add note
2024-08-01 02:45:57 -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 2c0fb2a723 other: clarify config file creation logic/code (#1518) 2024-07-31 05:33:32 +00:00
CosmicHorror 8f995f80e4 other: Add the config path to the error message if unable to create config (#1515) 2024-07-31 00:36:12 -04:00
Clement Tsang 4b14ccb56b feature: support italic text styling (#1514)
Support italics as a text styling option.
2024-07-31 01:54:26 +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 08a7b8b860 feature: support bold text (#1512)
* feature: support bold text

* add changelog

* more testing
2024-07-30 07:43:57 +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 e4eb69dbd5 deps: bump deps as of 2024-07-027 (#1507)
* deps: bump root deps as of 2024-07-027

* bump lockfile
2024-07-27 01:39:22 -04:00
Clement Tsang 1208c459e4 refactor: remove time as a dependency outside of logging (#1506)
I was mostly just using the time crate for local log debugging and just to avoid converting seconds to h/m/s.

This PR makes it so we are only using it for local log debugging.
2024-07-26 05:12:29 +00:00
Clement Tsang a794cc5123 refactor: run clippy after updating to Rust 1.80 (#1502) 2024-07-26 00:44:38 +00:00
Clement Tsang 29029b86fb refactor: remove BottomError (#1498)
* refactor: remove BottomError

* remove thiserror

* some cleanup

* forgot to remove this
2024-07-22 07:30:03 +00:00
Clement Tsang 0401f527e5 refactor: migrate data collection and some others away from BottomError (#1497) 2024-07-22 04:52:38 +00:00
Clement Tsang c56e28328e refactor: convert more errors over (#1496)
* refactor: remove From<String> for BottomError

* fix kill_process
2024-07-19 23:52:13 -04:00
Clement Tsang 1ec4ca3f06 refactor: out with arg/config error, and make user messages more consistent (#1494)
* refactor: out with arg/config error, and make user messages more consistent

* finish up

* fix all the tests
2024-07-19 06:51:50 +00:00
Clement Tsang d97d75f797 refactor: clean up conversion and crossterm errors (#1493)
* refactor: clean up conversion errors

* refactor: remove crossterm error
2024-07-14 08:01:44 +00:00
Clement Tsang 571a801bf8 refactor: error refactoring, part 1 (#1492)
* refactor: use anyhow for logging

* refactor: clean up query errors

* also remove tryparseint
2024-07-13 05:35:09 +00:00
Clement Tsang 28416ddb57 deps: bump root + lock deps as of 2024-06-27 (#1488)
* deps: bump root deps as of 2024-06-27

* deps: bump lock as well

* also bump unicode_ellipsis
2024-06-27 23:40:05 -04: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 7666a09162 feat: add way to automatically generate new json schemas (#1482) 2024-06-16 19:28:24 -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 8885910442 refactor: remove lib and move some things around (#1477)
A loooooong time ago (wow, it's been 4 years apparently...), I made the brilliant (/s) decision to use both lib.rs and main.rs because I was trying to add tests in the tests folder that needed private access to some functions in the src - and at the time, the only way I could think of doing so was exposing bottom as a library and a binary.

This isn't necessarily bad, but for my use case, it's pretty unnecessary nowadays (since I've moved all my tests back into the source files) and adds complexity in looking for certain things, so it's high time we move things around and remove lib.rs. I also took the time to clean up some weird code I spotted along the way.
2024-06-05 06:00:21 +00:00
Clement Tsang 7aa379aabf bug: fix -V not working and causing Cirrus CI to fail (#1478)
* bug: fix -V not working and causing Cirrus CI to fail

* add comment

* update workflows and fix tests
2024-06-05 01:12:00 -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 073ca890f7 refactor: extract unicode-ellipsis into its own crate (#1465)
* refactor: extract unicode-ellipsis into its own crate

* 0.1.4
2024-05-07 22:53:51 -04:00
Clement Tsang 398bf5930f refactor: some string-related code cleanup/refactor (#1463)
* other: organize some utility function files

* deps: remove kstring

* refactor: some naming changes

* refactor: some more small refactoring/naming changes

* simplify to_cell to return a Cow

* enable lints
2024-05-07 02:03:30 -04:00
Raphael Erik Hviding 3ded6a6529 bug: fix battery table when hiding gaps (#1458)
This changes the behavior of the battery widget when paired with the skip_table_gap.
2024-05-05 18:11:02 +00:00
Clement Tsang 2b819a3097 other: comment out some dead code (#1456) 2024-05-02 15:19:44 -04:00
Clement Tsang 6591b750f6 deps: bump deps as of 2024-04-28 (#1450)
* deps: bump deps as of 2024-04-28

* fix tests

* extra test
2024-04-28 15:27:33 -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
Lee Wonjoon a083ec00dd feature: Add option to set a position of legend (#1430)
* Add option to set a position of legend

* some small changes

---------

Co-authored-by: ClementTsang <34804052+ClementTsang@users.noreply.github.com>
2024-04-02 01:06:01 -04:00
Clement Tsang 2ee0df1502 change: use sysinfo's swap value for Windows (#1436)
* some consts

* change: use sysinfo's swap calculation for windows

I'll add an additional field for committed in a separate PR which shows
the previous value.
2024-03-27 22:24:14 -04:00
Clement Tsang cd1715cd8f other: add process uptime as a default column (#1411)
* other: add process uptime as a default column

* update docs
2024-02-15 03:27:19 -05:00
Clement Tsang 3ee883420a bug: fix uptime calculation for Linux (#1410)
* bug: fix uptime for linux

Use another calculation to determine the uptime of a process on
Linux.

* appease clippy

* changelog

* edit add
2024-02-15 03:01:45 -05:00
Clement Tsang b6660610d0 deps: bump ratatui to 0.26 (#1406)
* deps: bump ratatui to 0.26

* adjust process width

* a few nonzero optimizations

* add a todo

* update comments to be less confusing about time chart
2024-02-03 19:59:12 -05:00
Clement Tsang 5cf17f6015 other: flatten process config struct and clean up help text (#1395)
* refactor: flatten process config field

* other: clean up some doc formatting using indoc and breaklines

* fix broken test

* remove default as that breaks things for now

* add test

* more tests
2024-01-21 05:47:13 -05:00
Clement Tsang 975e3d776b refactor: move some files around in prep for a future options refactor (#1393)
* some formatting

* refactor: move some files around in prep for a bigger config/options refactor
2024-01-18 18:46:00 -05:00
Clement Tsang be4fa27b84 refactor: convert layout creation tests back to being unit tests (#1392) 2024-01-16 23:47:05 -05:00
Clement Tsang f07994ef68 deps: bump sysinfo to =0.30.5 (#1390)
* deps: bump sysinfo to =0.30.5

* fix an import

* fix stuff for linux

* fix temps

* some fmt

* disks

* oops

* fix some bugs
2024-01-15 20:43:14 -05:00
Clement Tsang f760ce1080 deps: bump non-root dependencies as of 2024-01-15 (#1387)
* deps: bump non-root dependencies as of 2024-01-15

* also test 1.70 unofficial msrv
2024-01-15 05:06:24 -05:00
Clement Tsang dd66ae774c refactor: simplify some config -> constraints code (#1383)
* refactor: simplify some config -> constraints code

* iteratively progress...

* update bcr; this might need testing since I removed some old proc code

* widget side

* fix battery

* fix widget tests with bandaid for now

The issue was that the calculations assume a certain ratio for CPU
legends.

* add some tests

* bump up

* fix proc drawing issues

So with the proc widget in certain places, there would be a panic during
constraint determination.

Looks like back when I wrote this I made some gross assumptions about
certain things. In particular, the problem here was that the search
added an additional "one" height, so that needs to be accounted for
after we removed the "doubling" code.

* tests

* fix tests

* reorganize tests

* clippy

* fix cross tests not working

* fix builds for android
2024-01-15 04:19:18 -05: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 bc2c363a49 refactor: clean up arg code more (#1377)
* fix sort function

* Try macros

* Revert "Try macros"

This reverts commit 93c7306f8a.

* use next_help_heading instead

* test

* Revert "test"

This reverts commit 017a1702b3.

* Reapply "test"

This reverts commit 23c09d3828.

* use foldl instead :)

* a word

* different conditionals

* update docs, change ordering

* more formatting stuff
2024-01-11 00:25:53 -05:00