Commit graph

6194 commits

Author SHA1 Message Date
John Shin
844cbdc5a4 sort: add tests for stable and unstable sort 2023-07-05 10:05:52 +02:00
John Shin
e9405250f4 uucore: leading zeros are ignored in version compare 2023-07-05 10:05:52 +02:00
Daniel Hofstetter
4a192e98d5
Merge pull request #5032 from sylvestre/split-fail
split: reject some invalid values
2023-07-05 07:04:22 +02:00
John Shin
4acd02c7a1 ls: string compare if version_cmp returns equal 2023-07-04 16:08:54 -07:00
Sylvestre Ledru
9d44d8b71d
Merge pull request #4977 from cakebaker/date_shortcut_value_parser
date: use custom value parser
2023-07-04 19:56:46 +02:00
Sylvestre Ledru
264d29a169
fix the clippy warning 2023-07-04 18:45:11 +02:00
Terts Diepraam
c455aa0922
Merge pull request #5036 from cakebaker/nl_fix_no_renumber
nl: make -p/--no-renumber a flag
2023-07-04 14:16:04 +02:00
Daniel Hofstetter
fee5225cb6 nl: make --no-renumber a flag 2023-07-04 10:37:10 +02:00
Daniel Hofstetter
18e5c5b5f7 numfmt: remove duplicate info from help output 2023-07-04 07:02:18 +02:00
Sylvestre Ledru
d033db3573 split: reject some invalid values
Matches what is done in tests/split/fail.sh
(still doesn't work)
2023-07-03 22:57:37 +02:00
Sylvestre Ledru
37cbfd1efd
Merge pull request #5030 from cakebaker/touch_use_parse_datetime
touch: use parse_datetime instead of humantime_to_duration
2023-07-03 16:26:51 +02:00
Daniel Hofstetter
11b098fce1
Merge pull request #5028 from sylvestre/cp-multiple
cp: allow multiple usages of -R - Closes: #5027
2023-07-03 16:09:45 +02:00
Sylvestre Ledru
e491bbdbed cp: allow multiple usages of -R/-r Closes: #5027
works for all other rm args
2023-07-03 14:19:45 +02:00
Roy Ivy III
af64bde92b fix/touch ~ time crate usage errors 2023-07-03 14:15:15 +02:00
Sylvestre Ledru
7a7842b5b8
Merge pull request #4756 from Joining7943/tail-refactor-and-fix-input
`tail`: Refactor `paths::Input::from` and `Settings::inputs`
2023-07-03 14:09:57 +02:00
Roy Ivy III
9aef5ac35b deps ~ change from 'humantime_to_duration' to 'parse_datetime' 2023-07-03 13:53:52 +02:00
Terts Diepraam
5a667db43d tail: clean up some small things in input parsing 2023-07-03 13:20:48 +02:00
sbentmar
42bf580f13
numfmt: add --invalid option (#4249)
* numfmt: add invalid option

* numfmt: return code 0 if ignore or warn

* numfmt: implement all --invalid modes

* numfmt: validate stdout and stderr

* numfmt: remove unnecessary code

* numfmt: apply formatting

* numfmt: fix clippy issues

* numfmt: fix failing test cases

* numfmt: fix formatting

* numfmt: fix bug when handling broken pipe

* numfmt: fix bug where extra newline was added

* numfmt: add test cases for edge cases

* numfmt: simplify error handling

* numfmt: remove redundant if

* numfmt: add newline between functions

* numfmt: fix failing test cases

* numfmt: add support for arg numbers using --invalid

* numfmt: simplify error handling in value handlers

* numfmt: fix merge conflict and align prints

* numfmt: fix clippy suggestion

* numfmt: replace "valid" with "invalid" in tests

* numfmt: move INVALID to respect alph. order

* numfmt: move printlns outside of match to avoid duplication

Co-authored-by: Sylvestre Ledru <sledru@mozilla.com>

* numfmt: remove empty line

---------

Co-authored-by: Daniel Hofstetter <daniel.hofstetter@42dh.com>
Co-authored-by: Sylvestre Ledru <sledru@mozilla.com>
2023-07-01 17:08:12 +02:00
Daniel Hofstetter
a145798594
Merge pull request #4960 from granquet/ls_LZ
ls: force fetching metadata when called with -L -Z
2023-07-01 15:24:37 +02:00
Daniel Hofstetter
c524ec4a9f
Merge pull request #4950 from Ideflop/more_implement_arguments_plain_and_from_line
More implement arguments plain and from line
2023-07-01 14:18:54 +02:00
crapStone
863f91eca9
fix typos
some arguments had the wrong case
2023-06-29 15:34:19 +00:00
Daniel Hofstetter
610e0461e9
Merge pull request #5020 from indygreg/hashsum-file-stem
hashsum: use file_stem() instead of file_name()
2023-06-29 13:50:30 +02:00
Daniel Hofstetter
5b18c53c9d
Merge pull request #4999 from sylvestre/mv-backup-src
mv: add the check with --b=simple and when the source is a backup
2023-06-29 13:19:40 +02:00
Gregory Szorc
a7f95d5a23 hashsum: use file_stem() instead of file_name()
This program matches the binary name to determine which
algorithm to use. On Windows, `file_name()` was matching
against a string with `.exe`, causing binaries like
`sha256sum.exe` to not properly detect the algorithm.

By using `file_stem()`, we exclude the `.exe` from matching,
achieving similar and correct behavior on Windows.
2023-06-29 10:50:10 +02:00
Daniel Hofstetter
3357aa87a1
Merge pull request #5018 from sylvestre/memmap2
Move memmap2 in the root workpace
2023-06-29 09:31:04 +02:00
Sylvestre Ledru
14e5f89a0e Move memmap2 in the root workpace 2023-06-28 23:16:16 +02:00
Sylvestre Ledru
40c598852b mv: add the check with --b=simple and when the source is a backup 2023-06-28 23:11:28 +02:00
Sylvestre Ledru
24aff229da Add a function to detect if file is likely to be the simple backup file 2023-06-28 23:11:25 +02:00
John Shin
d2e7ba2da1 sort: add tests for stable and unstable sort 2023-06-27 12:15:58 -07:00
John Shin
0ff00ec44c uucore: leading zeros are ignored in version compare 2023-06-26 16:28:31 -07:00
Ideflop
77f8201fb8 more: fix bug not displaying next file message and not stopping at end of file 2023-06-26 21:57:52 +02:00
Ideflop
479340306e more: implement arguments -u/--plain and -F/--from-line 2023-06-26 21:57:45 +02:00
Daniel Hofstetter
c05dbfa3b4 seq: rename "--widths" to "--equal-width"
for compatibility with GNU seq
2023-06-26 16:21:59 +02:00
Terts Diepraam
873c6c36f7
Merge branch 'main' into ls_LZ 2023-06-26 15:52:52 +02:00
Daniel Hofstetter
9149409065
Merge pull request #4991 from shinhs0506/du_apparent
du: directories have apparent size of 0
2023-06-26 14:58:40 +02:00
Guillaume Ranquet
80c7ed9732 ls: force fetching metadata when called with -L -Z
The metadata are not used but it permits to check the symlink is valid.
We then return 1 on invalid symlinks when ls is invoked with ls -L -Z

Signed-off-by: Guillaume Ranquet <granquet@baylibre.com>
2023-06-26 14:46:56 +02:00
Daniel Hofstetter
6a7b5379ea
Merge pull request #5008 from uutils/renovate/libc-0.x
fix(deps): update rust crate libc to 0.2.147
2023-06-26 07:56:10 +02:00
John Shin
b34e7f7bf6 du: directories have apparent size of 0 2023-06-25 15:56:57 -07:00
Sylvestre Ledru
644fd1c93e fix some clippy warnings 2023-06-25 22:29:08 +02:00
Nikolai
0b06f2b4a8 fixing seq panic on none 2023-06-25 22:23:40 +02:00
Sylvestre Ledru
b03a88e154
Merge pull request #4972 from cakebaker/sort_migrate_from_ouroboros_to_self_cell
sort: migrate from ouroboros to self_cell
2023-06-25 21:15:02 +02:00
renovate[bot]
824097d224
fix(deps): update rust crate libc to 0.2.147 2023-06-25 19:09:01 +00:00
Sylvestre Ledru
ddcdda44db Remove the auto capitalization of error message 2023-06-25 00:18:33 +02:00
Sylvestre Ledru
da8cb64b74
Merge pull request #4989 from cakebaker/touch_rename_const
touch: rename CURRENT to TIMESTAMP
2023-06-24 10:24:21 +02:00
Sylvestre Ledru
ed71bb60e0
Merge pull request #4995 from cakebaker/nl_implement_default_for_settings
nl: implement Default for Settings
2023-06-24 10:24:08 +02:00
Daniel Hofstetter
d57a5eb6a3 seq: remove two chars in seq.md 2023-06-24 07:07:38 +02:00
renovate[bot]
0144a3c78f
fix(deps): update rust crate itertools to 0.11.0 2023-06-22 13:43:21 +00:00
Daniel Hofstetter
0010fece35 nl: remove "spell-checker:ignore" line 2023-06-22 14:35:04 +02:00
Daniel Hofstetter
d00134640b nl: use "const" instead of "static" 2023-06-22 14:33:32 +02:00
Daniel Hofstetter
c32139784a nl: implement Default for Settings 2023-06-22 14:30:53 +02:00
Daniel Hofstetter
98d242de7e nl: fix typo in nl.md 2023-06-22 10:04:37 +02:00
Sylvestre Ledru
8debc96eeb
Merge pull request #4983 from TheDcoder/parse-hex
od: fix parsing of hex input ending with `E`
2023-06-20 22:55:32 +02:00
yt2b
c3f2ac6f04 yes: add --version option 2023-06-20 23:20:22 +09:00
Daniel Hofstetter
98ef87af86 touch: cleanup "spell-checker:ignore" line 2023-06-20 15:28:32 +02:00
Daniel Hofstetter
e990f87edc touch: rename CURRENT to TIMESTAMP 2023-06-20 15:23:54 +02:00
Daniel Hofstetter
6ebfaf4b9d sort: migrate from ouroboros to self_cell 2023-06-19 10:17:39 +02:00
Sylvestre Ledru
66723e0961
Merge pull request #4447 from Freaky/dd-alarm-timer
dd: use an alarm thread instead of elapsed() calls
2023-06-19 09:27:13 +02:00
Damon Harris
b7154a80e1 od: fix parsing of hex input ending with E 2023-06-18 21:02:39 +05:30
Kostiantyn Hryshchuk
7306be6e58 fixed shred -u for windows
fixed shred panic on windows
2023-06-18 17:12:10 +02:00
John Shin
47d0ac4a42 sync: fix error msg 2023-06-17 19:50:47 -07:00
Daniel Hofstetter
643afbd731 date: use ShortcutValueParser 2023-06-14 13:34:50 +02:00
Daniel Hofstetter
24b979c821 uucore: introduce ShortcutValueParser 2023-06-14 13:34:50 +02:00
Rayhan Faizel
fa11315ce7 mv: check strictly for hard links first before checking for symlinks to catch a very special case, plus ensure only nobackupmode is considered 2023-06-12 23:48:49 +05:30
Rayhan Faizel
c113284a4b uucore: modify are_hardlinks_to_same_file to check only immediate metadata 2023-06-12 23:46:33 +05:30
Sylvestre Ledru
e7557c2bae
Merge branch 'main' into dd-alarm-timer 2023-06-11 18:27:41 +02:00
Sylvestre Ledru
856825bbbc
Merge pull request #4966 from Skryptonyte/mv_selfinto2fix
mv: fix into-self-2.sh test
2023-06-11 18:26:25 +02:00
Daniel Hofstetter
67114ac63c date: switch to parse_datetime 2023-06-11 14:36:51 +02:00
Rayhan Faizel
28ad5cab9f mv: fix GNU test tests/mv/into-self-2.sh 2023-06-10 18:32:09 +05:30
Rayhan Faizel
ab42b1e599 uucore: add function which checks hardlink as well as directed symlink 2023-06-10 18:31:30 +05:30
Sylvestre Ledru
63b84fed8b
Merge pull request #4927 from cakebaker/bump_fundu_and_fix_compile_errors
Bump fundu to 1.0.0 and fix compile errors
2023-06-10 09:23:21 +02:00
Frantisek Kropac
ad96a1b8a0
Find MountInfo properly when symlink is used (#4929)
* Find MountInfo properly when symlink is entered

According to GNU implementation the entered path is
being compared with the canonicalized device name
in MountInfo.

Co-authored-by: Frantisek Kropac <kropac.ff@gmail.com>
Co-authored-by: Sylvestre Ledru <sylvestre@debian.org>
2023-06-10 09:22:01 +02:00
renovate[bot]
d26c596a4c
fix(deps): update rust crate memmap2 to 0.7 2023-06-08 11:02:36 +00:00
Sylvestre Ledru
6ecef3a0e3 Reformat TOML files with taplo
npx --yes @taplo/cli fmt
2023-06-08 09:07:19 +02:00
Sylvestre Ledru
6d6966cfb1
Merge pull request #4952 from wanderinglethe/date-remove-time-dep
Remove time dependency from date
2023-06-06 22:21:38 +02:00
Daniel Hofstetter
0128198a99
Merge pull request #4954 from Skryptonyte/ls_sortwidth
ls: Implement new sort option --sort=width
2023-06-06 18:46:54 +02:00
Rayhan Faizel
3f33c5b816 ls: Implement --sort=width 2023-06-06 20:55:42 +05:30
renovate[bot]
c68b665bf9
fix(deps): update rust crate libc to 0.2.146 2023-06-06 14:39:50 +00:00
Wandering Lethe
42a22c12f1
Remove time dependency from date
Also upgrades humantime_to_duration to the latest version, it switched from time to chrono. Because touch still depends on time, its humantime_to_duration package version deviates from the workspace version.
2023-06-05 21:41:32 +02:00
Detlev Casanova
b070506255 tsort: Switch to BTreeHash and BTreeSet
Using HashMap and HashSet give a valid topological sort, but the output
will change randomly at each run.

BTree based structures will guarantee that the output is always ordered
in the same way.

This also makes the ouptut similar to the output of the C version of the
tools, on which some applications rely.
2023-06-05 11:06:53 -04:00
Miles Liu
1c4d7b2f87
install: remove time crate 2023-06-05 16:34:50 +08:00
Sylvestre Ledru
3d220513e3
Merge pull request #4942 from x-dune/pr-use-chrono
`pr` use chrono instead of time
2023-06-04 18:46:38 +02:00
Sylvestre Ledru
abfceda12d
Merge pull request #4926 from sylvestre/new-release
New release
2023-06-04 16:09:04 +02:00
Tracy
126bbba17a
pwd: Fixes #4855 (#4937)
Based on testing with GNU's pwd, it seems like the -P flag should
take precedence over the use of the POSIXLY_CORRECT flag.

Co-authored-by: Terts Diepraam <terts.diepraam@gmail.com>
2023-06-04 16:03:01 +02:00
x-dune
7958c5d061 pr: use chrono instead of time 2023-06-04 20:17:52 +08:00
Sylvestre Ledru
9f38142522 add uuhelp to the ignore spell 2023-06-04 11:27:50 +02:00
Sylvestre Ledru
204d9b64f9 uuhelp_parser: update of the version 2023-06-04 09:46:59 +02:00
Sylvestre Ledru
e3cb5a111d Rename help_parser => uuhelp_parser 2023-06-04 09:46:59 +02:00
Sylvestre Ledru
a13d7f4060 uuhelp_parser: add the desc 2023-06-04 09:46:59 +02:00
Sylvestre Ledru
830b7d5ce1 New release 2023-06-04 09:46:59 +02:00
Guillaume Ranquet
ee4691f4a2 cp: makes --preserve requires =
prevents --preserve to eat the next argument when no value is passed.

default value for --preserve is set to mode,ownership(unix only),timestamps

before the patch:
cp --preserve foo bar
error: invalid value 'foo' for '--preserve [<ATTR_LIST>...]'
  [possible values: mode, ownership, timestamps, context, link, links, xattr, all]

Signed-off-by: Guillaume Ranquet <granquet@baylibre.com>
2023-06-04 09:46:35 +02:00
Sylvestre Ledru
160952a42c
Merge pull request #4918 from shinhs0506/core-size
shred: add support for octal and hex size
2023-06-03 10:48:19 +02:00
Sylvestre Ledru
e8effd0d0a
Merge pull request #4914 from Ideflop/more_implement_arguments_lines_and_number
more: implement arguments -n/--lines and --number
2023-06-02 20:20:20 +02:00
Sylvestre Ledru
20ce7accf2 cp: -i prompts in the right place
Should fix tests/cp/cp-i.sh
2023-06-01 21:42:35 +02:00
Sylvestre Ledru
4eb1e847e9 cp --no-clobber should fail 2023-06-01 21:42:32 +02:00
Daniel Hofstetter
b6c02c1a23 tail: fix compile error due to fundu update 2023-06-01 15:30:43 +02:00
Daniel Hofstetter
ccee02f025 sleep: fix compile error due to fundu update 2023-06-01 10:57:54 +02:00
Terts Diepraam
77e183955b head: use OsStringExt::from_vec instead of std::from_utf8_unchecked
This no longer triggers the `invalid_from_utf8_unchecked` lint. It
is also a bit cleaner and no longer requires `unsafe` because
OsString is not guaranteed to be valid UTF-8.
2023-05-31 21:18:13 +02:00
Terts Diepraam
701f30a15e
Merge pull request #4909 from sylvestre/test_debug
Add support for `cp --debug`
2023-05-31 20:27:02 +02:00
Daniel Hofstetter
09db8d8af9 fmt: adapt defaults to the ones used by GNU fmt 2023-05-31 16:41:56 +02:00
Daniel Hofstetter
42d6604e59 fmt: implement default for FmtOptions 2023-05-31 10:35:54 +02:00
Daniel Hofstetter
8940018833
Merge pull request #4897 from sylvestre/platform-info
update to platform-info 2.0.1
2023-05-31 09:29:57 +02:00
John Shin
4b09b917cd shred: use exact if size is given 2023-05-30 15:08:22 -07:00
John Shin
f10059db02 shred: refactor get_size 2023-05-30 13:40:41 -07:00
John Shin
b93bae2964 tail: fix parsing logic and add quote 2023-05-30 13:34:00 -07:00
John Shin
f10faf21bc head: interpret size as decimal 2023-05-30 13:32:48 -07:00
Sylvestre Ledru
f830b6e68f update to platform-info 2.0.1 2023-05-30 17:43:54 +02:00
Sylvestre Ledru
58bf998919
Ignore some words 2023-05-30 15:49:53 +02:00
John Shin
a397920183 core: refactor parse_number in size parser 2023-05-30 13:56:01 +02:00
John Shin
0465553f6e core: size parser treat 000 as decimal 2023-05-30 13:56:01 +02:00
John Shin
8ef926c6e8 core: refactor num and unit split 2023-05-30 13:56:01 +02:00
John Shin
6cadffc8f1 core: fix clippy warning for size parser 2023-05-30 13:56:01 +02:00
John Shin
3ca003846d shred: add support for hex and octal size 2023-05-30 13:56:01 +02:00
John Shin
6278c6f2d6 core: add octal and hex size parse support 2023-05-30 13:56:01 +02:00
Daniel Hofstetter
1781a5db1d
Merge pull request #4698 from uutils/renovate/windows-sys-0.x
fix(deps): update rust crate windows-sys to 0.48.0
2023-05-30 13:40:49 +02:00
Ideflop
f1c943ed31 more: error handling for write_all in function paging_add_back_message 2023-05-30 09:03:00 +02:00
renovate[bot]
2ec70dc05d
fix(deps): update rust crate dns-lookup to v2 2023-05-30 06:37:02 +00:00
renovate[bot]
8f9a328c6a
fix(deps): update rust crate windows-sys to 0.48.0 2023-05-30 06:36:57 +00:00
Daniel Hofstetter
191f2380b9
Merge pull request #4905 from sylvestre/mv-n
mv: Show 'skipped' when a file isn't overwriten
2023-05-30 07:27:48 +02:00
Sylvestre Ledru
f2006a9a6b cp: add support of cp --debug 2023-05-29 22:44:57 +02:00
Sylvestre Ledru
d38797bb50 mv: Show 'skipped' when a file isn't overwriten
Should fix tests/mv/mv-n.sh
2023-05-29 21:57:42 +02:00
Sylvestre Ledru
d303af31b7 cp: Accept --preserve=link
Used for example in:
tests/mv/hard-3.sh
2023-05-29 15:46:18 +02:00
Ideflop
6c98b23e80 more: implement arguments -n/--lines and --number 2023-05-29 14:36:18 +02:00
Jed Denlea
d6562b2b5f uniq: non-UTF-8 file names and fewer copies
uniq ought to be able to work with files whose names are not UTF-8.

I've also taken the chance to remove some unnecessary String
allocations.

Additionally, both open_input_file and open_output_file were returning
items with two implie levels of `Box<dyn ...>` that were not necessary.

In the case of stdin as input, it was not necessary to wrap stdin with a
BufReader, StdinLock implements BufRead itself.
2023-05-28 17:25:39 -07:00
Kamil Ogórek
07434647ad
fix: Correctly detect format when using md5sum with check flag (#4645) 2023-05-27 23:56:15 +02:00
Sylvestre Ledru
388fa1b717
Merge pull request #4696 from jeddenlea/wc
wc: streaming --files0-from and other improvements
2023-05-27 23:55:16 +02:00
Sylvestre Ledru
e295cb7acb
Merge pull request #4903 from Ideflop/more_implement_squeeze
more: implement argument -s / --squeeze
2023-05-27 20:38:52 +02:00
jaggededgedjustice
81a854a13e
date: Catch format string that is not supported by chrono (#4244)
* Catch format string that is not supported by chrono

Co-authored-by: Sylvestre Ledru <sylvestre@debian.org>
2023-05-27 15:41:12 +02:00
Ideflop
03dec5128c more: implement argument -s / --squeeze 2023-05-27 00:04:04 +02:00
Daniel Hofstetter
81e3b04b11
Merge pull request #4888 from Ludmuterol/more-panic-4886
fix(#4886) more: panics if file is not readable
2023-05-24 17:42:27 +02:00
tpeters
eed916a076 more: disable raw mode on error 2023-05-24 13:40:14 +02:00
Moïse Valvassori
b29f8b011b
chown: show "ownership of 'foo' retained" message
* Display a message when the owner is not changed.

* Display a message when the current user/group doesn't match those specified in the `--from` args.

* print messages to stdout

* Show the message "ownership of 'foo' retained as 'bar'" for every path entry when `chown -v -R --from=`

* fix chown tests: test stdout and not stderr

* factorize duplicate code in a function

* Display a message when the owner is not changed.

* Display a message when the current user/group doesn't match those specified in the `--from` args.

* print messages to stdout

* Show the message "ownership of 'foo' retained as 'bar'" for every path entry when `chown -v -R --from=`

* fix chown tests: test stdout and not stderr

* factorize duplicate code in a function

* display the retained ownership details according to the destination ownership.
2023-05-24 09:45:19 +02:00
Sylvestre Ledru
9a6d47759b
Merge pull request #4890 from shinhs0506/rm-i
fix rm/interactive-always.sh
2023-05-23 18:59:37 +02:00
tpeters
50bff30c67 more: add test and change error type 2023-05-23 18:03:25 +02:00
John Shin
e50b84035f rm: fix prompt when --interactive is once 2023-05-22 21:26:52 -07:00
John Shin
78909fdd39 rm: allow empty when for --interactive arg 2023-05-22 21:11:47 -07:00
tpeters
d41777c52c more: change file unwrap to match 2023-05-22 20:07:14 +02:00
renovate[bot]
cda52ebce6
fix(deps): update rust crate data-encoding-macro to 0.1.13 2023-05-22 12:36:42 +00:00
renovate[bot]
66224cdbf8
fix(deps): update rust crate data-encoding to 2.4 2023-05-22 11:32:58 +00:00
Jed Denlea
e5b46ea3eb wc: more tests and fixes
My previous commits meant to bring our wc's output and behavior in line
with GNU's. There should be tests that check for these changes!

I found a stupid bug in my own changes, I was not adding 1 to the
indexes produced by .enumerate() when printing errors.
2023-05-22 01:02:35 -07:00
Sylvestre Ledru
e5419ade96
Merge pull request #4878 from cakebaker/mktemp_4874
mktemp: prioritize TMPDIR over -p when using -t
2023-05-22 09:31:11 +02:00
Jed Denlea
c4b53a44b5 wc: make --files0-from work with streams 2023-05-21 23:59:32 -07:00
Sylvestre Ledru
c91520768e
Merge pull request #4876 from shinhs0506/mkdir-p
mkdir: set correct permissions on dirs created by -p
2023-05-22 07:43:52 +02:00
Moïse Valvassori
0130a07579
chown: show message if file doesn't exist
* print the message "failed to change ownership of" when we try to change a non existing file.

* replace the 4-tuple returned by parse_gid_uid_and_filter by GidUidOwnerFilter struct.

* chain the test in one expression.

* chown: remove unused var "result" in test

---------

Co-authored-by: Daniel Hofstetter <daniel.hofstetter@42dh.com>
2023-05-21 17:54:32 +02:00
Jed Denlea
d58ee5a28a wc: skip String to measure number length
Sadly ilog10 isn't available until we use 1.67, but we can get close in
the meantime.
2023-05-20 23:29:48 -07:00
Jed Denlea
36b45e2249 wc: touch up errors, quote more like GNU
WcError should not hold Strings which are clones of `&'static str`s.
thiserror provides a convenient API to declare errors with their Display
messages.

wc quotes the --files0-from source slightly differently when reporting
errors about empty file names.
2023-05-20 23:29:48 -07:00
Jed Denlea
38b4825e7f wc: avoid excess String allocations
print_stats will now take advantage of the buffer built into
io::stdout().

We can also waste fewer lines on show! by making a helper macro.
2023-05-20 23:08:26 -07:00
Jed Denlea
c3b06e10a6 wc: clean up of settings
The Settings object did not need a QuotingStyle member, it was basically
a static.
2023-05-20 22:30:14 -07:00
Daniel Hofstetter
70765eea82
Merge pull request #4872 from Ideflop/more_implement_print_over_and_clean_print
more: add arguments print over and clean print
2023-05-20 15:32:50 +02:00
Ideflop
2d1a9f6709 fix behavior of -c and -p commands 2023-05-20 08:56:50 +02:00
Daniel Hofstetter
698fafad68 mktemp: prioritize TMPDIR over -p when using -t 2023-05-20 08:02:37 +02:00