Files
procps/tests
Krysztal Huang e039c3e451 ps: Add command ps (#133)
* ps: Add command `ps`

* pidof: Add some basic arguments and flags

* ps: Introduce new dependencies.

Introduce `uu_pgrep` for processing processes, and introduce `prettytable-rs` for output.

* ps: Finish command infrastructure.

* pgrep: Implemented `Hash` trait for `ProcessInformation`.

* misc: Introduce `nix` crate

* pgrep: Rename `TerminalType` to `Teletype`

* ps: Use `Vec<Rc<RefCell<_>>>` for mutable data.

* misc: Fix conflict

* misc: Fix fmt

* pgrep: Revert refactoring.

* ps: Add `basic_collector`

* ps: Introduce `picker` mod to do data picking.

* ps: Implemented user defined data picking

* ps: Collect and apply header mapping and use `Vec` instead of `LinkedList`

* ps: Add license header

* ps: Apply suggestions

* ps: Implemented logic of `-o`

* ps: Implement basic function.

* ps: Remove empty line of output

* ps: Implemented nullable format parser.

And also introduce `thiserror` crate.

* ps: Implemented `-o` (`--format`)

* ps: Add license header for `parser.rs`

* misc: Apply modifications from upstream

* ps: Implemented code of `time`

* ps: Fix check failure

* ps: Fix build failure on Windows

* ps: Enable tests for another *NIX system.

* ps: Revert tests support for *NIX platform.

It looks like it's very difficult to implement the ps command on *NIX platforms as portable, as it's only portable if you have a proc pseudo-fs. In other words, the current design only even supports Linux.

- FreeBSD's proc pseudo-fs is not automounted.
- macOS does not have a proc fs, it use sysctl instead.

* ps: Refactor mappings to `mapping.rs`

* ps: Clean code

* misc: Bump version of `nix` crate.

* ps: Rewrite document and optimize code.

* ps: Clean TODO and add TODO

Remove TODO in `mapping.rs` and add TODO in `collector.rs`

* ps: Allow multiple occurrences of the same code.

* ps: Fix default codes' display

* ps: Use `Result` instead of `Option` in `parser.rs`

* ps: Remove duplicate elements of `proc_infos`

* ps: Implemented sorting

But only implemented the basic usage: sorting by pid.

* ps: Rename functions in `sorting.rs`

- Rename `sorting` to `sort`
- Rename `default_sort` to `sort_by_pid`

---------

Co-authored-by: Sylvestre Ledru <sylvestre@debian.org>
2024-08-07 10:04:00 +02:00
..
2024-08-07 10:04:00 +02:00
2024-08-07 10:04:00 +02:00