v0.13.0
Breaking changes
This release has several breaking API changes you should be aware of:
- MSRV has been changed from 1.34 to 1.48
- The
Process
struct has been changed in some important ways:- Internally, it now maintains a handle to an opened
/proc/<pid>
directory. So eachProcess
will have an open file handle, which can matter in extreme cases when you have a large number ofProcess
objects created. - Because each
Process
has a handle to its opened proc directory, there is no longer any PID reuse problems (that is, there is no risk of accidentally getting process information for a new process that has reused a PID) Process
no longer implementsClone
.Process
no longer has a public memberstats
member that gets pre-populated on construction. If you want this info, you now need to explicitly call theProcess::stat()
function
- Internally, it now maintains a handle to an opened
New features
- Revive RFC: Change Process to use directory fd by @sunfishcode in #171
- Add support for
/proc/<pid>/pagemap
by @EliaGeretto in #166 - Process: Add support for network by @arilou in #176
Internal changes
- Add build-script to provide a nicely readable error if on unsupported platform by @macisamuele in #167
- Fix a race condition in the
test_task_runsinglethread
test. by @sunfishcode in #169 - Bump MSRV to 1.42 by @eminence in #170
- Update github-actions configuration to run all the github actions up to completion by @macisamuele in #172
- Improve
CpuInfo
performances by @macisamuele in #168 - Build with cargo update -Z minimal-versions by @xfix in #173
- Update to the latest rustix version by @eminence in #174
- Clippy and rustfmt fixes by @eminence in #175
Full Changelog: v0.12.0...v0.13.0