summaryrefslogtreecommitdiffstats
path: root/CHANGELOG.md
AgeCommit message (Collapse)Author
2021-07-17bug: switch over to procfs for linux mem usage (#547)Clement Tsang
Swap to manually calculating the mem total and usage via procfs. The usage calculation is now: total - (free + cached + buffers + slab_reclaimable - shmem) This follows the same usage calculation as htop. See the PR for more details.
2021-07-15bug: fix inaccuracy in memory usage/total on macOS and Linux (#545)Clement Tsang
Fixes the accuracy of the memory widget for Linux and macOS, and uses binary prefixes instead to be more accurate. Regarding the first part, it turns out that the way I was calculating memory usage was *slightly* incorrect for a few reasons: - Regarding macOS, it seems like the way I was determining usage (`usage = total - available`) is not the most accurate. The better way of doing this is apparently `usage = wire + active`, where `wire` is memory always marked to stay in RAM, and `active` is memory currently in RAM. This seems to be much closer to other applications now. - Regarding Linux, this was somewhat due to two issues - one was that I should have used heim's own built-in function call to get how much memory was *used*, and the other is that when heim reads info from `meminfo`, it reads it in *kilobytes* - however, the values are actually in *kibibytes*. As such, to get the value in kibibytes, you want to actually take it in kilobytes. While I've filed an issue for the library, for now, I'll just manually bandaid over this. See https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/deployment_guide/s2-proc-meminfo for more info. Both changes take more advantage of platform-specific methods, and as such, the change unfortunately adds some ugly platform-specific code blocks. Side note, Windows Task Manager apparently (?) uses binary prefixes for the values behind the scenes, but displays decimal prefixes. As such, now that we've switched to binary prefixes, it'll "seem" like the two aren't matching anymore since the units won't match, despite the values matching.
2021-06-27docs + ci: Update changelog and ignore some files in CI (#527)Clement Tsang
2021-06-26uptick: 0.6.2 (#526)Clement Tsang
2021-06-26bug: Divide Windows process cpu usage by number of processors (#525)Clement Tsang
Fixes a bug displaying the CPU usage of a process in Windows due to not dividing by the number of processors.
2021-06-23docs: Switch to mike for versioning (#521)Clement Tsang
Switches to mike to add versioning to docs.
2021-06-20bug: Fix battery widget color and mouse (#504)Clement Tsang
Fixes two bugs causing the battery widget colours and mouse events to be broken.
2021-05-11uptick: 0.6.1 (#475)0.6.1Clement Tsang
2021-05-11bug: forgot to create memory usage string when collapsed (#473)Clement Tsang
Adds a line to actually build the string of the summed memory usage. I forgot to make the string after summing the values.
2021-05-09docs: fix changelog entryClementTsang
2021-05-09uptick: 0.6.0 (#471)0.6.0Clement Tsang
Update versions to 0.6.0.
2021-05-09change: switch from sysinfo to heim for cpu usage in macOS and Windows (#467)Clement Tsang
Due to #404, I've just moved all CPU usage calculations over to heim.
2021-04-23bug: Fix mouse hitboxes (#459)Clement Tsang
Fixes the mouse hitbox checks overextending by 1. Also reverts the bandaid fix done for #458.
2021-04-23bug: Fixes basic mode mouse hitboxes being broken (#458)Clement Tsang
Fixes basic mode having broken click hitboxes (they were 1 unit too long in both directions). I'm pretty sure normal mode does too, but it's less noticeable due to bounding boxes.
2021-04-22feature: Add mount filtering, rework filter priority logic (#455)Clement Tsang
This PR accomplishes two things: 1. This PR aims to add mount_filter to the config file. This allows a user to filter their disk widget entries by the mount name as well; this was particularly a problem in trying to address #431. 2. A slight rework of how the filter system works due to the need of being able to manage two potentially conflicting filter sources, since the disk widget will now potentially filter on both the disk name and the mount name. In regards to the second point, the new behaviour is as such: 1. Is the entry allowed through any filter? That is, does it match an entry in a filter where is_list_ignored is false? If so, we always keep this entry. 2. Is the entry denied through any filter? That is, does it match an entry in a filter where is_list_ignored is true? If so, we always deny this entry. 3. Anything else is allowed. This main (breaking) change is really the third point. This would mean that temp_filter and net_filter, when set to allow listed entries with is_list_ignored = false, are kinda... useless, as a whitelist in the scenario of being the only filter is kinda pointless. But hopefully this shouldn't be a problem...?
2021-04-09change: Add decimal to disk values larger than 1GB (#451)Clement Tsang
A bit of a followup to #449, this adds decimal places for values over 1GB in regards to disk usage. This affects the disk widget (for the read/write per second) and process widgets (total read, total write, read/write per second).
2021-04-09change: Tweak default light colour scheme (#450)Clement Tsang
Removes/tweaks some really light colours that might cause issues with a white background. For example, yellow on white didn't look so great, so I adjusted the memory/rx colours for this mode.
2021-04-09change: Add decimal to actual memory usage in proc (#449)Clement Tsang
This change adds a decimal + single digit to memory usage values over the 1 GiB threshold. Otherwise, there is no visible change. (Note to self: implement the per-column width system soon, this change causes some values to potentially look a bit weird in mem-non-percent mode as it is if the value is really large, like 530.2GiB pushing right up against the column width, but it's currently tied to mem-percent mode. Ugh.) Also revert a change made by accident where I switched to a decimal prefix system (GB) for memory values. This has been reverted back to a binary prefix (GiB).
2021-04-05feature: Collapsing in tree mode sums usage to parent (#445)Clement Tsang
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-04change: Make proc widget unit consistent with disk (#443)Clement Tsang
In particular, use non-binary prefixes for disk and memory usage in a process. Ideally everything is configurable by the user, but this is fine for now IMO until I can get around to doing in-app config.
2021-04-04feature: Rework network y-axis, linear interpolation for off-screen data (#437)Clement Tsang
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-02-28feature: User info in proc widget for Unix-based systems (#425)Clement Tsang
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-24bug: Fix bugs with disk widget and disk encryption (#423)Clement Tsang
Two issues were highlighted as a result of using either Void Linux with disk encryption, or just disk encryption on Linux in general: Two fixes: 1. Fixes a failed `usage()` call in the `get_disk_usage` function from failing the entire result. Now it only returns an entry with N/A results. This occurred in some distros and disk encryption setups, for example, the one for Void Linux here: https://docs.voidlinux.org/installation/guides/fde.html. 2. Fixes a potential mapping issue with disk encryption on Linux in general. Since the disk might map to `/dev/mapper/whatever`, but the I/O harvester was using another name, the mappings would not match. As such, we now also check if a symlink exists; if it does, then we take it and work out the correct path. This also fixes the disk name being wrong.
2021-02-19deps: Update various deps as per 2021-02-19 (#420)Clement Tsang
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-19change: Don't jump to top when using sort shortcuts (#418)Clement Tsang
For consistency, we now don't automatically jump to the top of the list when using a sort shortcut. This behaviour already occurred with the sort menu and sorting by mouse clicks, so this is just now more consistent (and IMO less annoying, you can also always jump to the top via gg).
2021-02-19bug: Fix sorting menu and sort shortcuts not syncing in gui (#417)Clement Tsang
Fixes sorting menus and shortcuts not syncing correctly if the sorting window is open.
2021-02-18bug: fix inconsistent spacing with grouped vs non-grouped in the process ↵Clement Tsang
widget (#416) Fixes grouped mode having different spacing than non-grouped mode.
2021-02-18feature: Add mouse support to sorting columns (#413)Clement Tsang
Adds mouse support for sorting columns within the process widget. You can now click on the column header to sort (or invert the sort).
2021-02-16feature: Add ctrl-w and ctrl-h support in the search (#409)Clement Tsang
Ctrl-w deletes one word backwards from the current cursor location. Ctrl-h is just an alias for backspace.
2021-02-15feature: add nord and nord-light colours (#406)Clement Tsang
Adds colour schemes for Nord, along with a light variant.
2021-01-31docs: Reorder some of the changelog itemsClementTsang
2021-01-30docs: Update changelog, revert formatting typo in READMEClementTsang
2021-01-25bug: Workaround for strange rendering when there are <4 CPU entries reported ↵Clement Tsang
(#398) So it seems that tui-rs doesn't like rendering my CPU bars if the height is exactly 1. It needs at least 2. I have no idea why, this is probably something weird with how I render. This, of course, breaks when there is only one row to report (i.e. with a dual core setup in #397). The workaround switches the gap between the CPU and mem/net parts to 0, and increases the CPU's draw height by 1, only when the height is otherwise 1 (so the draw height is now at least 2). This does have the side effect of including an extra line to the side borders, but I think it's fine.
2021-01-12bug: Fix missing sorting arrow when for non-% mem (#389)Clement Tsang
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-05docs: Update changelog with #386ClementTsang
2021-01-01feature: Add network interface filtering (#381)Clement Tsang
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 ```
2020-12-28feature: Add process_command to default to the process command (#379)Clement Tsang
Adds a `process_command` flag and config option to default to showing the full command in the process widget on startup.
2020-12-22docs: Update changelogClementTsang
2020-12-17uptick: 0.5.6 (#362)Clement Tsang
2020-12-17refactor: re-use heim for ARM targets if possible (#360)Clement Tsang
Use heim on ARM targets again where appropriate.
2020-12-15uptick: 0.5.5 (#356)0.5.5Clement Tsang
2020-12-11bug: Fix incorrect cpu colour matching again in all position (#349)Clement Tsang
Turns out there was yet another bug with the CPU colour allocation. I had forgotten to use the same index calculation for the "all" position.
2020-12-10uptick: 0.5.4 (#348)0.5.4Clement Tsang
2020-12-10bug: Fix some performance regressions (#344)Clement Tsang
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-10bug: Fix missing states in processes (#345)Clement Tsang
Fixes another change breaking states from showing in processes.
2020-11-28feature: Add scroll indicator to keep track of table position in widgets. (#333)Clement Tsang
Adds the option to enable an "out of" indicator for scrollable table widgets (using --show_table_scroll_position).
2020-11-26bug: Fix inverted battery colours (#331)Clement Tsang
Fixes colour theming for batteries being flipped.
2020-11-25uptick: 0.5.2ClementTsang
2020-11-22ci: uptick to 0.5.1, fix ciClementTsang
2020-11-20docs: Update README and changelog for 0.5.0ClementTsang