Commit graph

3278 commits

Author SHA1 Message Date
Shinichiro Hamaji
d556c9e398 ln: Fix how it selects the form
ln had a bunch of problems:

1. `ln -s target` didn't work (2nd form in help).
2. `ln -t tmp` wasn't an error. We should check if files are
   empty first.
3. `ln -s file dir` didn't create dir/file.
4. `ln -s -T file dir` was removing `dir`.
5. Test cases for 4 say this is for compatibility with GNU
   coreutils but I couldn't find this feature.
2017-04-09 02:32:57 +09:00
Shinichiro Hamaji
416c2b7f89 rm: Remove invalid symlinks
Checking with file.exists() was not good for this purpose as
Path::exists() returns false for invalid symlinks.
2017-04-09 01:33:07 +09:00
Alex Lyon
5f1cb07df8 Merge pull request #1033 from shinh/rm-dir-link
rm: Remove symlinks to directories without -r
2017-04-03 08:35:37 -07:00
Shinichiro Hamaji
bb1d8956eb rm: Fail when symlink_metadata() fails 2017-04-04 00:10:45 +09:00
Alex Lyon
a2de3997b9 Merge pull request #1031 from shinh/mkdir-dup
mkdir: Fix the behavior for existing files
2017-04-02 20:50:22 -07:00
Alex Lyon
df960d211c Merge pull request #1034 from shinh/ls-n
ls: Implement -n option
2017-04-02 20:46:13 -07:00
Shinichiro Hamaji
36d26c0f0d ls: Implement -n option 2017-04-02 13:11:48 +09:00
mpkh
a304d9e97e Merge pull request #1032 from shinh/ln-basename
ln: Use basename when target directory is specfied
2017-04-01 22:11:33 +04:00
Shinichiro Hamaji
4f6841df32 rm: Remove symlinks to directories without -r
Path::is_dir follows symlinks so it returns true for symlinks
to directories. Use symlink_metadata instead so you can remove
symlinks to directories without -r flag.
2017-04-01 23:45:34 +09:00
Shinichiro Hamaji
fc235e360e mkdir: Fix the behavior for existing files
Currently, mkdir always succeeds for existing files and it
even modifies their mode. With this change, only mkdir -p for
existing directories will be allowed.
2017-04-01 23:43:13 +09:00
Shinichiro Hamaji
47acbb0e82 ln: Use basename when target directory is specfied
The following should work, but without this patch, it tries
to create the link as x/y and it fails with EEXIST.

$ mkdir -p x/y
$ ln -s -t . x/y
2017-04-01 23:22:14 +09:00
mpkh
16f1eab7d7 Merge pull request #1030 from shinh/ls-B
ls: Implement -B option
2017-04-01 16:28:16 +04:00
Shinichiro Hamaji
e4ad79f46e ls: Implement -B option 2017-04-01 19:47:52 +09:00
Nathan Ross
626a3b7611 Merge pull request #1029 from adeschamps/master
Partial implemantion of date.
2017-03-28 20:26:30 -04:00
Anthony Deschamps
f4dc03a29c Update Cargo.lock so date will build. 2017-03-27 00:06:23 -04:00
Anthony Deschamps
41d1dfaf44 Partial implemantion of date. 2017-03-26 23:43:29 -04:00
Jian Zeng
48931adffa Merge pull request #1028 from Scorpil/pinky_fix_test_macos
pinky: fix tests on MacOS
2017-03-18 11:38:49 +08:00
Andrew Savchyn
f5d08336fb pinky: fix tests on MacOS 2017-03-17 19:41:46 +01:00
Jian Zeng
daba29b832 Merge pull request #1026 from evestera/cat-numlines-notrailing
cat: fix for numbered lines w/ no trailing newline
2017-01-23 06:39:31 -06:00
Erik Vesteraas
21d9152cfe cat: Collect output state into a struct 2017-01-23 11:07:47 +01:00
Jian Zeng
b9916de804 Merge pull request #1025 from adeschamps/master
sort: Implement ignore-case
2017-01-23 03:41:16 -06:00
Erik Vesteraas
81996915df cat: fix for numbered lines w/ no trailing newline
Make at_line_start persist between printing each file. This fixes an
issue when numbering lines in the output and one of the input files
does not have a trailing newline.
2017-01-23 03:34:47 +01:00
Anthony Deschamps
6dc1eb54c0 sort: Implement ignore-case
Test included.
2017-01-21 13:30:22 -05:00
mpkh
4a16514d2c Merge pull request #1024 from DaanHoogland/master
create redox feature as subset of generic
2017-01-15 20:16:02 +04:00
Daan Hoogland
cd1f0690d7 create redox feature as subset of generic 2017-01-15 13:48:33 +01:00
Alex Lyon
e0bfbc3c23 Merge pull request #1020 from KeenS/ls-inode
ls: implement -i option
2017-01-10 00:34:35 -08:00
Sunrin SHIMURA (keen)
20b336ed3c remove redundant space 2017-01-10 10:37:34 +09:00
mpkh
a03b5279f3 Merge pull request #1022 from millerjs/cat-domain-sockets
add cat support for unix domain sockets
2017-01-09 08:27:24 +04:00
Joshua Miller
133934f7cf add cat support for unix domain sockets
- adds conditional supports for unix domain sockets
   - adds unix domain socket test
   - adds Results to functions, removing unwraps
   - uutils `cat` used to panic on broken stdout pipes (e.g. `cat
     /dev/zero | head -c1`).  this is fixed in this PR
   - updated to exit 0 on success, and 1 if an error occurs.
   - adds docstrings
   - adds an error log on printing a directory
   - adds categorization of other filetypes for extensible
     differentiation of behaviors
   - adds OutputOptions struct to replace params for extensibility
   - adds correct status code on exit
2017-01-08 19:56:35 -06:00
Sunrin SHIMURA (keen)
59e4bc431a ls: return String, not Option<String> 2016-12-26 12:27:06 +09:00
Sunrin SHIMURA (keen)
8a51ddf6fb ls: implement -i option 2016-12-25 14:39:29 +09:00
Jian Zeng
62d5a6bbc8 Merge pull request #1018 from Minoru/bugfix/1017-mkdir-p-with-existing-dir
mkdir: trying to create existing dir is fine
2016-12-23 10:34:02 -06:00
Alexander Batischev
67ac0c13b8 mkdir: trying to create existing dir is fine
Fixes #1017.

test_mkdir_dup_dir asserted that creating an existing directory is an
error, but that's not how GNU coreutils behaves. This has been reported
in #121, but wasn't fixed (only the `-p` case was).
2016-12-23 18:47:38 +03:00
Jian Zeng
65b46314a2 Merge pull request #1015 from Minoru/feature/846-tail-pid
tail: implement --pid
2016-12-22 07:24:45 -06:00
Alexander Batischev
f2166fed0a tail: implement --pid. Closes #846.
Kudos to zHz for helping out with Windows API part.
2016-12-22 01:32:09 +03:00
mpkh
b596df9a0a Merge pull request #1016 from uutils/fix-out-dir
tests: expand $OUT_DIR at compile time
2016-12-20 11:01:42 +04:00
knight42
fdbbb08aef tests: expand $OUT_DIR at compile time 2016-12-20 03:28:47 +08:00
Jian Zeng
2660bb4fc3 Merge pull request #1014 from Minoru/bugfix/umask-independent-test
tests/chmod: don't make assumptions about umask
2016-12-19 05:47:49 -06:00
Alexander Batischev
655804cff4 tests/chmod: protect umask with a mutex
`test_chmod_ugoa` and `test_chmod_many_options` both change umask, which
is global state. Since tests run concurrently, this might lead to
a situation where one of the tests changes umask to a value that screws
another test's checks. To prevent this, we introduce a mutex that should
be held by any test that changes umask.

Unfortunately, there's no way to hide umask behind this mutex and
enforce its usage: programmers will have to maintain the discipline
themselves.
2016-12-19 13:14:38 +03:00
Alexander Batischev
60f6f61ac9 tests/chmod: don't make assumptions about umask
`test_chmod_many_options` relied on user's umask not denying read access
for anyone. 022, which is the default umask for many, indeed allows read
access for everyone. I'm using 027, which disallows read for everyone
but owner and group. This made tests fail.

Now tests set and reset umask, ensuring checks are run in a reliable,
predictable environment.
2016-12-19 13:07:18 +03:00
Jian Zeng
797281936c Merge pull request #1010 from antiagainst/fuchsia
Enable compilation of more and ls on Fuchisa.
2016-12-18 21:41:13 -06:00
Lei Zhang
e57f987190 All generic utilities compilable on Fuchsia now. 2016-12-14 23:29:40 -05:00
Lei Zhang
c36917b35f Update dependencies.
libc v0.2.18 adds support for Fuchsia.
2016-12-14 23:29:40 -05:00
Lei Zhang
a34cd30f54 Enable compilation of ls on Fuchsia.
This updates the dependency of pretty-bytes to v0.2.
2016-12-14 23:29:38 -05:00
Lei Zhang
ba244794f0 Enable compilation of more on Fuchisa. 2016-12-08 13:08:17 -05:00
mpkh
fd7be06e5b Merge pull request #1011 from uutils/fix-build-error
Temporary fix for errors in testing
2016-12-08 10:38:07 +04:00
knight42
a0ff0f623a Temporary fix for errors in testing
The errors were caused by the missing env $OUT_DIR which should be set by
cargo.

[Related issue](https://github.com/rust-lang/cargo/issues/3368).
2016-12-08 12:36:07 +08:00
Alex Lyon
bb8e5b5824 Merge pull request #1008 from wimh/od-help
od: fix od --help
2016-12-04 20:02:29 -08:00
Wim Hueskes
829ea9f445 od: fix od --help 2016-12-04 22:24:36 +01:00
mpkh
a47d7d1a5b Merge pull request #1003 from Arcterus/fix-preserve-root
chgrp: fix more --preserve-root problems
2016-12-03 11:13:17 +04:00