Commit graph

190 commits

Author SHA1 Message Date
Clement Tsang
c7626057c9
uptick: 0.6.4 (#576) 2021-09-12 14:02:11 -04:00
Clement Tsang
aabbc4fd95
bug: fix crashes for kernel patch versions > 255 (#575)
Solved by updating procfs to 0.10.1. Thanks to hasali19 for finding and looking into this!
2021-09-12 13:48:01 -04:00
Clement Tsang
ed07fbe1cc
other: Make the battery dependency/features optional (#570)
Allows disabling of the battery dependency through a feature flag. This also aims to disable all related features.
2021-08-19 22:16:44 -04:00
Clement Tsang
2736dc9b35
refactor: switch to manual implementation of meminfo parse (#548)
Manually parse `/proc/meminfo` for the purposes of memory usage.
2021-07-17 22:27:40 -04:00
ClementTsang
70242bc2b2 refactor: remove beef dependency for now
This is just a temp change, I wanted to remove it just for clarity's
sake among dependencies, and will probably add it back in the future.

For now I'll just stick to std's beef.
2021-07-12 22:31:57 -04:00
ClementTsang
330a9e8abd other: Remove '-nightly- from nightly version 2021-06-29 08:19:36 -04:00
ClementTsang
8a8360726b docs + other: Mention Ubuntu in install, bump to 0.6.3-nightly 2021-06-27 20:12:09 -04:00
ClementTsang
0bbee6743f other: Add 'nightly' to version to Cargo.toml 2021-06-27 19:52:48 -04:00
Clement Tsang
985959ec1c
uptick: 0.6.2 (#526) 2021-06-26 14:03:16 -04:00
Clement Tsang
4569532fb1
deps: update sysinfo to 0.18.2 (#524) 2021-06-26 02:14:44 -04:00
Clement Tsang
63f9ed6199
deps: Switch back from dirs-next to dirs (#492)
Since it's supported again, seems like a good time to switch back to
dirs.
2021-06-06 18:58:53 -04:00
Clement Tsang
6847f2ff0c
refactor: split up data collection by OS (#482)
Refactor to split up data collection by OS and/or the backing library. The goal is to make it easier to work with and add new OS support, as opposed to how it was prior where we stored OS-independent implementations all in the same file.
2021-05-15 21:57:02 -04:00
Clement Tsang
ee6228c2b6
refactor: switch to procfs library (#479)
Switch the Linux proc parts to the procfs library: https://crates.io/crates/procfs.
2021-05-13 23:41:43 -04:00
Clement Tsang
b1b1e94e6b
uptick: 0.6.1 (#475) 2021-05-11 19:03:15 -04:00
Clement Tsang
244a17cbef
uptick: 0.6.0 (#471)
Update versions to 0.6.0.
2021-05-09 17:51:05 -04:00
Clement Tsang
574c2c1df7
change: switch from sysinfo to heim for cpu usage in macOS and Windows (#467)
Due to #404, I've just moved all CPU usage calculations over to heim.
2021-05-09 01:39:42 -04:00
Clement Tsang
e367a37b1a
deps: Update dependencies 2021-05-08 (#466)
Did not update crossterm (and tui-rs) since it seems to have resulted in a massive CPU usage increase. Also fix minor clippy error with a duplicated to_string call.
2021-05-08 19:55:01 -04:00
Clement Tsang
e63a0b4082
refactor: Unify disk conversion to string step (#446)
Refactor to unify the process disk usage -> string into one function.
2021-04-07 20:52:29 -04:00
Clement Tsang
5bd9e4f6ae
feature: Collapsing in tree mode sums usage to parent (#445)
For the process widget, we now sum the resource usage of the child processes on the parent entry when collapsing in tree mode.

Note that if you search to filter, and collapse, it will not sum the pruned values (values that cannot be seen).  This is partly because I'm a bit lazy, and partly because I think this behaviour makes sense.

For example, let's say I search for a process with 4 child processes "AA, AB, BA, BB", with CPU usage 0.1, 0.2, 0.3, 0.4 respectively.  Assume the parent process has 0 usage.

- Without filter, it sums to 1.0
- With a filter on A, it would sum to just 0.3
- With a filter on AA, it would sum to 0.1

I think this is fine because I'm treating this as summing any child that is still *visible* somehow.  Summing unseen values would probably be weird as it would look like it's not adding up.

Further note that if you had, say, a child "CC" with a usage of, say, 2.0, and its parent of "AB", and you searched for CC in our above example, you would get a sum of 2.2.  This is because AB is still visible by the fact that CC was the searched process, and AB must still exist (albeit faded out) in the tree hierarchy, and as such will still be displayed.
2021-04-05 01:19:17 -04:00
Clement Tsang
405ce64a02
refactor: Switch from fnv to fxhash (#444)
Switches to fxhash from fnv, which should be a bit faster.
2021-04-04 20:48:19 -04:00
Clement Tsang
eb6a737d34
feature: Rework network y-axis, linear interpolation for off-screen data (#437)
Rewrite of the y-axis labeling and scaling for the network widget, along with more customization. This still has one step to be optimized (cache results so we don't have to recalculate the legend each time), but will be done in another PR for sake of this one being too large already.

Furthermore, this change adds linear interpolation at the 0 point in the case a data point shoots too far back - this seems to have lead to ugly gaps to the left of graphs in some cases, because the left hand limit was not big enough for the data point. We address this by grabbing values just outside the time range and linearly interpolating at the leftmost limit. This affects all graph widgets (CPU, mem, network).

This can be optimized, and will hopefully be prior to release in a separate change.
2021-04-04 05:38:57 -04:00
Clement Tsang
53d8bdae32
feature: User info in proc widget for Unix-based systems (#425)
Adds users into the process widget (for Unix-based systems).  This shows only in non-grouped modes, similar to state.  Search is also supported.

In addition, a quick fix to prevent users from being in grouped mode when they tried to enter tree mode while grouped.
2021-02-28 17:40:55 -05:00
Clement Tsang
cb1191ff35
deps: Update various deps as per 2021-02-19 (#420)
Major update is tui-rs from 0.13 to 0.14.  This change allows us to update our tables to make them look nicer!
2021-02-19 17:57:39 -05:00
Clement Tsang
f2e6b9232d
deps: Update beef as per RUSTSEC-2020-0122 (#402) 2021-02-03 15:07:13 -05:00
Clement Tsang
58e18da0c3
uptick: 0.5.7 (#399) 2021-01-30 20:23:18 -05:00
Clement Tsang
e30518bf62
bug: Fix missing sorting arrow when for non-% mem (#389)
Fixes a bug where you could make the sorting arrow disappear in the mem column if you did:

1. Go to proc widget
2. Switch to memory values from %
3. Press `m`
2021-01-12 21:41:59 -05:00
Clement Tsang
837c382ee9
refactor: Cut out sysinfo from Linux builds (#368)
Refactors to use only heim for Linux builds. This is now much easier to do since the 0.1 version of heim works fine for ARM. This is ideal since having to rely on two separate sources of data isn't the greatest if we can avoid it.

Sysinfo is still required for macOS and Windows, though. Temperature sensors do not work for those from heim, and for some reason, networks also don't work on Windows with heim...?

My personal CPU core calculation is also currently Linux-only, and as such, I'll still rely on sysinfo for Windows and macOS for now.

This isn't really a big optimization or anything btw. Just something I wanted to try.
2020-12-21 20:24:27 -05:00
Clement Tsang
82b39e361d
other: Turn off debug and turn on LTO in release profile again (#367) 2020-12-18 00:40:55 -05:00
Clement Tsang
bfdaa09e3a
uptick: 0.5.6 (#362) 2020-12-17 18:42:08 -05:00
Clement Tsang
682f6493d1
refactor: re-use heim for ARM targets if possible (#360)
Use heim on ARM targets again where appropriate.
2020-12-17 17:57:38 -05:00
Clement Tsang
4471ecc161
deps: Update various dependencies (#358) 2020-12-16 00:41:54 -05:00
Clement Tsang
49cfc75aca
deps: Update to heim 0.1 (#354) 2020-12-15 21:34:45 -05:00
Clement Tsang
7272786e86
uptick: 0.5.5 (#356) 2020-12-15 00:05:18 -05:00
Clement Tsang
5d7697d3da
refactor: More minor optimization changes (#353)
- Move data rather than cloning during data transferring step
- Try using beef?
2020-12-12 21:06:46 -05:00
Clement Tsang
766fe25c55
refactor: Use feature flags to avoid building with fern and log (#351) 2020-12-11 20:39:32 -05:00
Clement Tsang
8c4ad90e67
refactor: Another small optimization pass (#350)
Making some small changes that would hopefully improve performance a bit.

- Remove redundant string generations for CPU data conversion
- Switch to fnv for PID hashmap and hashsets
- Use buffered reading to avoid having to store too many lines as strings
2020-12-11 19:54:02 -05:00
Clement Tsang
74f4b386d7
uptick: 0.5.4 (#348) 2020-12-10 22:57:54 -05:00
Clement Tsang
fd003f84da
bug: Fix some performance regressions (#344)
Fixes some performance regressions and forgotten cleanup.

Changes to attempt to improve performance to match 0.4.x:

- Remove `trace!` and `--debug` for now.  These were a significant hog.  Removing this dropped initial memory usage by about half.
- Add additional cleaning step for `pid_mapping`  during process harvesting.  This should hopefully improve memory usage as time goes on.
- Slightly change how we do sorting to hopefully be a bit more optimal?  This was just an easy change to make that I spotted.
- Fix broken cleaning child thread task.
2020-12-10 22:29:25 -05:00
Clement Tsang
e56367fcbb
refactor: Clean up some parts of data harvesting (#336) 2020-12-03 23:45:54 -05:00
Clement Tsang
86169871cb
refactor: Simplify data harvesting (#335)
Refactors the data harvesting system function names.
2020-11-30 19:40:17 -05:00
Clement Tsang
867b8d43e9
deps: update dependencies (#334) 2020-11-28 18:29:23 -05:00
ClementTsang
7131a05e62 uptick: 0.5.3 2020-11-26 19:36:01 -05:00
ClementTsang
781691d3c9 uptick: 0.5.2 2020-11-25 20:39:37 -05:00
Clement Tsang
6aa0dd64a6
other: Switch to once_cell (#324)
Switch from lazy_static to once_cell.
2020-11-22 16:44:40 -05:00
ClementTsang
2d127f198e ci: uptick to 0.5.1, fix ci 2020-11-22 02:33:48 -05:00
ClementTsang
1cb580b91f docs: Update README and changelog for 0.5.0 2020-11-20 14:47:55 -05:00
Clement Tsang
e43456207b
feature: default colour schemes (#296)
Adds some default colour choices to choose from.
2020-11-15 05:16:47 -05:00
Clement Tsang
d0254dfb08
deps: update anyhow, crossterm, futures, regex, thiserror, toml (#293)
Updates dependencies to their most recent versions as of Nov 02, 2020.
2020-11-02 23:52:45 -05:00
Clement Tsang
271592936b
deps: Bump dependencies that require uom <0.29.0 (#274)
Updates dependencies that depend on uom (battery and heim), due to requiring 0.30 for the newest nightly version of Rust.
2020-11-02 15:04:54 -05:00
Clement Tsang
309ebd8dc3
deps: switch from dirs to dirs-next (#285)
Addresses RUSTSEC-2020-0053.
2020-11-01 22:03:29 -05:00