Terts Diepraam
458c2c8b85
factor: update to clap 4
2022-10-13 17:50:29 +02:00
Terts Diepraam
b7c1216a1a
env: update to clap 4
2022-10-13 17:50:29 +02:00
Terts Diepraam
042bb3c4e3
cp: update to clap 4
2022-10-13 17:50:26 +02:00
Terts Diepraam
075245235e
chgrp: update to clap 4
2022-10-13 17:50:23 +02:00
Terts Diepraam
649dab36f1
basename: update to clap 4
2022-10-13 16:22:45 +02:00
Terts Diepraam
26309dc9d7
base{32, 64, enc}: update to clap 4
2022-10-13 16:22:24 +02:00
Sylvestre Ledru
6e14dea73b
Fix some clippy warnings
...
Fixed with `cargo clippy --features unix --fix`
and manually
2022-10-13 09:07:22 +02:00
Sylvestre Ledru
b7c298afee
Merge pull request #4020 from ackerleytng/main
...
dircolors: align TERM matching behavior with that of GNU dircolors
2022-10-12 09:27:34 +02:00
Chad Brewbaker
cbb9db7be7
fix MIRI crash of long test
2022-10-11 12:11:52 -05:00
Sylvestre Ledru
d768b19f2b
chroot: improve support of --skip-chdir
...
Should unbreak tests/misc/chroot-fail.sh
2022-10-10 14:07:45 +02:00
Sylvestre Ledru
ad0ca2f042
Merge pull request #3973 from jfinkels/cp-directory-preserve-permissions
...
cp: preserve permissions when copying directory and don't terminate early on inaccessible file
2022-10-10 08:16:27 +02:00
Ackerley Tng
1239fc477b
dircolors: align TERM matching behavior with that of GNU dircolors
2022-10-09 18:47:20 -07:00
Jeffrey Finkelstein
b89e8e54c4
cp: continue directory walk if file inaccessible
...
Stop `cp` from terminating prematurely if a file in a directory is
inaccesible due to insufficient permissions.
2022-10-09 17:31:41 -04:00
Jeffrey Finkelstein
2450493302
cp: preserve permissions when copying directory
...
Make cp preserve the permissions of a directory when copying
it. Before this commit,
cp -pR src/ dest/
failed to copy the permissions of `src/` to `dest/`. After this
commit, the permissions are correctly copied.
2022-10-09 17:29:29 -04:00
Jeffrey Finkelstein
fba8d495d2
tests: create assert_metadata_eq!() macro
...
Create `assert_metadata_eq!()` macro to contain a series of assertions
that check whether two `Metadata` objects are equal.
2022-10-09 17:28:43 -04:00
jfinkels
349320ae61
Merge branch 'main' into cp-symbolic-link-loop
2022-10-09 17:28:30 -04:00
Sylvestre Ledru
538e8eca0b
Fix coding style
2022-10-09 20:03:06 +02:00
Terts Diepraam
b3e6472d02
test_ls: adapt to new windows permissions
2022-10-09 12:03:44 +02:00
Terts Diepraam
7d8917bb35
Merge pull request #4003 from sylvestre/sync2
...
sync: various compatibility improvement
2022-10-09 11:07:44 +02:00
Ackerley Tng
d84803b72f
ls: align --ignore behavior with that of GNU ls
2022-10-08 16:54:07 -07:00
Andrew Baptist
4922d34177
Match GNU semantics for missing EOF
...
While the rust coreutils semantics were arguably more correct,
they were different than the gnu split semantics when handling a
file without a trailing EOF. This patch addresses that difference
and allows passing one more GNU test suite.
2022-10-07 17:50:26 -04:00
Sylvestre Ledru
97dd4824e5
Merge pull request #3976 from andrewbaptist/implement_suffix_start
...
Add support for starting suffix numbers
2022-10-07 21:07:07 +02:00
Sylvestre Ledru
97f3dfad54
Merge pull request #3965 from Joining7943/fix-windows-pipe
...
`tests/tail`: Fix tests to reflect changes from the refactoring #3905
2022-10-06 11:17:25 +02:00
Sylvestre Ledru
88fb43c8e4
Merge branch 'main' into cp-symbolic-link-loop
2022-10-06 09:53:02 +02:00
Jeffrey Finkelstein
8bfd96fb59
cp: correct error message on copying dir to itself
...
Correct the error message produced when attempting to copy a directory
into itself with `cp`. Before this commit, the error message was
$ cp -R d d
cp: cannot copy a directory, 'd', into itself, 'd'
After this commit, the error message is
$ cp -R d d
cp: cannot copy a directory, 'd', into itself, 'd/d'
2022-10-05 21:37:30 -04:00
Sylvestre Ledru
ae7c45d27a
Merge pull request #3988 from dmatos2012/add-date-format-ls
...
ls: add support for +FORMAT in timestyle
2022-10-05 18:41:15 +02:00
Andrew Baptist
49e1cc6c71
Add support for starting suffix numbers
...
This commit now allows split to pass split/numeric.sh
2022-10-05 09:52:20 -04:00
Pat Laster
493a2628d2
rm: Added descend messages for interactive mode Fixes #3817 ( #3931 )
...
Co-authored-by: Terts Diepraam <terts.diepraam@gmail.com>
2022-10-05 13:35:31 +02:00
Joining7943
1725151ef8
tests/tail: Fix tests to reflect changes from the refactoring #3905
2022-10-05 13:32:35 +02:00
Jeffrey Finkelstein
24630db45e
cp: allow removing symbolic link loop destination
...
Allow `cp --remove-destination` to remove a symbolic link loop (or a
symbolic link that initiates a chain of too many symbolic
links). Before this commit, if `loop` were a symbolic link to itself,
then
cp --remove-destination file loop
would fail with an error message. After this commit, it succeeds. This
matches the behaviotr of GNU cp.
2022-10-05 13:32:21 +02:00
Sylvestre Ledru
6edf8ebf41
sync: Verify that the files can be opened
2022-10-05 13:30:19 +02:00
Sylvestre Ledru
fc1c7755b9
sync: make fail like GNU - tests/misc/sync.sh
2022-10-05 13:30:19 +02:00
David Matos
b8a5588b81
ls: add support for +FORMAT in timestyle
2022-10-05 13:29:19 +02:00
Sylvestre Ledru
858b2a5b99
disable the new tests
2022-10-04 17:24:06 +02:00
Sylvestre Ledru
3cda177d34
Disable test_preference_of_userspec on android
2022-10-04 17:17:01 +02:00
Terts Diepraam
25db814671
Merge pull request #4002 from sylvestre/cmd-test
...
test: add a bunch of operations
2022-10-04 12:00:00 +02:00
Sylvestre Ledru
33de6c89db
test: allow parsing of bigger numbers
...
Fixes: tests/misc/test.pl
2022-10-03 20:25:45 +02:00
Sylvestre Ledru
f0b8b33dc1
test: add support for -ef, -nt & -ot
2022-10-03 20:25:42 +02:00
Emil Suleymanov
a7b637b1eb
cp: assume --reflink=always on no value ( #3992 )
...
* Set reflink to auto by default
2022-10-03 20:20:55 +02:00
Sylvestre Ledru
63203a0a68
test: add -N FILE exists and has been modified since it was last read
...
Upstream: tests/misc/test-N.sh
2022-10-03 00:59:39 -10:00
Terts Diepraam
4b517a361d
Merge pull request #3959 from Joining7943/tail-reactivate-presume-input-pipe
...
tail: Reactivate ---presume-input-pipe option
2022-09-28 00:09:18 +02:00
Terts Diepraam
a3ba02a791
Merge pull request #3971 from niyaznigmatullin/cp_H_option
...
cp: add `-H` option
2022-09-25 15:16:37 +02:00
Terts Diepraam
9ce600ffa8
Merge pull request #3904 from cakebaker/pr_use_clap_for_help_and_version
...
pr: use clap to handle help & version
2022-09-25 14:10:00 +02:00
Niyaz Nigmatullin
84a741fe91
cp: add -H
option, add tests, fix test
2022-09-23 20:31:24 +03:00
jfinkels
dd0daa5e06
df: remove trailing spaces in rightmost column ( #3882 )
...
Co-authored-by: Daniel Hofstetter <daniel.hofstetter@42dh.com>
2022-09-22 08:37:20 +02:00
Jeffrey Finkelstein
60ca9a03bb
mktemp: add message for directory not found
...
Add special handling in `mktemp` for when the directory that will
contain the temporary file is not found. This situation now produces
the message
mktemp: failed to create file via template 'XXX': No such file or directory
to match the behavior of GNU mktemp.
2022-09-21 21:26:39 -04:00
Sylvestre Ledru
68ad9e4301
Merge pull request #3951 from jfinkels/mktemp-too-many-templates
...
mktemp: match GNU error message on too many args
2022-09-21 22:39:55 +02:00
Sylvestre Ledru
5a746a778f
Merge pull request #3938 from tertsdiepraam/dd-positional-args
...
`dd`: parse operands manually via positional args
2022-09-21 22:39:13 +02:00
Sylvestre Ledru
69b52b4a1b
chroot: add a new test to verify that 'chroot / ls -al' works
2022-09-21 19:47:01 +02:00
Sylvestre Ledru
2e26e1d2bd
chroot: implement --skip-chdir
2022-09-21 19:46:58 +02:00
Terts Diepraam
e377e4f046
dd: custom positional argument parsing
2022-09-21 18:41:12 +02:00
Joining7943
c32d61dcfb
tests/tail: Add system tests for ---presume-input-pipe
2022-09-21 16:39:52 +02:00
Sylvestre Ledru
3654efe8e7
chroot: add more tests
2022-09-21 14:53:50 +02:00
Jeffrey Finkelstein
7b35749ea6
mktemp: match GNU error message on too many args
...
Update the usage message when too many template arguments are given on
the command line to match that of GNU mktemp:
mktemp: too many templates
Try 'mktemp --help' for more information.
This fixes the test case `too-many` in the GNU test suite file
`tests/misc/mktemp.pl`.
2022-09-21 10:02:56 +02:00
Sylvestre Ledru
a857002def
Merge pull request #3949 from niyaznigmatullin/cp-i_gnu_test
...
cp: fix `cp-i` GNU test
2022-09-18 22:06:12 +02:00
Terts Diepraam
8c839888e1
Merge pull request #3905 from Joining7943/refactor-tail
...
Refactor tail
2022-09-17 20:39:53 +02:00
Niyaz Nigmatullin
2ce999c959
cp: fix cp-i
GNU test
...
`cp` in interactive mode used to write to stdout asking for
overwrite. GNU version writes to stderr.
Changed: write to stderr to make compatible with GNU.
2022-09-17 19:15:52 +03:00
Jeffrey Finkelstein
61345cbdc9
mktemp: respect TMPDIR environment variable
...
Change `mktemp` so that it respects the value of the `TMPDIR`
environment variable if no directory is otherwise specified in its
arguments. For example, before this commit
$ TMPDIR=. mktemp
/tmp/tmp.WDJ66MaS1T
After this commit,
$ TMPDIR=. mktemp
./tmp.h96VZBhv8P
This matches the behavior of GNU `mktemp`.
2022-09-13 19:38:25 -04:00
Joining7943
951c51e740
tail: large refactoring and cleanup of the tail code base. See also #3905 for details
2022-09-13 22:54:36 +02:00
Sylvestre Ledru
78a9f6edf8
Merge pull request #3908 from tertsdiepraam/chroot-err-codes
...
`chroot`: set exit codes to 125, 126 or 127 for errors from chroot itself
2022-09-12 22:43:12 +02:00
Niyaz Nigmatullin
8bd9427d0d
tests/ls: added exit code to some test failures
2022-09-12 19:47:16 +03:00
Daniel Hofstetter
ebbf8ade1e
pr: use clap to handle help & version
2022-09-12 15:28:08 +02:00
Terts Diepraam
51bd8a2ba8
chroot: set exit codes to 125, 126 or 127 for errors from chroot itself
2022-09-11 12:02:54 +02:00
Terts Diepraam
9177cb7b24
all: add tests for usage error exit code
2022-09-10 20:59:42 +02:00
Niyaz Nigmatullin
999db68042
pr: migrate from chrono
crate to time
...
It seems that `chrono` is the reason of deadlock or UB in android
CI. Also `chrono` had some security issues and wasn't maintained for
two years until March 2022, so other unstabilities can happen. Plus
`chrono` uses old `time` dependency.
2022-09-09 21:59:08 +03:00
Niyaz Nigmatullin
0d6383dd19
test_cp: comment out bad syscall
failing piece of code for Android
2022-09-09 16:12:05 +03:00
Joining7943
2658f8ae5b
tail: improve performance of piped stdin
...
Rewrite handling of stdin when it is piped and read input in chunks.
Fixes https://github.com/uutils/coreutils/issues/3842
2022-09-09 13:51:37 +02:00
Sylvestre Ledru
a8d1d73465
fix a test on cp counting the number of fd:
...
The testsuite runs in parallel, we have pipe, sockets
opened by other tests.
So, we take in account the various fd to increase the limit
2022-09-07 21:26:03 +02:00
Jan Scheer
88d3aee71c
tail: fix offset for stdin redirect if multiple input files
2022-09-05 10:09:04 +02:00
Jan Scheer
74f359bd76
tail: use same-file crate to get a handle of stdin redirected file
2022-09-05 10:09:04 +02:00
Jan Scheer
942928b0ea
tail: fix stdin redirect when file is not at its beginning
...
Previously, if stdin redirect pointed to a regular file,
tailing started at the beginning of the file. However,
tailing needs to start at the current position because this
is expected by tests/tail-2/start-middle.sh.
This fixes the issue by taking the current offset into account
while going backwards through the stdin redirected file.
2022-09-05 10:09:04 +02:00
Jan Scheer
92c3f60440
tail: fix stdin redirect ( #3842 )
...
This fixes a bug where calling `tail - < file.txt` would result
in invoking `unbounded_tail()`.
However, it is a stdin redirect to a seekable regular file and
therefore `bounded_tail` should be invoked as if `tail file.txt` had
been called.
2022-09-05 10:09:04 +02:00
Sylvestre Ledru
282774a3ef
Merge pull request #3853 from stefins/rm-write-protected
...
rm: added write-protected check for files
2022-08-29 17:03:24 +02:00
Owen Anderson
08d3da8f6c
Fix a TODO by making conv_block_unblock_helper
consume the input. ( #3787 )
...
* Fix a TODO by making `conv_block_unblock_helper` consume the input.
2022-08-28 10:07:04 +02:00
Stefin
4c1c9ebf89
rm: change InteractiveMode::Default to InteractiveMode::PromptProtected
...
Signed-off-by: Stefin <stefin@pm.me>
2022-08-27 19:38:10 +05:30
Tavo Annus
09cfa44560
Fix tail panicing when seeking backwards
...
Previously `tail -c n file.txt` caused panic if n > sizeof file.txt.
Now it prints out whole file similarly to GNU tail.
2022-08-24 21:02:47 +03:00
Jeffrey Finkelstein
8458bf1387
Clippy fixes in multiple crates
2022-08-23 18:30:43 -04:00
Stefin
ad4eac867f
rm: added test for rm_prompt_write_protected
...
Signed-off-by: Stefin <stefin@pm.me>
2022-08-23 21:17:48 +05:30
Niyaz Nigmatullin
306272bf60
unix_sockets is deprecated, use std::os::unix::net instead
2022-08-20 17:02:29 +03:00
Terts Diepraam
f861fc0854
stty: print special terminal information
2022-08-18 11:33:04 +02:00
Terts Diepraam
6896a85b41
test_stty: fix spell checker errors
2022-08-18 11:33:04 +02:00
Terts Diepraam
a23702caeb
add some simple tests to stty (still failing)
2022-08-18 11:33:04 +02:00
Niyaz Nigmatullin
52d767ed5a
test_pr: follow clippy advice
2022-08-17 13:13:27 +03:00
Przemysław Fuchs
3acbd1c048
dd: Error message of invalid args is matched with GNU ( #3831 )
2022-08-17 11:40:42 +02:00
Owen Anderson
9fad6fde35
Fix a bug in split where chunking would be skipped when the chunk size ( #3800 )
...
* Fix a bug in split where chunking would be skipped when the chunk size
happened to be an exact divisor of the buffer size used to read the
input stream.
The issue here was that file was being split byte-wise in chunks of 1G.
The input stream was being read in chunks of 8KB, which evenly divides
the chunk size. Because the check to allocate the next output chunk was
done at the bottom of the loop previously, it would never occur because
the current input chunk was fully consumed at that point. By moving the
check to the top of the loop (but still late enough that we know we have
bytes to write) we resolve this issue.
This scenario is unfortunately hard to write a test for, since we don't
explicitly control the input chunk size.
Fixes https://github.com/uutils/coreutils/issues/3790
2022-08-16 11:02:52 +02:00
Niyaz Nigmatullin
5d4ad4de13
tests/readlink: add test for delimiters usage
2022-08-16 08:21:43 +03:00
Niyaz Nigmatullin
6879ed7b34
tests/readlink: refactor added tests
2022-08-15 23:33:41 +03:00
Niyaz Nigmatullin
38add34d31
tests/readlink: fix for Windows
2022-08-15 23:31:45 +03:00
Niyaz Nigmatullin
a5e0a14415
tests/readlink: fix Windows "Not a directory" error message
2022-08-15 23:04:51 +03:00
Niyaz Nigmatullin
b74e2f9d9b
tests/readlink: follow clippy advice
2022-08-15 22:48:35 +03:00
Niyaz Nigmatullin
e826ab5f0f
tests/readlink: follow clippy advice
2022-08-15 22:47:03 +03:00
Niyaz Nigmatullin
df403334c0
tests/readlink: add spell-checker ignore
2022-08-15 22:47:03 +03:00
Niyaz Nigmatullin
94860f8af6
tests/realpath: add trailing slash usage tests
2022-08-15 22:47:03 +03:00
Niyaz Nigmatullin
1c6f71e0e1
tests/readlink: add tests for trailing slashes and canonicalize -e and
...
-f usages
2022-08-15 22:47:03 +03:00
Przemysław Fuchs
e2bab1d515
mv: fix error when moving directory to itself ( #3809 )
2022-08-15 10:10:04 +02:00
Sylvestre Ledru
00f5d91886
sha1sum: fix the -c usage ( Closes : #3815 )
2022-08-14 23:32:46 +02:00
Jan Scheer
391709c911
tests: ignore failing tests for FreeBSD ( #3778 )
2022-08-13 10:09:05 +02:00
Daniel Hofstetter
dd19f85d2b
Fix clippy warnings in tests
2022-08-12 09:45:16 +02:00
Sylvestre Ledru
8692301ec7
Merge pull request #3754 from ackerleytng/main
...
Add `parse_glob` module and update `du` to use `parse_glob`
2022-08-10 19:28:40 +02:00
Niyaz Nigmatullin
ca6b4ca7de
test/touch: fix tests for Windows and MacOS
2022-08-10 11:07:22 +03:00