Commit graph

6046 commits

Author SHA1 Message Date
vulppine
4ff5fea502 cp: uumain returns UResult, UError for Error 2021-10-01 14:58:26 -07:00
Sylvestre Ledru
01d098993b
Merge pull request #2662 from Smicry/master
add kill -l final new line #2644
2021-09-29 09:58:50 +02:00
Sylvestre Ledru
df42fed3b3
Merge pull request #2693 from thomasqueirozb/expr_uresult
expr: use UResult
2021-09-26 16:14:17 +02:00
Thomas Queiroz
3882df5cdc
expr: use UResult 2021-09-25 15:36:04 -03:00
Jan Scheer
30c8a43788
test_chroot: add comments 2021-09-22 13:53:57 +02:00
Jan Scheer
8cd8c25b0d
ls: silence clippy warnings if feat_selinx is not set 2021-09-22 13:49:08 +02:00
Jan Scheer
8f229aad87
ls: move SELinux String building logic to its own function 2021-09-22 12:24:27 +02:00
Jan Scheer
8c0b7d1314
chroot: move logic so it can be triggered by tests
* move the command building logic before the `chroot` syscall so it
will be reachable by tests that don't have root permissions.
2021-09-22 11:59:43 +02:00
Sylvestre Ledru
a0f538f2e8
Merge pull request #2679 from blyxxyz/uucore-inspection
uucore: Minor cleanup
2021-09-19 22:28:16 +02:00
Sylvestre Ledru
629e446da4
Merge pull request #2691 from raftario/yanked-digest
Use non-yanked version of digest crate in hashsum
2021-09-19 22:27:41 +02:00
Jan Scheer
8db8d8ac4e
chroot: add 'test_default_shell` 2021-09-19 22:21:29 +02:00
Raphaël Thériault
6931dd11f1 Use non-yanked version of digest crate in hashsum 2021-09-19 12:38:56 -07:00
Jan Scheer
94fbe1edef
chroot: quick fix for #2687
* fixes #2687
* change error message to better mimic GNU
2021-09-19 13:58:44 +02:00
Sylvestre Ledru
8d418cd61c
Merge pull request #2672 from oeble/kill_with_signal_name
Kill with signal name
2021-09-18 22:55:27 +02:00
Sylvestre Ledru
3e8b4045c8
Merge pull request #2675 from blyxxyz/whoami-cleanup
whoami: Cleanup
2021-09-18 17:20:09 +02:00
Sylvestre Ledru
b59bbddcbf
Merge pull request #2663 from jfinkels/hashsum-std-io-copy
hashsum: use std::io::copy() to simplify digest
2021-09-18 17:19:16 +02:00
Sylvestre Ledru
81c2dc74e8
Merge pull request #2676 from jfinkels/seq-format-padding
seq: replace loops with a single format string
2021-09-18 17:18:35 +02:00
Jan Verbeek
7ea2bfbe26 seq: replace loops with a single format string
Replace two loops that print leading and trailing 0s when printing a
number in fixed-width mode with a single call to `write!()` with the
appropriate formatting parameters.
2021-09-18 10:27:03 -04:00
Jeffrey Finkelstein
bfb1327ad4 seq: use print_seq_integers() regardless of last
Ensure that the `print_seq_integers()` function is called when the first
number and the increment are integers, regardless of the type of the
last value specified.
2021-09-18 10:27:03 -04:00
Sylvestre Ledru
522d4d39e3
Merge pull request #2680 from blyxxyz/utmpx-safety
uucore::utmpx: Make thread-safe
2021-09-18 16:15:52 +02:00
Jeffrey Finkelstein
7fea771f32 hashsum: use std::io::copy() to simplify digest
Create a `DigestWriter` struct that implements `Write` by passing bytes
directly to `Digest::input()`, so that `hashsum` can use
`std::io::copy()`. Using `std::io::copy()` eliminates some boilerplate
code around reading and writing bytes. And defining `DigestWriter` makes
it easier to add a `#[cfg(windows)]` guard around the Windows-specific
replacement of "\r\n" with "\n".
2021-09-18 09:51:33 -04:00
Sylvestre Ledru
7fb1fcfac5
Merge pull request #2686 from jfinkels/hashsum-window-text-mode
hashsum: add tests for Windows text mode
2021-09-18 09:16:48 +02:00
Sylvestre Ledru
77cfafa511
Merge pull request #2613 from jfinkels/seq-width-fractional
seq: correctly compute width due to decimal places
2021-09-18 09:16:35 +02:00
Jeffrey Finkelstein
3854a97749 seq: remove unused Number::num_digits() function
Remove the `Number::num_digits()` function in favor of the
`digits::num_integral_digits()` functions.
2021-09-17 23:50:13 -04:00
Jeffrey Finkelstein
2ac5dc0a70 seq: compute correct width for scientific notation
Change the way `seq` computes the number of digits needed to print a
number so that it works for inputs given in scientific notation.
Specifically, this commit parses the input string to determine whether
it is an integer, a float in decimal notation, or a float in scientific
notation, and then computes the number of integral digits and the number
of fractional digits based on that. This also supports floating point
negative zero, expressed in both decimal and scientific notation.
2021-09-17 23:49:54 -04:00
Jeffrey Finkelstein
cd5f676903 hashsum: add tests for Windows text mode 2021-09-17 21:24:43 -04:00
Jan Scheer
79d838b1c3
Merge branch 'master' into ls_selinux 2021-09-17 14:14:47 +02:00
Sylvestre Ledru
88a689075c
Merge pull request #2682 from jfinkels/seq-simpler-terminator-check
seq: add is_first_iteration to avoid comparisons
2021-09-17 12:19:05 +02:00
Sylvestre Ledru
3e458f524c
Merge pull request #2683 from jfinkels/uucore-panic-capture-broken-pipe
uucore(panic): guard against "Broken pipe" panics
2021-09-16 22:24:15 +02:00
Sylvestre Ledru
3d867fcf7c
Merge pull request #2684 from blyxxyz/hostname-cleanup
hostname: Cleanup
2021-09-16 22:22:34 +02:00
Jan Verbeek
5bb56ec528
whoami: Restrict scope of unsafe
Co-authored-by: Jan Scheer <jhscheer@users.noreply.github.com>
2021-09-15 15:37:15 +02:00
Jan Verbeek
3f37ddbd22 hostname: Cleanup
- Attach context to I/O errors
- Make flags override each other
- Support invalid unicode as argument
- Call WsaCleanup() even on panic
- Do not use deprecated std::mem::uninitialized()
2021-09-15 13:45:02 +02:00
Sylvestre Ledru
b1317c589e
Merge pull request #2674 from sylvestre/udeps
Add a github check to verify useless dependencies
2021-09-15 12:31:05 +02:00
Sylvestre Ledru
7eaae75bfc add a github action job to identify unused deps 2021-09-15 12:06:50 +02:00
Jeffrey Finkelstein
f95ab2f43c uucore(panic): guard against "Broken pipe" panics
Add "Broken pipe" to the set of panic messages used to determine whether
a panic is caused by a broken pipe error.
2021-09-14 21:26:50 -04:00
Jeffrey Finkelstein
53a91be2df seq: add is_first_iteration to avoid comparisons
Add the `is_first_iteration` Boolean variable to the `print_seq()`
function in order to avoid unnecessary comparisons. Specifically, before
this change, the `done_printing()` function was called twice on each
iteration of the main loop. After this change, it is only called once
per iteration.

Furthermore, this change makes the `print_seq()` function similar in
structure to the `print_seq_integers()` function.

Co-authored-by: Jan Verbeek <jan.verbeek@posteo.nl>
2021-09-14 20:57:38 -04:00
Jan Verbeek
519c0d16b3 uucore::utmpx: Make thread-safe 2021-09-14 21:17:50 +02:00
Michael Debertol
5c97c1ccc4
Merge pull request #2678 from blyxxyz/io-error-detect-os
Do not discard non-OS error messages
2021-09-14 20:21:48 +02:00
Michael Debertol
1cfed70da5
Merge pull request #2673 from sylvestre/more-dep-cleanup
Restrict some crates to specific OS
2021-09-14 20:09:39 +02:00
Michael Debertol
8fec7f38a1
Merge pull request #2658 from jfinkels/seq-whitespace-inputs
seq: trim leading whitespace from inputs
2021-09-14 20:00:45 +02:00
Jan Verbeek
601ea3ef19 uucore::process: Add a few notes 2021-09-14 19:55:00 +02:00
Jan Verbeek
cc652c7fe9 uucore::mode: Add notes about umask and platform support 2021-09-14 19:54:40 +02:00
Jan Verbeek
8cfe0290cd uucore::fsext: Avoid unnecessary allocations 2021-09-14 18:28:09 +02:00
Jan Verbeek
9d5133157a uucore::fsext: Replace some unsafe calls
GetLastError() and libc::stat() were unnecessary as libstd offered
equivalents.

LPWSTR2String() was technically unsafe if passed a slice without
zeroes, but it's a private function and was probably always called
correctly in practice.
2021-09-14 18:28:09 +02:00
Smicry
89428a77f3 fix kill list final new line test 2021-09-14 23:56:08 +08:00
Jan Verbeek
1edd2bf3a8 Do not discard non-OS error messages 2021-09-14 15:11:54 +02:00
Jan Verbeek
0a3785bf84 whoami: Run tests on Windows 2021-09-14 14:13:58 +02:00
Jeffrey Finkelstein
60025800c3 seq: trim leading whitespace from inputs 2021-09-13 21:46:17 -04:00
Jan Verbeek
4555c85564 whoami: Cleanup
- Use modern conventions
- Restrict the scope of unsafe
- Do not use deprecated `std::mem::unitialized()`
- Do not bake unicode into design
2021-09-13 22:54:45 +02:00
Sylvestre Ledru
2a4422997d Restrict some crates to specific OS 2021-09-13 22:45:55 +02:00