Yagiz Degirmenci
6c98415340
fix(head): check the whether file exists before unwrap ( #1858 )
...
closes https://github.com/uutils/coreutils/issues/1800
2021-03-21 21:27:44 +01:00
Yagiz Degirmenci
f60790dd41
chroot: move to clap from getopts ( #1792 )
...
+ add tests
2021-03-21 16:18:47 +01:00
Terts Diepraam
25d4a08387
ls: long format author, group and owner ( #1850 )
...
This PR adds the options to customize what information is shown in long format regarding author, group & owner. Specifically it adds:
- `--author`: shows the author, which is always the same as the owner. GNU has this feature because GNU/Hurd supports a difference between author and owner, but I don't think Rust supports GNU/Hurd, so I just used the owner.
- `-G` & `--no-group`: hide the group information.
- `-o`: hide the group and use long format (equivalent to `-lG`).
- `-g`: hide the owner and use long format.
The `-o` and `-g` options have some interesting behaviour that I had to account for. Some examples:
- `-og` hides both group and owner.
- `-ol` still hides the group. Same behaviour with variations such as `-o --format=long`, `-gl`, `-g --format=long` and `-ogl`.
- They even retain some information when overridden by another format: `-oCl` (or `-o --format=vertical --format=long`) still hides the group.
My previous solution for handling the behaviour where `-l1` shows the long format did not fit with these additions, so I had to rewrite that as well.
The tests only cover the how many names (author, group and owner) are present in the output, so it can't distinguish between, for example, author & group and group & owner.
2021-03-21 16:18:06 +01:00
Sylvestre Ledru
45acb087b8
Merge pull request #1848 from nomius10/install_bugfix
...
install: fix bug #1823
2021-03-20 20:53:57 +01:00
Neculai Balaban
220ca78c9b
install: normalize test filenames
2021-03-20 20:42:47 +02:00
Neculai Balaban
9b0eee9066
install: added additional tests
2021-03-20 20:07:19 +02:00
Neculai Balaban
ecddaf577a
install: rustfmt test
2021-03-20 15:44:41 +02:00
Dominik Bittner
7a91281976
Install: remove path when copining files
...
- add a test for copying a file from one directory to another
- add the desired behavior
Fixes #1823
2021-03-20 15:35:40 +02:00
Marco Satti
785897efbd
date: add more tests for setting (alt. formats)
2021-03-20 15:17:18 +08:00
Sylvestre Ledru
e76ce1e908
Merge pull request #1844 from tertsdiepraam/ls/si
...
ls: --si flag and more compatible size formatting
2021-03-19 21:18:25 +01:00
Neculai Balaban
c6927d97c8
cp: add support for -x/--one-file-system ( #1840 )
2021-03-19 21:15:35 +01:00
Sylvestre Ledru
9132d32315
Rustfmt the tests
2021-03-19 18:01:43 +01:00
Terts Diepraam
39b07f670f
tests/ls: adapt tests to --si and new size formats
2021-03-19 15:15:24 +01:00
Sylvestre Ledru
e521b46c09
Merge pull request #1820 from tertsdiepraam/master
...
ls: move from getopts to clap and structure configuration
2021-03-19 09:55:27 +01:00
Marco Satti
5ec87dc70a
date: Implement setting the date on Unix & Windows ( #1798 )
...
* date: implement set date for unix and windows
Parsing the date string is not fully implemented yet, as in it relies
on the internals of chrono - things like "Mon, 14 Aug 2006 02:34:56 -0600"
do not work, nor does "2006-08-14 02:34:56" (no TZ / local time). This
is no different to using the "--date" option however, and will get fixed
when `parse_date` is a bit smarter.
Only supports unix and Windows platforms for now.
2021-03-19 09:54:01 +01:00
Sylvestre Ledru
fcccc2a973
Merge pull request #1826 from pfnsec/master
...
head: add support for -z/--zero-terminated
2021-03-18 21:37:12 +01:00
Jan Scheer
58b9372dbe
rm: fix for -d to match GNU's output #1769
2021-03-18 14:46:56 +01:00
Sylvestre Ledru
a482e28798
Merge pull request #1836 from aspenluxxxy/ios-compat
...
Change target_os = "macos" to target_vendor = "apple"
2021-03-18 14:37:26 +01:00
aspen
4e29b693f8
uutils: change every target_os = "macos"
to target_vendor = "apple"
2021-03-18 08:42:53 -04:00
Sylvestre Ledru
1d271991af
Rustfmt new tests
2021-03-18 10:24:30 +01:00
Terts Diepraam
c5792a4c47
tests/ls: add tests for colors
2021-03-17 23:15:03 +01:00
Sylvestre Ledru
99be7a3172
Merge pull request #1810 from jeckersb/nice-clap
...
nice: move from getopts to clap #1794
2021-03-17 22:03:42 +01:00
Sylvestre Ledru
44a7adc9a0
Merge pull request #1812 from konomith/feature/preserve_timestamps_#1758
...
install: Implement --preserve-timestamps (-p)
2021-03-17 22:02:54 +01:00
Sylvestre Ledru
a690ffde41
Merge pull request #1821 from deantvv/expand-clap
...
expand: replace getopts with clap
2021-03-17 22:01:31 +01:00
Sylvestre Ledru
6a109a5069
Merge pull request #1834 from jhscheer/patch-3
...
rm: add an additional flag -R for --recursive
2021-03-17 21:52:02 +01:00
Sylvestre Ledru
ba55ef166e
Merge pull request #1827 from drocco007/numfmt-delimiter
...
numfmt: implement --delimiter
2021-03-17 21:50:47 +01:00
John Eckersberg
64b8c8aac7
nice: move from getopts to clap #1794
2021-03-17 08:52:13 -04:00
Daniel Rocco
fbb9c50050
tr: process octal escape sequences
...
closes #1817
2021-03-17 08:04:45 -04:00
Jan Scheer
867e117c99
Update test_rm.rs
2021-03-17 10:20:08 +01:00
Sylvestre Ledru
618d4a4fa5
Merge pull request #1825 from cbjadwani/uniq-utf8-issues
...
uniq: utf-8 issues
2021-03-16 21:18:31 +01:00
Peter Sherman
13e61c3234
head: add support for -z/--zero-terminated
2021-03-15 15:56:11 +00:00
Daniel Rocco
52f2ab6898
numfmt: implement --delimiter
...
closes #1454
2021-03-15 11:55:56 -04:00
Hari
406cd865eb
install: run rustfmt
...
Fix formatting issues based on PR review comments
2021-03-15 11:00:30 -04:00
Andre Julius
53c3fedf33
sleep: Add more test cases
...
As mentioned here:
https://github.com/uutils/coreutils/pull/1777#discussion_r593807712
2021-03-15 14:36:38 +01:00
Dean Li
f608084710
Expand: add test for multiple files
2021-03-15 21:29:28 +08:00
Chirag Jadwani
ce4342d12e
uniq: Fix panic on invalid utf-8 input
2021-03-15 18:48:54 +05:30
Terts Diepraam
fd957dd148
ls: fix access time on windows
2021-03-15 14:09:29 +01:00
Terts Diepraam
10135dccef
ls: fix unused import and improve coverage
2021-03-15 13:46:21 +01:00
Sylvestre Ledru
2c09556964
rustfmt some tests
2021-03-13 23:30:47 +01:00
Andre Julius
2158b2c5b4
sleep: move from getopts to clap #1735 ( #1777 )
...
and Add some sleep test cases #1735
2021-03-13 23:11:11 +01:00
Terts Diepraam
fd5ec099d0
touch: use an ArgGroup for sources and turn macros into functions ( #1813 )
...
* touch: use arggroup for sources
* tests/touch: add tests for multiple sources
* touch: turn macros into functions
* test/touch: fmt
* touch: constant for the sources ArgGroup
2021-03-13 17:20:39 +01:00
Hari
8471088d6d
Merge branch 'master' of github.com:uutils/coreutils into feature/preserve_timestamps_#1758
2021-03-12 17:47:02 -05:00
Hari
68ec2ed0f3
install: Implement --preserve-timestamps (-p)
...
Last access and last modify timestamps are extracted from the
existing file metadata and are applied to the newly created file.
2021-03-12 16:51:47 -05:00
Michael Kefeder
e1626b8c64
ptx: ignore empty regex ( #1808 )
...
* ptx: ignore empty -W regex
* ptx: test to verify empty -W regex is ignored
* tests/ptx: verify word regexp from cmd-line is used
2021-03-12 21:52:37 +01:00
Ali
5ced3a670b
paste: cleanup multi-stdin support ( #1803 )
...
cleaner impl for multi-stdin support
2021-03-12 13:26:09 +01:00
Craig Pastro
3ab114f283
cp: Implement --parents & --parent ( #1797 )
2021-03-12 13:25:15 +01:00
Ali
374a4fde86
paste: support multi-stdin ( #1791 )
...
- added `-` as the default input, since `paste` reads stdin if no file
is provided
- `paste` also supports providing `-` multiple times
- added a test for it
2021-03-10 23:19:12 +01:00
Benjamin Fox
5446ea2abf
cp: implement --strip-trailing-slashes
2021-03-09 12:59:26 +02:00
Daniel Rocco
0e02607dc7
numfmt: implement --field
2021-03-08 10:53:34 -05:00
Chad Brewbaker
c820329efd
muted test not for windows and added windows temp file convention ( #1748 )
...
* muted test not for windows and added windows temp file convention
* Update mktemp.rs
Revert windows mktmp template difference
Co-authored-by: Chad Brewbaker <chad@flyingdogsolutions.com>
2021-03-06 18:26:55 +01:00
Daniel Rocco
d06f91fbe2
numfmt: align format output values with GNU ( #1745 )
...
When converting to SI or IEC, produce values that align with the conventions
used by GNU numfmt.
- values > 10 are represented without a decimal place, so 10000 becomes 10K
instead of 10.0K
- when truncating, take the ceiling of the value, so 100001 becomes 101K
- values < 10 are truncated to the highest tenth, so 1001 becomes 1.1K
closes #1726
2021-03-06 18:26:05 +01:00
Sylvestre Ledru
c06967a45a
rustfmt two files
2021-02-23 20:56:41 +01:00
Chad Brewbaker
bb54669a5d
Fix macOS aarch64 compile errors ( #1724 )
2021-02-23 10:25:06 +01:00
Alex Lyon
5431e947bc
uucore: process: fix exit status processing ( #1743 )
...
* uucore: process: fix exit status processing
* tests: timeout: check whether subcommand exit codes are returned
2021-02-23 10:21:01 +01:00
James Robson
0dbed0fd59
Do not allow seq to run with an increment of zero
2021-02-18 21:10:53 +00:00
Chad Brewbaker
05d8cc59c4
bug(wc): Add a test for unexpected behavior ( #1723 )
2021-02-16 13:36:49 +01:00
Daniel Rocco
f595164063
numfmt: prohibit --header=0 to align with GNU
...
Adjust header option handling to prohibit passing a value of 0 to align
with GNU numfmt. Also report header option parse errors as GNU does.
closes #1708
2021-02-15 08:14:44 +01:00
Daniel Rocco
f8006f47df
numfmt: handle leading whitespace & implied padding ( #1721 )
...
Align with GNU numfmt by trimming leading whitespace from supplied values.
If the user did not specify a padding, calculate an implied padding from
the leading whitespace and the value.
Also track closer to GNU numfmt’s error message format.
2021-02-14 09:04:29 +01:00
Felipe Lema
35a7f01d15
Refactor(split) - migrate from getopts to clap ( #1712 )
2021-02-11 20:45:23 +01:00
Sylvestre Ledru
51383e10e6
Fix: install /dev/null target ( #1646 )
...
* fix(install): workaround the /dev/null bug
Caused by a limitation of fs::copy in rust. see:
https://github.com/rust-lang/rust/issues/79390
2021-02-11 15:59:58 +01:00
Sylvestre Ledru
6c8af26e7f
fix(cp) - make "cp /dev/null target" work ( #1674 )
2021-02-11 15:59:20 +01:00
Sylvestre Ledru
b8987f3d5f
fix(mktemp) - Make mktemp --tempdir foo.XXXXXX works ( #1716 )
...
Used by apt-key
2021-02-11 00:03:23 +01:00
Chad Brewbaker
6c2bca110d
Fixed wc -L no end of line LF bug ( #1714 )
2021-02-08 21:54:48 +01:00
Sylvestre Ledru
cacaf0cde8
bug(fmt): just like the GNU version, fails when -W is bigger than 2500
...
Closes : #1704
2021-01-25 08:45:33 +01:00
Sylvestre Ledru
992c113f09
Remove some old code
2021-01-22 09:40:38 +01:00
Sylvestre Ledru
18370f39b8
Remove some warnings
2021-01-22 09:40:38 +01:00
Sylvestre Ledru
b8d0467da8
test(realpath): improve the coverage
2021-01-19 20:56:27 +01:00
Sylvestre Ledru
e331186fee
unbreak build with rustc 1.32: force tempfile 3.1.0 ( #1695 )
2021-01-19 08:15:53 +01:00
Sylvestre Ledru
013bb285cd
bug(chmod): chmod on symlink pointing to non existing file is failing ( #1694 )
2021-01-18 23:09:00 +01:00
Felipe Lema
88911be6e0
--filter
argument for split
(#1681 )
2021-01-18 14:42:44 +01:00
jaggededgedjustice
18c39daed7
fold: Handle input with newlines ( #1680 )
...
The read_line function appends to the given buffer which is never
cleared. This leads to lines being duplicated.
2021-01-05 09:10:01 +01:00
Sylvestre Ledru
4a23a1a218
feature(ln): Implement -n
2021-01-03 18:55:53 +01:00
Sylvestre Ledru
7f1d47b77a
refactor(ln): move to clap
2021-01-02 22:35:21 +01:00
Sylvestre Ledru
90722c1f3c
Merge pull request #1677 from sylvestre/mktemp-t
...
feature(mktemp): implement -t
2021-01-02 21:10:59 +01:00
Sylvestre Ledru
105e2cb26f
feature(mktemp): implement -t
...
Deprecated but used in various places:
https://sources.debian.org/src/libreoffice/1:7.0.4-1/solenv/gbuild/platform/solaris.mk/?hl=22#L22
https://sources.debian.org/src/glibc/2.31-6/malloc/memusage.sh/?hl=225#L225
https://sources.debian.org/src/sbox-dtc/1.11.7-1/debian/postinst/?hl=20#L20
2021-01-02 13:07:27 +01:00
Sylvestre Ledru
94e293f2bf
fix formatting fr test_seq
2021-01-02 10:14:18 +01:00
Sylvestre Ledru
a2d6c85e44
test(cp): cp /dev/null target is supposed to work. Add a test
2021-01-02 10:02:51 +01:00
Sylvestre Ledru
bc4c82b132
Fix some clippy warnings
2020-12-29 00:47:59 +01:00
Sylvestre Ledru
3a1eb1e05f
Various fixes before landing csplit
2020-12-28 17:22:02 +01:00
Stéphane Campinas
89bf7a726e
csplit: refresh of the previous PR
2020-12-28 17:21:29 +01:00
Sylvestre Ledru
da362ced71
test(rm): Add a test for multiple -f ( #1671 )
2020-12-25 14:21:47 +01:00
Diego Magdaleno
8b12686888
ls: On Windows don't display files hidden by NTFS ( #1662 )
...
This little check, allows us to hide the files that
shouldn't be shown on the listing on Windows operating
systems.
Just like the "dot" in UNIX based operating systems
Windows uses its own file attributes to determine if a file
is hidden or not.
The lack of support for this option is normally an annoyance
for many users, this commit adds full support for this feature
2020-12-19 17:54:28 +01:00
Sylvestre Ledru
469abf2427
bug(seq) - Allow 'seq 6 -1 0'
...
Was failing with
```
Found argument '-1' which wasn't expected, or isn't valid in this context
```
otherwise
2020-12-19 11:55:43 +01:00
Sylvestre Ledru
dbc716546b
fix(mkdir) - Add --parent as alias of --parents
...
It is used this way sometimes:
https://sources.debian.org/src/php-symfony-polyfill/1.21.0-2/debian/rules/?hl=49#L49
https://sources.debian.org/src/firebird3.0/3.0.7.33374.ds4-1/debian/functions.sh/?hl=24#L24
https://sources.debian.org/src/postfix/3.5.6-1/debian/configure-instance.sh/?hl=67#L67
2020-12-18 14:41:59 +01:00
Sylvestre Ledru
718695d541
fix(install) - Install was failing with '-m 0333'
...
The parse_numeric was getting ' 0333' as input
and showing 'mode is too large ( 0333 > 7777) as error
Syntax used: https://sources.debian.org/src/firebird3.0/3.0.7.33374.ds4-1/debian/functions.sh/?hl=145#L145
2020-12-18 13:36:55 +01:00
Sylvestre Ledru
c506b5402b
fix clippy warnings
2020-12-17 21:34:10 +01:00
Sylvestre Ledru
5a62dcafaa
bug(cp): like gnu/cp, don't show any message when --no-clobber is used
...
Simple example:
touch bar
rm -rf /tmp/foo
mkdir -p /tmp/foo
cp -pnL -v bar /tmp/foo
echo $?
cp -pnL -v bar /tmp/foo
echo $?
rm -rf /tmp/foo
mkdir -p /tmp/foo
./target/debug/coreutils cp -pnL -v bar /tmp/foo
echo $?
./target/debug/coreutils cp -pnL bar /tmp/foo
echo $?
2020-12-17 20:50:38 +01:00
Sylvestre Ledru
b133e28d3e
test(ls) - also test the -h option
2020-12-15 14:06:17 +01:00
Sylvestre Ledru
2de9abf52b
test(ls): add more ls tests
2020-12-15 12:10:12 +01:00
Sylvestre Ledru
b687a2742c
test(ls): also test ls -R
2020-12-13 17:13:56 +01:00
Sylvestre Ledru
4068195a94
test(ls): add more tests
2020-12-13 12:14:34 +01:00
Sylvestre Ledru
cd97adb39d
Minor fixes in the tests
2020-12-13 12:11:42 +01:00
Sylvestre Ledru
dca1f28085
install: various improvements in output & tests
2020-12-12 14:36:23 +01:00
Sylvestre Ledru
3024ade071
refactor(chgrp, install): Show the error in the program instead of the lib
2020-12-12 14:28:50 +01:00
Sylvestre Ledru
55c660b986
feature(install): move chown functions into uucore and have install owner support use it
2020-12-12 14:27:59 +01:00
Sylvestre Ledru
015e18731f
feature(install): install group support
2020-12-12 14:27:03 +01:00
Sylvestre Ledru
576aa29f0f
refactor(chmod): move from walker to walkdir, simplify the code and add tests ( #1645 )
2020-12-12 10:31:12 +01:00
Sylvestre Ledru
49b32ea68d
refactor(chown): move to clap & add tests ( #1648 )
2020-12-12 00:14:00 +01:00
Sylvestre Ledru
068fee2ebd
feature(uname): Implement -p & -i ( #1649 )
...
Just return 'unknown' for both
Closes : #1636
2020-12-11 22:46:36 +01:00
Sylvestre Ledru
516839e081
refactor(mv): move to clap ( #1652 )
2020-12-10 22:28:17 +01:00