Commit graph

3675 commits

Author SHA1 Message Date
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
909acdfeb4
Merge pull request #1660 from sylvestre/cp-2
bug(cp): like gnu/cp, don't show any message when --no-clobber is used
2020-12-17 23:45:23 +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
1e9820a7c4
Merge pull request #1659 from sylvestre/base-non-utf8
base32/base64: tolerate non-utf8 encoded inputs
2020-12-16 08:46:48 +01:00
Sylvestre Ledru
4e2bd86811
Merge pull request #1658 from sylvestre/tee-ignore-interrupts
tee: implement ignore-interrupts option
2020-12-16 08:46:40 +01:00
Gabriel Ganne
607b70a896 base32/base64: tolerate non-utf8 encoded inputs
For inputs that are valid base64 but that encode non-utf8 strings (like
garbage), base64 panicks when trying to unwrap the result from
String::from_utf8().
Instead of interpreting the byte stream as utf8, simply dump the raw
bytes to stdout.

Since the test assert that all io is valid utf8, this does not come with
a unit test. See run() in tests/common/utils.rs.

Eg.
"gD63hSj3ScS+wuOeGrubXlq35N1c5Lby/S+T7MNTjxo=" -> ">(Iľ^Z\/S"
2020-12-16 00:14:18 +01:00
Hiroki Noda
2916e8d811 tee: implement ignore-interrupts option 2020-12-15 23:50:43 +01:00
Sylvestre Ledru
519f1b60a6
Merge pull request #1657 from sylvestre/ls-test-2
test(ls) - also test the -h option
2020-12-15 16:35:44 +01:00
Sylvestre Ledru
b133e28d3e test(ls) - also test the -h option 2020-12-15 14:06:17 +01:00
Sylvestre Ledru
96fe55e0b6
Merge pull request #1656 from sylvestre/ls-tests
test(ls): add more ls tests
2020-12-15 13:09:56 +01:00
Sylvestre Ledru
2de9abf52b test(ls): add more ls tests 2020-12-15 12:10:12 +01:00
Sylvestre Ledru
ef25a6874e
Update of "contributing" documentation 2020-12-14 12:45:36 +01:00
Sylvestre Ledru
15e58a72c8
Merge pull request #1655 from sylvestre/sync-warning
fix(sync) - Remove 'unused import' on mac
2020-12-13 20:18:50 +01:00
Sylvestre Ledru
d9cf0374be fix(sync) - Remove 'unused import' on mac 2020-12-13 18:02:33 +01:00
Sylvestre Ledru
c6ba8b4ab0
Merge pull request #1654 from sylvestre/ls-exit
ls - improve the error management + add tests
2020-12-13 17:59:02 +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
ba126afe54 fix(ls): follow the display of GNU ls 2020-12-13 12:12:19 +01:00
Sylvestre Ledru
8a1628cf89 fix(ls): When a file doesn't exist, exit early and fails ls
Currently, running
$ ls doesntexist
will return 0
while it should return 1

Ditto for
$ ls doesntexist a
2020-12-13 12:12:19 +01:00
Sylvestre Ledru
cd97adb39d Minor fixes in the tests 2020-12-13 12:11:42 +01:00
Sylvestre Ledru
94571ecf8f
Merge pull request #1641 from sylvestre/install-owner-group
feature(install) - add group & owner support + a refactor
2020-12-12 16:42:50 +01:00
Sylvestre Ledru
f287309b72 perms: add some docs 2020-12-12 14:43:56 +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
763de90fda refactor(chgrp): move chgrp perms function into the uucore to reuse it into install
Will move chown later
2020-12-12 14:26:32 +01:00
Sylvestre Ledru
431a4e9f2f cosmetic: consistency in the clap cargo declaration 2020-12-12 13:12:13 +01:00
Sylvestre Ledru
e19010e9fe cosmetic: consistency in the walkdir cargo declaration 2020-12-12 13:10:57 +01:00
Sylvestre Ledru
d8e345df0a
refactor(whoami): only use advapi32/winapi on Windows (#1653) 2020-12-12 11:04:39 +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
Piyush Jaipuriayar
3ca8ba997c
hashsum: added blake2 as a hashing algorithm (#1651) 2020-12-08 23:32:02 +01:00
Sylvestre Ledru
d21acc4621
cosmetic(cp): use the variable instead of the string 2020-12-08 23:19:51 +01:00
Sylvestre Ledru
0cfb83a040
Merge pull request #1580 from sylvestre/archive3
feature(cp): implement archive & -L
2020-12-06 17:15:56 +01:00
Sylvestre Ledru
580a7a1c3d
Merge pull request #1647 from sylvestre/clap-2.33
use the same version of clap everywhere
2020-12-02 08:32:15 +01:00
Sylvestre Ledru
5f47d1249d use the same version of clap everywhere 2020-12-01 22:59:14 +01:00
Sylvestre Ledru
c483fa501b feature(cp): also implement --dereference/-L 2020-11-29 20:48:29 +01:00
Sylvestre Ledru
f76a0ec972 feature(cp): implement archive + add missing tests 2020-11-29 20:48:23 +01:00
Sylvestre Ledru
a10346eb23
Merge pull request #1644 from sylvestre/install-copy
Small improvements on "install"
2020-11-29 17:50:17 +01:00
Sylvestre Ledru
b07f496b70 fix(install): 'install file_a file_b' should just copy the file 2020-11-29 16:33:46 +01:00
Sylvestre Ledru
261b4e24d6 feature(install): remove a duplicate check.
Already done in is_new_file_path
2020-11-29 16:33:46 +01:00
Sylvestre Ledru
11ecf80a25
feature(sync): add --data & --file-system (#1639) 2020-11-29 16:32:21 +01:00
Sylvestre Ledru
89f8624936
bug(install) - install -d can be run on an existing directory (#1643)
GNU:
$ install -d foo
$ install -d foo

Rust:
$ install -d foo
$ install -d foo
install: cannot create directory 'foo': File exists
install: foo: File exists (os error 17)
2020-11-29 16:31:26 +01:00