NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #530 most downloaded on crates.io
Library to get system information such as processes, CPUs, disks, components and networks
Last release 2 months ago
09 Jul 2026
Release timing varies
gaps range from 8 days to 4 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
4 versions withdrawn
withdrawn after publishing
11 years old
268 releases · first in 2015
Linux: Improve CPU usage computation.
macOS: Fix overflow when computing CPU usage.
Linux: Fix name and CPU usage for processes tasks.
One column per quarter.
serde feature to enable serialization.Idle state in ProcessStatus.macOS: Fix overflow when computing CPU usage.
macOS: Fix process CPU usage computation
brand and name information.* Make MacAddr public.
MacAddr public.Linux: Improve compatibility with upcoming libc changes for musl targets.
libc changes for musl targets.Create SystemExt::MINIMUM_CPU_UPDATE_INTERVAL constant.
SystemExt::MINIMUM_CPU_UPDATE_INTERVAL constant.macOS: Fix free/available memory computation.
Linux: Fix consecutive process CPU usage updates.
Unix systems: Fix network address segfault issue.
Add NetworkExt::mac_address method and MacAddr type.
NetworkExt::mac_address method and MacAddr type.TryFrom<usize> and FromStr for Gid and Uid.TryFrom<usize> for Pid.System::new about CPU list not loaded by default.(backport) Linux: Improve compatibility with upcoming libc changes for musl targets.
libc changes for musl targets.Add ProcessExt::session_id method.
ProcessExt::session_id method.Apple: Greatly improve disk retrieval (I recommend reading the pull request first comment for more information here: ).
Add "Good practice" entry into the crate level documentation and in the README.
Process::wait.Windows: Fix disk information retrieval.
Process document.apple-sandbox feature is enabled.Add SystemExt::distribution_id method.
SystemExt::distribution_id method.ntapi version to 0.4.1.59 for ntapi 0.4.Update minimum supported Rust version (MSRV) to 1.56 to follow once_cell minor update.
1.56 to follow once_cell minor update.Linux: Fix process information retrieval.
macOS M1: Fix segmentation fault crash.
Switch memory unit from kilobytes to bytes.
macOS M1: Add temperature support.
Windows: Fix Process::exe information retrieval.
Process::exe information retrieval.Linux: Fix potential problem on ProcessExt::exe in case /proc/ /exe cannot be read.
ProcessExt::exe in case /proc/<pid>/exe cannot be read.SystemExt::sort_disks_by.Linux: CPU frequency is now retrieved on-demand as expected when CpuRefreshKind::frequency is true.
CpuRefreshKind::frequency is true.System::refresh_cpu behaviour changed: it only computes CPU usage and doesn't retrieve CPU frequency.Windows: Fix boot time computation.
macOS: Don't compute CPU usage when elapsed time is 0.
char cast when platform is using unsigned chars.Implement Hash trait on Uid and Gid types.
Hash trait on Uid and Gid types.once_cell for targets other than linux, android and windows.Windows: Fix System::refresh_process when required higher privileges.
System::refresh_process when required higher privileges.macOS: Fix System::refresh_processes badly handling updates.
System::refresh_processes badly handling updates.System::refresh_processes.Windows: Fix CPU usage computation.
winapi.Use saturating_* function for mathematical operations to prevent overflows/underflows.
saturating_* function for mathematical operations to prevent overflows/underflows.Rename Processor into Cpu and ProcessorExt into CpuExt.
Processor into Cpu and ProcessorExt into CpuExt.SystemExt::get_user_by_id.ProcessExt::user_id.ProcessExt::group_id.user-related methods to ProcessRefreshKind.Process by improving retrieval of user ID and group ID.Nothing published for this version
macOS/FreeBSD: Fix System::refresh_process and System::refresh_process_specifics returned value.
System::refresh_process and System::refresh_process_specifics returned value.Linux: Improve System::refresh_cpu performance.
System::refresh_cpu performance.Add FreeBSD to the "supported OS" list
Improve documentation of SystemExt::refresh_cpu.
SystemExt::refresh_cpu.* macOS: Fix disk retrieval
Windows: Fix underflow for Process run_time computation
Process run_time computationmacOS: Ignore non-root drive partitions
Windows: Fix process name retrieval
Windows: Fix a bug which prevent all disks to be listed.
Linux (raspberry): Fix physical core count.
* Impl From for Pid inner type. * Code cleanup.
From<Pid> for Pid inner type.Correctly handle MaybeUninit::assume_init.
MaybeUninit::assume_init.Add #[repr(transparent)] on Pid
Into trait on Pid#[repr(transparent)] on Pidrefresh_process and refresh_processes: only refresh_processes removes non-existing processes.Rename process_by_name into processes_by_name.
process_by_name into processes_by_name.process_by_name_exact into processes_by_name_exact.process_by_name and of process_by_name_exact into an iterator.Signal documentation.Pid type alias into a newtype.Linux: Improve documentation on how processes queries are handled.
SystemExt::process_by_exact_name method.SUPPORTED_SIGNALS constant on SystemExt.Display for Signal.Windows: Correctly handle COM initialization/deinitialization.
FreeBSD: Take ZFS ARC value into account when computing used system memory.
#[must_use].FreeBSD: Improve memory information retrieval.
* Remove forgotten debug.
Create SystemExt::refresh_processes_specifics and SystemExt::refresh_process_specifics methods.
SystemExt::refresh_processes_specifics and SystemExt::refresh_process_specifics methods.ProcessExt::kill API and add ProcessExt::kill_with.ProcessExt::run_time.Unsupported targets: Fix build.
Linux: Process CPU usage cannot go above maximum value (number of CPUs * 100) anymore.
Linux: Fix processes CPU computation (if System::refresh_cpu wasn't used).
System::refresh_cpu wasn't used).ProcessStatus enum unique for all platforms.Linux: Prevented overflow in disk size computation (bug in davfs2).
davfs2).Update libc version, allowing to remove a lot of FFI bindings.
Your coding agent can read these notes before it upgrades. Set up the MCP server →