1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2026-01-14 09:11:02 +00:00
Commit graph

7991 commits

Author SHA1 Message Date
Sylvestre Ledru
efb09204a2
Merge pull request #7748 from cakebaker/clippy_move_lints_from_ci_to_cargo_toml
Move clippy lints from CI to `Cargo.toml`
2025-04-13 18:51:53 +02:00
Daniel Hofstetter
26e0585775 df: fix warnings from default_trait_access lint 2025-04-13 17:44:29 +02:00
Daniel Hofstetter
64140b8ec9 head: allow cognitive_complexity in test 2025-04-13 17:35:05 +02:00
Sylvestre Ledru
4c796caba5
Merge pull request #7721 from Qelxiros/7166-head-maxint
head: fix overflow errors
2025-04-13 16:37:13 +02:00
Daniel Hofstetter
80b6a2155c
Merge pull request #7635 from sylvestre/temp-selinux-impl
mkdir: add the selinux support
2025-04-13 14:49:52 +02:00
Sylvestre Ledru
291473e3a4
Merge pull request #7744 from BenWiederhake/dev-clippy-0-1-87-nightly
Apply suggestions from clippy 0.1.87+nightly
2025-04-13 12:11:50 +02:00
Tom Schuster
8f9763fa52 Fix the implementation of Display and TryFrom<&str> for Teletype
Fixes #7732 and fixes #7733
2025-04-13 10:46:22 +02:00
Yuri Astrakhan
e5ffb5e902 chore: remove trailing commas 2025-04-13 00:31:02 -04:00
Ben Wiederhake
875770f5d1 apply simple clippy nightly suggestions
See also:
https://rust-lang.github.io/rust-clippy/master/index.html#manual_contains
https://rust-lang.github.io/rust-clippy/master/index.html#mem_replace_option_with_some
https://rust-lang.github.io/rust-clippy/master/index.html#ptr_eq
2025-04-13 04:35:38 +02:00
Ben Wiederhake
fc3f7eaa48 replace let_return as suggested by clippy
See also:
https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return
2025-04-13 04:35:38 +02:00
Ben Wiederhake
11cd0b1bbf replace Error::new(ErrorKind::Other, _) as suggested by clippy
See also:
https://rust-lang.github.io/rust-clippy/master/index.html#io_other_error
2025-04-13 04:35:38 +02:00
Jeremy Smart
37eee0e1e6 head: saturate to max int size on 32 bit platforms 2025-04-12 23:38:32 +02:00
Jeremy Smart
cc1112660a head: return to parse::<usize> and switch to parse_size_u64_max 2025-04-12 23:38:32 +02:00
Jeremy Smart
1ffaf2d629 head: update 32-bit tests 2025-04-12 23:38:32 +02:00
Jeremy Smart
d466b6702b head: fix overflow errors 2025-04-12 23:38:32 +02:00
Sylvestre Ledru
e4c7bd0641
Merge pull request #7724 from nyurik/ref-option
chore: fix `ref_option` lint
2025-04-12 23:37:57 +02:00
Ben Wiederhake
a82dce0bd7 du: don't panic on block-size 0 2025-04-12 22:51:09 +02:00
Sylvestre Ledru
e1645bb9e2
Merge pull request #7730 from nyurik/unnested_or_patterns
chore: fix `clippy::unnested_or_patterns`
2025-04-12 21:44:17 +02:00
Sylvestre Ledru
b874d90345 mkdir: move to a config approach for the functions 2025-04-12 18:44:32 +02:00
Sylvestre Ledru
d41c0ceb53 uucore/selinux: add a function to verify if selinux is enabled 2025-04-12 18:44:32 +02:00
Sylvestre Ledru
842f47b372 uucore: move the selinux function 2025-04-12 18:43:02 +02:00
Joseph Jon Booker
7df22051ea printf: Ignore thousand seperator flag 2025-04-11 23:17:50 -05:00
Joseph Jon Booker
ef7a8c300e printf: add error handling to escaped unicode characters 2025-04-11 23:17:50 -05:00
Yuri Astrakhan
3b2d3716df chore: fix clippy::unnested_or_patterns
Used this command:

```shell
cargo clippy --fix --workspace --all-targets -- -A clippy::all -W clippy::unnested_or_patterns
cargo fmt --all
```
2025-04-11 18:00:07 -04:00
Yuri Astrakhan
ac5a913996 chore: fix ref_option lint
Resolve [ref_option](https://rust-lang.github.io/rust-clippy/master/index.html#ref_option) lint.  Also, I optimized `is_first_filename_timestamp` a bit to make it faster and more streamlined.

p.s. disclaimer: I'm the author of that lint
2025-04-11 12:12:54 -04:00
Daniel Hofstetter
da61ebf1f6
Merge pull request #7722 from nyurik/fmt-fix
chore: minor fmt match cleanup
2025-04-11 10:20:30 +02:00
Sylvestre Ledru
7e3b8f14d2
Merge pull request #7723 from cakebaker/cargo_toml_use_authors_workspace
Cargo.toml: use `authors.workspace = true`
2025-04-11 03:55:52 -04:00
Sylvestre Ledru
b13ce98484
Merge pull request #7699 from nyurik/returns
chore: simplify `return` in multi-branch
2025-04-11 03:53:10 -04:00
Yuri Astrakhan
b09cd32534 chore: clean up a few code paths
* `cp`: in `copy_dir.rs`, remove duplicate copy_file() calls and streamline error handling
* `install`: simplify `preserve_timestamp`
* `tee` - simplify error handling
2025-04-11 02:02:32 -04:00
Daniel Hofstetter
b366b68505 libstdbuf/Cargo.toml: move package entries 2025-04-11 07:15:55 +02:00
Daniel Hofstetter
83221201cc Cargo.toml: use "authors.workspace = true" 2025-04-11 06:59:11 +02:00
Yuri Astrakhan
74d79589f4 chore: minor fmt match cleanup
Fix an overly complex case when w is 0. Note that this might have been an error - I kept the logic, but the initial implementation might have been incorrect.
2025-04-11 00:44:51 -04:00
Yuri Astrakhan
b5ed4a4acf chore: simplify return in multi-branch
It is usually easier to reason about the code if the return is used in one place rather than in every branch of the match or if statements.
2025-04-11 00:24:45 -04:00
Sylvestre Ledru
81c02b7408 mkdir: add support of -Z
Should fix: gnu/tests/mkdir/selinux.sh
tests/mkdir/restorecon.sh
2025-04-10 18:26:41 -04:00
Sylvestre Ledru
5bfbc30fba
Merge pull request #7715 from nyurik/unused_qualifications
Enable and fix `unused_qualifications` lint
2025-04-10 18:11:08 -04:00
Yuri Astrakhan
76b1b6835c rm ptr::NonNull 2025-04-10 17:13:18 -04:00
Yuri Astrakhan
9f56bf5f07 Enable and fix unused_qualifications lint
Improve code readability
2025-04-10 16:54:18 -04:00
Yuri Astrakhan
895b208391 Consolidate crate config in workspace
Make all common data like version, edition, license, ... be managed in one central workspace. This makes management much simpler
2025-04-10 16:52:01 -04:00
hz2
cd2b56ea9c
cp: fix update prompting (#7668)
* added logic to check if we are updating the file and the destination is newer, to skip copying

* corrected logic to handle cp update

* - added test case that mocks the issue described in #7660
- adjusted conditions to satisfy clippy

* typo

* Update src/uu/cp/src/cp.rs

Co-authored-by: Daniel Hofstetter <daniel.hofstetter@42dh.com>

* Update tests/by-util/test_cp.rs

Co-authored-by: Daniel Hofstetter <daniel.hofstetter@42dh.com>

---------

Co-authored-by: Daniel Hofstetter <daniel.hofstetter@42dh.com>
2025-04-10 19:00:39 +02:00
Sylvestre Ledru
45c978fae6
Merge pull request #7686 from dan-hipschman/numfmt/add-zero-terminated-option
numfmt: add --zero-terminated option
2025-04-10 07:14:35 -04:00
Sylvestre Ledru
a89fc48388
Merge pull request #7656 from eduardorittner/main
printf: make negative values wrap around with unsigned/hex format
2025-04-10 06:48:50 -04:00
Sylvestre Ledru
eca400fcf3
Merge pull request #7689 from nyurik/inline2
chore: manual inline formatting
2025-04-10 06:42:01 -04:00
Daniel Hofstetter
b5df331170 uucore: add chrono to uptime feature 2025-04-10 10:59:27 +02:00
Sylvestre Ledru
64cf3f5dae
Merge pull request #7712 from drinkcat/parse_number_large_hex-fix
uucore: num_parser: Limit precision when computing 2**exp
2025-04-10 04:29:12 -04:00
Sylvestre Ledru
bf9a8b83f8
Merge pull request #7673 from lewisboon/df-thiserror
df: migrate OptionsError to thiserror
2025-04-09 21:11:49 -04:00
Lewis Boon
59d0e50397 df: migrate OptionsError to thiserror
Closes #7536
2025-04-09 22:32:45 +01:00
Yuri Astrakhan
2d95850700 chore: manual inline formatting
Minor manual cleanup - inlined many format args.  This makes the code a bit more readable, and helps spot a few inefficiencies and possible bugs.  Note that `&foo` in a `format!` parameter results in a 6% extra performance cost, and does not get inlined by the compiler (yet).
2025-04-09 15:33:46 -04:00
Nicolas Boichat
4a13f4d14b uucore: num_parser: Limit precision when computing 2**exp
The number of digits would grow exponentially when large exponents
are passed, leading to conversion of numbers like 0x2p1000000 taking
forever to compute.

We use exponentiation by squaring to keep the precision within
reasonable bounds.

Fixes #7708.
2025-04-09 15:29:57 +02:00
MidnightRocket
32fed17969
mktemp: Prevent race condition when setting permissions for tempdir
This prevents a race conditions vulnerability in the tempdir implementation, where an attacker
potentially could modify the created temporary directory, before the restrictive permissions are
set.

The race conditions occurs in the moment between the temporary directory is created, and the proper
permissions are set.

 # The fix

This patch changes the `make_temp_dir` to create the temporary directory with the proper
permissions creation time. Rather than first create, then set permissions.
This is done by giving the permissions to the builder.
See [tempfile doc](95540ed3fc/src/lib.rs (L449-L450)).

 # Severity Low

The attack is only possible if the umask is configured to allow writes by group or other for created
file/directories.

 # Related Resources

See: https://cwe.mitre.org/data/definitions/377.html
2025-04-09 11:18:09 +02:00
Daniel Hofstetter
ed8689eaa3
Merge pull request #7700 from nyurik/parens
chore: remove unneeded parens
2025-04-09 11:03:10 +02:00