Commit graph

2093 commits

Author SHA1 Message Date
nicoo
74054feb94 factor::factor: Remove extraneous call to the primality test
Another 6.97% runtime improvement
2020-05-24 15:41:23 +02:00
nicoo
e1a6dbe619 factor::table: Remove obsolete, commented code 2020-05-24 15:41:23 +02:00
nicoo
169740629b factor::table: Remove extraneous calls to the primality test
50% performance improvement on factoring all numbers between 2 and 10⁶.
2020-05-24 15:41:23 +02:00
nicoo
418fd61759 factor::factor: Short-circuit the fallback to Pollard's rho
When the remainder is smaller than the max. entry in the table,
it is guaranteed to be prime.
2020-05-24 15:41:23 +02:00
nicoo
bc11e57962 factor::factor: Use u64::trailing_zero instead of iterated division
No significant performance impact (most of the time is spent elsewhere),
but an easy and satisfying fix nevertheless.
2020-05-24 15:41:23 +02:00
nicoo
a1b2522750 factor: Move each factorisation method to its own module
Also decoupled the factorisation methods; now factor::factor contains
the logic that chains the different algorithms and aggregates results.

As a side-effect, rho::factor now performs extraneous allocations (as each
recursive step creates a new `Factors` value, which is then aggregated into
the previous one) but there is no significant performance impact.
2020-05-24 15:41:23 +02:00
nicoo
d9095a2539 factor: Refactor (eheh) around a Factors datatype
It is clearer to see what is going on, as opposed to passing around an
unmarked `Vec<u64>`, and there is a single place to add invariants checks.

This is also a more compact memory representation: each prime factor is
represented only once, with an additional byte for multiplicity.  The
performance impact is however not significant.
2020-05-24 15:41:23 +02:00
Sylvestre Ledru
75b7f768ea
fix(mv): Allow move across file systems (#1524)
Co-authored-by: Arni Dagur <arni@dagur.eu>
2020-05-24 12:49:56 +02:00
Sylvestre Ledru
272b66aac8
refactor(hostname): use clap instead of getopts for consistency (#1516)
* refactor(hostname): use clap instead of getopts for consistency

* deps ~ uucore/wide is required

Co-authored-by: Roy Ivy III <rivy.dev@gmail.com>
2020-05-22 17:27:03 +02:00
Sylvestre Ledru
817a237821
Merge pull request #1513 from sylvestre/uptime-since
feature(uptime): add option --since
2020-05-21 22:18:52 +02:00
Sylvestre Ledru
2fe2fe7275
be less prescriptive with clap versions (#1514) 2020-05-21 22:18:13 +02:00
Sylvestre Ledru
0a02aeda71
refactor(hostname): rely on the hostname crate (#1517) 2020-05-21 10:58:38 +02:00
Sylvestre Ledru
3994af5678
Update src/uu/uptime/src/uptime.rs
Co-authored-by: Roy Ivy III <rivy.dev@gmail.com>
2020-05-21 10:58:23 +02:00
Sylvestre Ledru
340b5badda
Update src/uu/uptime/src/uptime.rs
Co-authored-by: Roy Ivy III <rivy.dev@gmail.com>
2020-05-21 10:58:15 +02:00
Sylvestre Ledru
6bc9b38fa9 fix(cp): Remove an unused dep to the getops crate 2020-05-17 12:09:55 +02:00
Sylvestre Ledru
719f2bf8ae feature(uptime): add option --since
For this, I:
* moved from getops to clap
* remove the millisecond maths
2020-05-17 11:50:08 +02:00
Roy Ivy III
8e886c30dc
Merge pull request #1511 from sylvestre/more
fix(more) handle no arguments without panic; add test and a FixME
2020-05-15 19:17:01 -05:00
Sylvestre Ledru
80203a7a02 fix(more) Return a proper error message when no argument is provided
Fix #1509
2020-05-15 17:48:35 -05:00
Roy Ivy III
9052bc4de7
Merge pull request #1503 from sylvestre/arch
test(arch): add tests and description text
2020-05-10 20:11:10 -05:00
Anuvrat Parashar
ce064dc62e feature(head): Introduce NLines to handle negative lines parameters 2020-05-10 21:32:48 +02:00
Sylvestre Ledru
1565f4d1d9
Update src/uu/arch/src/arch.rs
Co-authored-by: Roy Ivy III <rivy.dev@gmail.com>
2020-05-10 21:05:38 +02:00
Roy Ivy III
6e77f99f61
Merge pull request #1507 from sylvestre/id
add/id ~ long option variant and tests
2020-05-10 12:21:07 -05:00
Sylvestre Ledru
a83fe2f098
Merge pull request #1508 from muskuloes/master
Flush output buffer for expand/unexpand commands
2020-05-09 21:17:58 +02:00
muskuloes
c84f89257e fix clippy warning: extract function 2020-05-09 19:28:13 +02:00
muskuloes
b4752e079f flush output of unexpand command as well 2020-05-09 19:28:13 +02:00
muskuloes
fb8f3ebf96 expand: flush output buffer 2020-05-09 19:28:13 +02:00
Sylvestre Ledru
91ac5343db
remove artifact 2020-05-09 10:23:03 +02:00
Sylvestre Ledru
9fb00df9b3 test(id): add tests for id 2020-05-09 00:14:10 +02:00
Sylvestre Ledru
90dfa70bd3 feature(id): add --user, --group & --groups 2020-05-09 00:07:04 +02:00
Sylvestre Ledru
437e3aeab7 style(sort): Fix a clippy warning 2020-05-07 23:13:11 +02:00
elgris
71ba8b3fd6 sort: add "dictionary-order" flag.
The flag makes 'sort' command ignore non-dictionary symbols
(non-alphanumeric and non-spaces). The only difference with GNU sort is
that it takes ALL alphanumeric symbols, not only ASCII ones.
2020-05-07 23:08:24 +02:00
Sylvestre Ledru
f44e5465b8 cleanup(yes, whoami): remove some old workaround to force cargo rebuilds 2020-05-06 23:39:49 +02:00
Sylvestre Ledru
16bf4b1893 test(arch): Add some tests 2020-05-06 00:39:13 +02:00
E5ten
2a61fc7f72 feature(uname): Add -o/--operating-system flag
The code for the flag already existed it had just not been added to the argument parsing. Replace "print the operating system name." in -s help text with "print the kernel name." so the -o option can use the previous -s help text.
2020-05-05 13:23:42 +02:00
Roy Ivy III
ab0ef90b4a refact/cat ~ fix style issues 2020-05-04 13:04:02 -05:00
Sylvestre Ledru
6294736d79 Merge branch 'fix-cat' of https://github.com/phungleson/coreutils into phungleson-fix-cat 2020-05-04 13:09:21 +02:00
Sylvestre Ledru
7e3f32d4db style(df): rustfmt src/uu/df/src/df.rs 2020-05-04 10:56:16 +02:00
Sylvestre Ledru
06fe387c76
Merge pull request #1495 from orottier/wc
wc: Do not decode UTF8 when only counting bytes/newlines
2020-05-04 10:54:18 +02:00
Otto Rottier
dab1b9ba1a
rustfmt src/uu/wc/src/wc.rs
Co-authored-by: Sylvestre Ledru <sledru@mozilla.com>
2020-05-04 07:45:30 +02:00
Roy Ivy III
f12c27a57d
Merge pull request #1487 from sylvestre/df-human
refactor and fix some `df` build and cosmetic issues
2020-05-03 15:15:14 -05:00
Roy Ivy III
23b49101c0 fix/df ~ fix build script for sub-crate builds 2020-05-03 14:54:57 -05:00
Roy Ivy III
81d85f398b fix/df ~ missing windows imports 2020-05-03 14:54:57 -05:00
Roy Ivy III
091a356807 fix/df ~ correct number suffix display by using number_prefix PrefixNames::symbol() 2020-05-03 14:53:13 -05:00
Otto Rottier
e3bd6b6848 wc: Do not decode UTF8 when only counting bytes/newlines 2020-05-03 20:39:09 +02:00
Sylvestre Ledru
fc83024ebe refactor(df): use number_prefix like 'ls' instead of doing the display by hand 2020-05-03 13:29:55 -05:00
Sylvestre Ledru
90de33d5d7 maint/df: relax the dependencies 2020-05-03 12:27:55 -05:00
Sylvestre Ledru
850bd9c32d fix(date): fix the date
Date didn't work out of the box.
Refactor it a bit to match other programs
2020-05-03 12:26:17 -05:00
Roy Ivy III
2d5d0680d8 fix(df) ~ fix lint complaint (unused import) 2020-05-03 12:00:42 -05:00
Sylvestre Ledru
8d1f0edfc4 refact(df): follow the same directory pattern than the other software 2020-05-03 11:51:33 -05:00
Sylvestre Ledru
c85756e509 fix(df): Linux: Fix the mount path and type 2020-05-03 11:51:33 -05:00
Sylvestre Ledru
8f6770401d feat(df): Add the support of path for df. ex: df /boot 2020-05-03 11:51:33 -05:00
Sylvestre Ledru
6e8c901204 fix: typo fixes found by codespell 2020-05-01 23:36:33 +02:00
Sylvestre Ledru
2aed7cb035 fix(df): Fix Windows support
- add required handleapi feature for winapi crate
- remove unneeded 'unsafe' section
- remove unused import (GetDiskFreeSpaceExW)
- fix Windows df execution

Co-Authored-By: Roy Ivy III <rivy.dev@gmail.com>
2020-04-28 13:16:19 -05:00
Sylvestre Ledru
f9456e80c3 fix(df): Add support for freebsd 2020-04-28 13:11:22 -05:00
Sylvestre Ledru
8545f03e0f fix(df): Improve MacOSX support 2020-04-28 13:11:21 -05:00
Sylvestre Ledru
dd1a212550 style(df): Fix warnings + cargo fmt
Co-Authored-By: Roy Ivy III <rivy.dev@gmail.com>
2020-04-28 13:11:04 -05:00
Sylvestre Ledru
d5228b5a64 feat(df) add 'df' uutil 2020-04-28 13:05:55 -05:00
Roy Ivy III
5aa2b039a5 change ~ fixup paths (within workspace packages) to common code 2020-04-14 13:46:19 -05:00
Roy Ivy III
78c362c8b5 change ~ fixup paths (within workspace packages) 2020-04-14 13:46:18 -05:00
Roy Ivy III
f0b0e3b867 change ~ reorganize code files 2020-04-14 13:46:18 -05:00
Sylvestre Ledru
cf35d75491 rustfmt the tests 2020-04-13 20:36:03 +02:00
Roy Ivy III
08a2cd0fc8
Merge pull request #1449 from rivy/add.cicd
Improves build and maint; fixes all testing issues; adds GHA CICD; fixes a long list of lints
2020-04-13 10:12:24 -05:00
Roy Ivy III
6a18d7f7be update ~ (maint!) use fixed/patched uucore (v0.0.2); await upgrade upstream
- fixes musl (no-utmpx) build bug
- fixes failing windows real{link,path} tests
2020-04-12 22:39:55 -05:00
Roy Ivy III
b8da0d7a8c maint/docs ~ add license notation to all workspace packages 2020-04-12 16:57:11 -05:00
Roy Ivy III
d704fb2b61 printf: refactor ~ remove redundant string allocation 2020-04-12 16:56:05 -05:00
Roy Ivy III
3e3dff3a57 ls: refactor ~ improve line bundling of imports 2020-04-12 16:56:05 -05:00
Roy Ivy III
84f05f209c expand: refactor/polish ~ simplify if condition 2020-04-12 16:56:04 -05:00
Roy Ivy III
ecb8f2873a refactor ~ change repair of 'fix cargo clippy complaints (fatal/same if clause)'
.# [why]

The initial refactoring/repair led to comments within if conditions which is
objectionable to some of the devs. So, this changes the refactor to completely split
the if clauses into separate if statements (with corresponding commentary).

Note: this refactor is "less mechanical" and does increase the risk of changing the
actual effect of the code. But the change is small and the tests are passing.
2020-04-12 16:56:04 -05:00
Roy Ivy III
156502a332 refactor ~ reduce excessive use of scope prefixes 2020-04-12 16:56:04 -05:00
Roy Ivy III
78d55f0e32 refactor/polish ~ fix cargo clippy complaints (fix/remove allow range_plus_one) 2020-04-12 16:56:04 -05:00
Roy Ivy III
1c97a29a56 maint/build ~ refactor dependency specifications (sorted, single lines) of 'Cargo.toml' 2020-04-12 16:56:04 -05:00
Roy Ivy III
7e15375d82 refactor ~ clean up main directory (move '{mk,uu}main.rs' into src/#common) 2020-04-11 18:50:12 -05:00
Roy Ivy III
9675addc50 refactor/polish ~ fix cargo clippy complaints (skip_while_next) 2020-04-11 18:50:11 -05:00
Roy Ivy III
0cf704a1bf refactor/polish ~ fix cargo clippy complaints (wildcard_in_or_patt) 2020-04-11 18:50:11 -05:00
Roy Ivy III
5224c3cd49 refactor/polish ~ fix rustc complaints (unused_parens) 2020-04-11 18:50:11 -05:00
Roy Ivy III
ecc895e7a1 refactor/polish ~ fix cargo clippy complaints (iter_nth_zero) 2020-04-11 18:50:11 -05:00
Roy Ivy III
ce0bb218a7 refactor/polish ~ fix cargo clippy complaints (deprecated std::error::Error::description) 2020-04-11 18:50:11 -05:00
Roy Ivy III
0635c5fe93 refactor/polish ~ fix cargo clippy complaints (unused_parens) 2020-04-11 18:50:11 -05:00
Roy Ivy III
c484fb8065 refactor/polish ~ fix cargo clippy complaints (missing_safety_doc; with ToDO for safety note) 2020-04-11 18:50:10 -05:00
Roy Ivy III
0fdf27c5c2 refactor/polish ~ fix cargo clippy complaints (iter_skip_next) 2020-04-11 18:50:10 -05:00
Roy Ivy III
84e26b3d0b refactor/polish ~ fix cargo clippy complaints (or_fun_call) 2020-04-11 18:50:10 -05:00
Roy Ivy III
9b145bb6c4 refactor/polish ~ fix cargo clippy complaints (unreadable_literal) 2020-04-11 18:50:10 -05:00
Roy Ivy III
75f05df119 refactor/polish ~ fix cargo clippy complaints (redundant_static_lifetimes) 2020-04-11 18:50:10 -05:00
Roy Ivy III
c4a69f2f4e refactor/polish ~ fix cargo clippy complaints (allow trivially_copy_pass_by_ref) 2020-04-11 18:50:10 -05:00
Roy Ivy III
1d26e901f9 fix 32-bit/i686 target builds 2020-04-11 18:50:09 -05:00
Sylvestre Ledru
deda30e3f5
Merge pull request #1421 from felixonmars/patch-1
Correct some typos in printf.rs
2020-04-08 19:03:57 +02:00
Son
a573a24d28 Add test 0 to 8 and 10 to 31 2020-02-09 14:18:21 +11:00
Son
7c9cc92163 Test write tab 2020-02-09 13:41:12 +11:00
Son
76ff2f5480 Test new line 2020-02-09 13:26:51 +11:00
Son
29729818f0 Empty test to start with cat 2020-02-09 11:18:18 +11:00
Roy Ivy III
5af8503a5e cargo fmt 2020-01-28 00:05:06 -06:00
Roy Ivy III
15722e3ace refactor/polish ~ fix cargo clippy complaints (unused imports) 2020-01-28 00:04:41 -06:00
Roy Ivy III
daecc56d47 refactor/polish ~ fix cargo clippy complaints (unwrap_or_else) 2020-01-27 22:35:28 -06:00
Roy Ivy III
b4866afb9a refactor/polish ~ fix cargo clippy complaints (deprecated uint64_t) 2020-01-27 22:35:28 -06:00
Roy Ivy III
a6bdad314d refactor/polish ~ fix cargo clippy complaints (allow deprecated mem::uninitialized)
.# [why]

`std::mem::MaybeUninit` is likely preffered. But `MaybeUninit` was not
stabilized until rust v1.36.0 and conversion from `mem::uninitialized` is
not obviously straight-forward at the moment.

So, 'std::mem::uninitialized' is allowed instead of increasing MinSRV to v1.36.0.

* ref: https://github.com/rust-lang/rust/blob/master/RELEASES.md
2020-01-27 22:35:28 -06:00
Roy Ivy III
082f9520b2 refactor/polish ~ fix cargo clippy complaints (allow useless_let_if_seq) 2020-01-27 22:35:28 -06:00
Roy Ivy III
d82a170351 refactor/polish ~ fix cargo clippy complaints (allow unreadable_literal {for dynamic code}) 2020-01-27 22:35:28 -06:00
Roy Ivy III
372ddf9222 refactor/polish ~ fix cargo clippy complaints (allow too_many_args) 2020-01-27 22:35:28 -06:00
Roy Ivy III
6c7c4788d8 refactor/polish ~ fix cargo clippy complaints (allow single_match) 2020-01-27 22:35:28 -06:00
Roy Ivy III
6230ab302a refactor/polish ~ fix cargo clippy complaints (allow range_plus_one; clippy bug workaround)
* ref: <https://github.com/rust-lang/rust-clippy/issues/4898>
2020-01-27 22:35:28 -06:00
Roy Ivy III
522d3ae1b6 refactor/polish ~ fix cargo clippy complaints (allow ptr_arg) 2020-01-27 22:35:27 -06:00
Roy Ivy III
b8c0711273 refactor/polish ~ fix cargo clippy complaints (allow ptr_arg) 2020-01-27 22:35:27 -06:00
Roy Ivy III
e80970cb92 refactor/polish ~ fix cargo clippy complaints (allow module_inception) 2020-01-27 22:35:27 -06:00
Roy Ivy III
cc49983314 refactor/polish ~ fix cargo clippy complaints (allow missing_safety_doc) 2020-01-27 22:35:27 -06:00
Roy Ivy III
df68c396c4 refactor/polish ~ fix cargo clippy complaints (allow map_clone)
.# [why]

Although `copied()` is preffered, it was not stabilized until rust v1.35.0.
So, 'map_clone' is allowed instead of increasing MinSRV to v1.35.0.

* ref: https://github.com/rust-lang/rust/blob/master/RELEASES.md
2020-01-27 22:35:27 -06:00
Roy Ivy III
99ce03f259 refactor/polish ~ fix cargo clippy complaints (allow many_single_char_names) 2020-01-27 22:35:27 -06:00
Roy Ivy III
44a60f773f refactor/polish ~ fix cargo clippy complaints (allow 'let_and_return') 2020-01-27 22:35:27 -06:00
Roy Ivy III
a90e1abbd8 refactor/polish ~ fix cargo clippy complaints (allow enum_variant_names) 2020-01-27 22:35:27 -06:00
Roy Ivy III
5241eca084 refactor/polish ~ fix cargo clippy complaints (allow comparison_chain {for f64 comparisons}) 2020-01-27 22:35:27 -06:00
Roy Ivy III
784887cc84 refactor/polish ~ fix cargo clippy complaints (allow comparison_chain) 2020-01-27 22:35:27 -06:00
Roy Ivy III
5094d6ffcc refactor/polish ~ fix cargo clippy complaints (allow complexity) 2020-01-27 22:35:26 -06:00
Roy Ivy III
37c9b0e331 refactor/polish ~ fix cargo clippy complaints ('better' ref use/toplevel_ref_arg) 2020-01-27 22:35:26 -06:00
Roy Ivy III
58779be6bb refactor/polish ~ fix cargo clippy complaints (transmute_ptr_to_ptr) 2020-01-27 22:35:26 -06:00
Roy Ivy III
1deac8df87 refactor/polish ~ fix cargo clippy complaints (new_ret_no_self) 2020-01-27 22:35:26 -06:00
Roy Ivy III
6131f6f0e1 refactor/polish ~ fix cargo clippy complaints (borrowed_box) 2020-01-27 22:35:26 -06:00
Roy Ivy III
8f2cdcfcb5 refactor/polish ~ fix cargo clippy complaints (trivially_copy_pass_by_ref) 2020-01-27 22:35:26 -06:00
Roy Ivy III
37a3db1819 refactor/polish ~ fix cargo clippy complaints (flat_map_identity) 2020-01-27 22:35:26 -06:00
Roy Ivy III
bffea950d9 refactor/polish ~ fix cargo clippy complaints (zero_ptr) 2020-01-27 22:35:26 -06:00
Roy Ivy III
248dfbac08 refactor/polish ~ fix cargo clippy complaints (comparison_chain) 2020-01-27 22:35:16 -06:00
Roy Ivy III
2ef9c9a28e refactor/polish ~ fix cargo clippy complaints (unnecessary_unwrap) 2020-01-27 21:33:53 -06:00
Roy Ivy III
7cc3571657 refactor/polish ~ fix cargo clippy complaints (remove unit value as function arg) 2020-01-27 21:33:53 -06:00
Roy Ivy III
8ec50b72d1 refactor/polish ~ fix cargo clippy complaints (inefficient to_string()) 2020-01-27 21:33:53 -06:00
Roy Ivy III
334406028c refactor/polish ~ fix cargo clippy complaints (remove useless lint attribute) 2020-01-27 21:33:53 -06:00
Roy Ivy III
aa2ed76846 refactor/polish ~ fix cargo clippy complaints (unneeded transmute) 2020-01-27 21:33:53 -06:00
Roy Ivy III
f933c60a41 refactor/polish ~ fix cargo clippy complaints (filter_map => filter) 2020-01-27 21:33:53 -06:00
Roy Ivy III
de9d702a32 refactor/polish ~ fix cargo clippy complaints (use enumerate) 2020-01-27 21:33:53 -06:00
Roy Ivy III
33e5d8c813 refactor/polish ~ fix cargo clippy complaints (into_iter => iter) 2020-01-27 21:33:53 -06:00
Roy Ivy III
d343d533ba refactor/polish ~ fix cargo clippy complaints (avoid as ...) 2020-01-27 21:33:53 -06:00
Roy Ivy III
66124454e3 refactor/polish ~ fix cargo clippy complaints (remove ->()) 2020-01-27 21:33:53 -06:00
Roy Ivy III
55b3e4ea24 refactor/polish ~ fix cargo clippy complaints (simplify enum element names/NumberMode) 2020-01-27 21:33:53 -06:00
Roy Ivy III
82dc40f0af refactor/polish ~ fix cargo clippy complaints (simplify enum element names/InteractiveMode) 2020-01-27 21:33:52 -06:00
Roy Ivy III
fd8e5acd57 refactor/polish ~ fix cargo clippy complaints (loop/match => while let) 2020-01-27 21:33:52 -06:00
Roy Ivy III
98039f176d refactor/polish ~ fix cargo clippy complaints (String => str) 2020-01-27 21:33:52 -06:00
Roy Ivy III
3bddf84aec refactor/polish ~ fix cargo clippy complaints (match => if let) 2020-01-27 21:33:52 -06:00
Roy Ivy III
600c40490b refactor/polish ~ fix cargo clippy complaints (map => if let) 2020-01-27 21:33:52 -06:00
Roy Ivy III
739c2d5793 refactor/polish ~ fix cargo clippy complaints (use is_ok) 2020-01-27 21:33:52 -06:00
Roy Ivy III
8b18b7c206 refactor/polish ~ fix cargo clippy complaints (use is_null) 2020-01-27 21:33:52 -06:00
Roy Ivy III
bb15dcf1b8 refactor/polish ~ fix cargo clippy complaints (use is_empty / is_none) 2020-01-27 21:33:52 -06:00
Roy Ivy III
2931c808b6 refactor/polish ~ fix cargo clippy complaints (collapse equal if blocks) 2020-01-27 21:33:52 -06:00
Roy Ivy III
b003d55fe1 refactor/polish ~ fix cargo clippy complaints (collapse if-if) 2020-01-27 21:33:52 -06:00
Roy Ivy III
b8eb763e43 refactor/polish ~ fix cargo clippy complaints (collapse else-if) 2020-01-27 21:33:52 -06:00
Roy Ivy III
2db6fb20c9 refactor/polish ~ fix cargo clippy complaints (needless_lifetimes) 2020-01-27 21:33:51 -06:00
Roy Ivy III
8c97f0eebb refactor/polish ~ fix cargo clippy complaints ('better' match indirection) 2020-01-27 21:33:51 -06:00
Roy Ivy III
ab87a1ab5f refactor/polish ~ fix cargo clippy complaints ('better' ref indirection) 2020-01-27 21:33:51 -06:00
Roy Ivy III
94c088f452 refactor/polish ~ fix cargo clippy complaints (redundant return variable) 2020-01-27 21:33:51 -06:00
Roy Ivy III
88a45a157b refactor/polish ~ fix cargo clippy complaints (redundant return) 2020-01-27 21:33:51 -06:00
Roy Ivy III
564168ccfc refactor/polish ~ fix cargo clippy complaints (redundant clone) 2020-01-27 21:33:51 -06:00
Roy Ivy III
2e90c78fae refactor/polish ~ fix cargo clippy complaints (redundant closure) 2020-01-27 21:33:51 -06:00
Roy Ivy III
fa8540cb15 refactor/polish ~ fix cargo clippy complaints (DRY struct def) 2020-01-27 21:33:51 -06:00
Roy Ivy III
ea8ed8d5da refactor/polish ~ fix cargo clippy complaints (&Vec => &[]) 2020-01-27 21:33:50 -06:00
Roy Ivy III
a72422fb0e refactor/polish ~ fix cargo clippy complaints (Vec<> => []) 2020-01-27 21:33:50 -06:00
Roy Ivy III
ec5ca193ac refactor/polish ~ fix cargo clippy complaints (char not string) 2020-01-27 21:33:50 -06:00
Roy Ivy III
11d68d3e51 refactor/polish ~ fix cargo clippy complaints (number readability) 2020-01-27 21:33:50 -06:00
Roy Ivy III
3da2a69e11 refactor/polish ~ fix cargo clippy complaints (unneeded String::from) 2020-01-27 21:33:50 -06:00
Roy Ivy III
bf6368269c refactor/polish ~ fix cargo clippy complaints (unneeded parens) 2020-01-27 21:33:50 -06:00
Roy Ivy III
1216378c72 refactor/polish ~ fix cargo clippy complaints (unneeded ref for copiable) 2020-01-27 21:33:50 -06:00
Roy Ivy III
bc558f301a refactor/polish ~ fix cargo clippy complaints (unneeded mut) 2020-01-27 21:33:50 -06:00
Roy Ivy III
25b1f98cf8 refactor/polish ~ fix cargo clippy complaints (unneeded format) 2020-01-27 21:33:50 -06:00
Roy Ivy III
3bff70967c refactor/polish ~ fix cargo clippy complaints (use starts_with()) 2020-01-27 21:33:50 -06:00
Roy Ivy III
e676447b3d refactor/polish ~ fix cargo clippy complaints (while let ... = some => for ... in) 2020-01-27 21:33:49 -06:00
Roy Ivy III
8142ecf325 refactor/polish ~ fix cargo clippy complaints (default/tests => let ... = if ...) 2020-01-27 21:33:49 -06:00
Roy Ivy III
d192ebea5b refactor/polish ~ fix cargo clippy complaints (unwrap_or_else) 2020-01-27 21:33:49 -06:00
Roy Ivy III
4ddc65f255 refactor/polish ~ fix cargo clippy complaints (String => str) 2020-01-27 21:33:49 -06:00
Roy Ivy III
2d95cfdcbd refactor/polish ~ fix cargo clippy complaints (remove allow unused_must_use) 2020-01-27 21:33:49 -06:00
Roy Ivy III
90a64a831a refactor/polish ~ fix cargo clippy complaints (for in => iter.take) 2020-01-27 21:33:49 -06:00
Roy Ivy III
1642933275 refactor/polish ~ fix cargo clippy complaints (if is_none => as_ref()?) 2020-01-27 21:33:49 -06:00
Roy Ivy III
88db11a328 refactor/polish ~ fix cargo clippy complaints (negation instead of * -1) 2020-01-27 21:33:49 -06:00
Roy Ivy III
3c2e609bfe refactor/polish ~ fix cargo clippy complaints (use values()) 2020-01-27 21:33:49 -06:00
Roy Ivy III
c6e9808224 refactor/polish ~ fix cargo clippy complaints (match function signatures) 2020-01-27 21:33:49 -06:00
Roy Ivy III
c6817aefb3 refactor/polish ~ fix cargo clippy complaints (or_else) 2020-01-27 21:33:49 -06:00
Roy Ivy III
413c64fa12 refactor/polish ~ fix cargo clippy complaints ('better' as println!()) 2020-01-27 21:33:48 -06:00
Roy Ivy III
291d2f5d48 refactor/polish ~ fix cargo clippy complaints ('better' as println!(...)) 2020-01-27 21:33:48 -06:00
Roy Ivy III
ba5a2435be refactor/polish ~ fix cargo clippy complaints (unneeded _) 2020-01-27 21:33:48 -06:00
Roy Ivy III
493f5f1496 refactor/polish ~ fix cargo clippy complaints (use +=/-= notation) 2020-01-27 21:33:48 -06:00
Roy Ivy III
768ed71725 refactor/polish ~ fix cargo clippy complaints (use b'...' notation) 2020-01-27 21:33:48 -06:00
Roy Ivy III
b276f4758f refactor/polish ~ fix cargo clippy complaints (iter.collect => to_vec) 2020-01-27 21:33:48 -06:00
Roy Ivy III
a9b1a03b37 refactor/polish ~ fix cargo clippy complaints (fatal/write_all) 2020-01-27 21:33:48 -06:00
Roy Ivy III
662db61336 refactor/polish ~ fix cargo clippy complaints (fatal/unneeded drop) 2020-01-27 21:33:48 -06:00
Roy Ivy III
181c9d6cae refactor/polish ~ fix cargo clippy complaints (fatal/unneeded clone) 2020-01-27 21:33:48 -06:00
Roy Ivy III
6043ac1cbd refactor/polish ~ fix cargo clippy complaints (fatal/temporary_cstring_as_ptr) 2020-01-27 21:33:48 -06:00
Roy Ivy III
1f5749e304 refactor/polish ~ fix cargo clippy complaints (fatal/same if clause) 2020-01-27 21:33:48 -06:00
Roy Ivy III
1f137c245f refactor/polish ~ fix cargo clippy complaints (fatal/cast_ptr_alignment) 2020-01-27 21:33:47 -06:00
Roy Ivy III
c969becbf8 refactor ~ remove unneeded mem::uninitialized() code
.# [why]

`mem::ununitialized()` is deprecated as of rust v1.39.0.

And this use is likely a premature optimization attempting to avoid
initializing the byte array to 0, which is usually a *very* fast operation.

* ref: <https://github.com/rust-lang/rust/blob/master/RELEASES.md>
* ref: <https://stackoverflow.com/questions/3654905/faster-way-to-zero-memory-than-with-memset>
2020-01-27 21:33:47 -06:00
Roy Ivy III
244bdf3d4f who: fix ~ remove unneeded/incorrect time format size change 2020-01-27 21:33:47 -06:00
Roy Ivy III
9416709c9c stat: fix birth/created time transformation 2020-01-27 21:33:47 -06:00
Roy Ivy III
45a04ce5fc refactor ~ replace deprecated trim_{left,right}... with trim_{start,end}...
- `trim_{start,end}{,_matches}` stabilized in rust v1.30.0
- `trim_{start,end}{,_matches}` deprecated (with compiler warnings) in rust v1.33.0

+ requires MinSRV >= v1.30.0

* ref: https://github.com/rust-lang/rust/blob/master/RELEASES.md
2020-01-27 21:33:47 -06:00
Roy Ivy III
c22cf215ba refactor/polish ~ convert to inclusive range operator syntax (..=)
- convert to newer `..=` syntax, fixing compiler warnings

+ requires MinSRV >= v1.26.0

.# [why]

The inclusive range operator (`..=`) was stabilized in rust v1.26.0.

Warnings requesting conversion from the old `...` operator to `..=` were
introduced in rust v1.37.0.

* ref: <https://github.com/rust-lang/rust/blob/master/RELEASES.md>
2020-01-27 21:33:47 -06:00
Roy Ivy III
55209c6490 cp: use CreateFileW to increase legacy windows compatiblity 2020-01-27 21:33:46 -06:00
Alex Lyon
2dad625dfa
Merge pull request #1402 from GabrielGanne/master
ls: fix --color flag
2020-01-27 15:20:43 -08:00
Sylvestre Ledru
0420d0849f uptime: match the gnu version output 2020-01-03 22:58:11 +01:00
bippityboppity
3511aa987a Add the 'dyn' keyword where necessary
The keyword is needed for trait objects and is intended to improve
readability.
https://doc.rust-lang.org/edition-guide/rust-2018/trait-system/dyn-trait-for-trait-objects.html
2019-10-01 18:34:26 +02:00
Felix Yan
f4b5d6c881
Correct some typos in printf.rs 2019-08-23 00:43:03 +08:00
Gabriel Ganne
64009b090f ls: implement --color=auto behavior
The automatic behavior is to turn on colors only of connected to a
terminal.
Introduce new external crate isatty to handle this.

Signed-off-by: Gabriel Ganne <gabriel.ganne@gmail.com>
2019-06-23 10:38:39 +02:00
Gabriel Ganne
edaf2d85cb ls: implement --color flag
GNU coreutils ls command implements the --color option as follow:
  --color[=WHEN]
          colorize the output; WHEN can be 'always' (default if omitted),
          'auto', or 'never'

With --color=auto, ls emits color codes only when standard output is connected
to a terminal.

Also, add support for the following aliases:
  - ‘always’, ‘yes’, ‘force’
  - ‘never’, ‘no’, ‘none’
  - ‘auto’, ‘tty’, ‘if-tty’

Signed-off-by: Gabriel Ganne <gabriel.ganne@gmail.com>
2019-06-23 10:35:30 +02:00
dependabot-preview[bot]
427381fd87
build: bump aho-corasick from 0.6.10 to 0.7.3
Bumps [aho-corasick](https://github.com/BurntSushi/aho-corasick) from 0.6.10 to 0.7.3.
- [Release notes](https://github.com/BurntSushi/aho-corasick/releases)
- [Commits](https://github.com/BurntSushi/aho-corasick/compare/0.6.10...0.7.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-21 07:17:27 +00:00
Alex Lyon
33a112d64b
Merge pull request #1400 from uutils/dependabot/cargo/num_cpus-1.10.1
build: bump num_cpus from 1.10.0 to 1.10.1
2019-06-18 09:25:35 -07:00
dependabot-preview[bot]
4b5dbcf995
build: bump num_cpus from 1.10.0 to 1.10.1
Bumps [num_cpus](https://github.com/seanmonstar/num_cpus) from 1.10.0 to 1.10.1.
- [Release notes](https://github.com/seanmonstar/num_cpus/releases)
- [Changelog](https://github.com/seanmonstar/num_cpus/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/num_cpus/compare/v1.10.0...v1.10.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-18 13:21:47 +00:00
dependabot-preview[bot]
642a2a4ecb
build: bump memchr from 1.0.2 to 2.2.0
Bumps [memchr](https://github.com/BurntSushi/rust-memchr) from 1.0.2 to 2.2.0.
- [Release notes](https://github.com/BurntSushi/rust-memchr/releases)
- [Commits](https://github.com/BurntSushi/rust-memchr/compare/1.0.2...2.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-17 16:21:06 +00:00
Alex Lyon
8575512895
Merge pull request #1389 from uutils/dependabot/cargo/glob-0.3.0
build: bump glob from 0.2.11 to 0.3.0
2019-06-17 09:18:43 -07:00
dependabot-preview[bot]
50aab8541d
build: bump glob from 0.2.11 to 0.3.0
Bumps [glob](https://github.com/rust-lang/glob) from 0.2.11 to 0.3.0.
- [Release notes](https://github.com/rust-lang/glob/releases)
- [Commits](https://github.com/rust-lang/glob/compare/0.2.11...0.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-15 22:35:35 +00:00
Alex Lyon
bc783edde7
Merge pull request #1388 from uutils/dependabot/cargo/byteorder-1.3.2
build: bump byteorder from 1.3.1 to 1.3.2
2019-06-15 15:34:20 -07:00
Alex Lyon
f1a4d5d4f7
Merge pull request #1393 from uutils/dependabot/cargo/itertools-0.8.0
build: bump itertools from 0.7.11 to 0.8.0
2019-06-15 15:33:56 -07:00
Alex Lyon
16daa41f38
Merge pull request #1392 from uutils/dependabot/cargo/regex-syntax-0.6.7
build: bump regex-syntax from 0.6.6 to 0.6.7
2019-06-15 15:33:45 -07:00
dependabot-preview[bot]
7a24f5e517
build: bump walkdir from 2.2.7 to 2.2.8
Bumps [walkdir](https://github.com/BurntSushi/walkdir) from 2.2.7 to 2.2.8.
- [Release notes](https://github.com/BurntSushi/walkdir/releases)
- [Commits](https://github.com/BurntSushi/walkdir/compare/2.2.7...2.2.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-13 12:59:42 +00:00
dependabot-preview[bot]
e7c3d2e381
build: bump itertools from 0.7.11 to 0.8.0
Bumps [itertools](https://github.com/bluss/rust-itertools) from 0.7.11 to 0.8.0.
- [Release notes](https://github.com/bluss/rust-itertools/releases)
- [Commits](https://github.com/bluss/rust-itertools/compare/0.7.11...0.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-13 12:59:16 +00:00
dependabot-preview[bot]
a0ca860f93
build: bump regex-syntax from 0.6.6 to 0.6.7
Bumps [regex-syntax](https://github.com/rust-lang/regex) from 0.6.6 to 0.6.7.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/regex-syntax-0.6.6...regex-syntax-0.6.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-13 12:59:04 +00:00
dependabot-preview[bot]
688e08127b
build: bump byteorder from 1.3.1 to 1.3.2
Bumps [byteorder](https://github.com/BurntSushi/byteorder) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/BurntSushi/byteorder/releases)
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md)
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.3.1...1.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-13 12:57:14 +00:00
Alex Lyon
ab8c2b021a env: fix build on Windows 2019-05-13 12:22:43 -07:00
Alex Lyon
18b19715f9 env: refactor and move away from pre-1.0 Rust conventions 2019-05-13 04:03:10 -07:00
Alex Lyon
b73a664677 Split off uucore into its own repository 2019-05-12 22:42:20 -07:00
Roy Ivy III
bbd0a26012 env: minor fixes and commentary polish 2019-05-09 19:06:32 -05:00
Alex Lyon
8a86c84461 uucore: allow the Linux zero-copy setup on Android 2019-05-01 21:15:01 -07:00
Alex Lyon
2019833fbb uucore: remove an inaccurate comment 2019-05-01 21:15:01 -07:00
Alex Lyon
b46e2289d6 uucore, yes: add zero-copy on supported platforms (only Linux currently) 2019-05-01 21:15:00 -07:00
Alex Lyon
7651d4d3fc Get rid of all warnings on Linux (or at least WSL) 2019-05-01 21:14:40 -07:00
Alex Lyon
db35eab23b Remove git dependencies 2019-05-01 21:14:39 -07:00
Alex Lyon
179de609b5 Replace trim_{left,right} with trim_{start,end} and co. (using Rerast) 2019-05-01 21:14:25 -07:00
Alex Lyon
c7d115b1ad Convert all try!() to ? 2019-05-01 21:14:25 -07:00
Alex Lyon
220e07dc95 Test on FreeBSD using Cirrus CI and link to the Discord in the README 2019-05-01 21:14:25 -07:00
Zachary Dremann
6fe687c84b Replace starts_with and slice with trim_left_matches 2019-04-30 21:02:29 -04:00
Zachary Dremann
34eceae2ef Don't allocate in signal_by_name_or_value 2019-04-29 21:53:14 -04:00
Zachary Dremann
8378c28242 Fix is_signal 2019-04-29 21:35:07 -04:00
Zachary Dremann
1ed8a016c1 Add tests for signals (including failing test for is_signal 2019-04-29 21:32:28 -04:00
Roy Ivy III
31655fc004 env: add support for new '--file' option (includes testing)
.# Discussion

This commit adds support for a '-f'/'--file' option which reads "KEY=VALUE" lines from
a config (or ini) style text file and sets the corresponding environment key. This is
modeled after the same option in the `dotenv` and `godotenv` commands. Notably, this
commit does *not* add automatic loading of ".env" configuration files.

The environment variables set by reading the configuration file are set prior to any
unset (eg, `-u BAR`) or set (eg, `FOO=bar`) actions. Files are loaded in order with
later files overwriting any overlapping environment variables, then, unset actions (in
command line order) are executed, then, finally, set actions (in command line order)
are executed.

[1] [`dotenv`](https://github.com/bkeepers/dotenv)
[2] [`godotenv`](https://github.com/joho/godotenv)
2019-04-29 09:50:22 -05:00
Roy Ivy III
9dc31cc1ce env: enhance support for windows commands (BAT/CMD, builtins)
.# Discussion

`env`/`uutils env` didn't support CMD built-in commands (dir, echo, erase, ...),
BAT/CMD files, nor the usual semantics for command search and execution via
PATHEXT (eg, it wouldn't find/execute `batch.BAT` when given just `batch`).

This patch executes the commands via a CMD subshell and fixes all of those issues.
2019-04-29 09:50:22 -05:00
Reto Habluetzel
905d01623d env: extend help for --null 2019-04-28 12:53:17 +02:00
Reto Habluetzel
2d2042c8fc env: reject program with --null, error stderr 2019-04-28 11:17:44 +02:00
Marcus Millin
7625878cd7 chown: change first file with --reference 2019-04-23 16:30:17 -05:00
Alex Lyon
01966e8aab
Merge pull request #1356 from Arcterus/echo-locked-stdout
echo: write using locked stdout
2019-04-08 15:57:02 -07:00
Alex Lyon
cefbe6c1f2
Merge pull request #1319 from rivy/fix.touch
fix ~ touch: fix and test for windows
2019-04-08 15:16:26 -07:00
Roy Ivy III
256a403caa touch: fix ~ use set_symlink_file_times() + remove unused code 2019-04-07 09:14:46 -05:00
Alex Lyon
42794e9f11 echo: write using locked stdout 2019-04-05 22:23:01 -07:00
Alex Lyon
23f6dbf2d3
Merge pull request #1306 from rinconjc/1235
tests: untrimmed stdout assertion (fix #1235)
2019-04-05 22:22:18 -07:00
Alex Lyon
dbc9527b00
Merge pull request #1336 from rinconjc/1321
Fix #1321 tsort handle self-loops
2019-04-05 19:15:23 -07:00
Alex Lyon
100f6df2bf
Merge pull request #1354 from ccbrown/rewrite-echo
echo: rewrite for readability and tests
2019-04-05 18:39:18 -07:00
Alex Lyon
5934666da3
Merge pull request #1338 from Arcterus/refactor-base32_64
base32, base64, uucore: merge base32/base64 code
2019-04-05 16:07:18 -07:00
Christopher Brown
1e223b0b58 echo: rewrite for readability and tests 2019-04-05 18:55:48 -04:00
Alex Lyon
94838dd54c
Merge pull request #1317 from rivy/fix.expr
fix ~ expr: update onig/onig_sys dependency (fixes windows compilation bug)
2019-04-03 16:03:26 -07:00
Alex Lyon
dd753e2c78
Merge pull request #1315 from rivy/fix.rm
fix ~ rm: fix dir-type symlink removal on windows
2019-04-03 15:53:00 -07:00
Alex Lyon
9817f297b7
Merge pull request #1304 from rivy/fix.cp
fix "`cp` always creates backup"
2019-04-03 15:51:18 -07:00
Alex Lyon
8d15f36977
Merge pull request #1305 from rivy/fix.mv
fix "`mv` fails transfers between dirs"
2019-04-03 15:50:32 -07:00
Roy Ivy III
e977e29d6a expr: fix ~ update onig/onig_sys dependency (fix windows compilation bugs)
* fixes compile bugs blocking compilation "onig_sys" (required for `expr`) on windows
  - MSVC/VS tools are no longer required to be prepped and available on the PATH (via
    `vsvarsall` or the "VCX command prompt")
  - GNU `gcc` compilation/targets are possible on windows
* restrict onig version to v4.3.2 (or later patches [only]; see discussion)

.# Discussion

onig v4.3.0/v4.3.1 inadvertently introduced a new minimum rust version (requiring
v1.31+; see https://github.com/rust-onig/rust-onig/issues/97). This was repaired with
v4.3.2 (requiring only v1.27.0+), and onig now specifies a rust minimum version that will
stay the same for patches, but may change between minor version increments.
2019-03-13 01:33:50 -05:00
Alex Lyon
f49395b1e8 base32, base64, uucore: merge base32/base64 code 2019-02-21 05:10:12 -08:00
Alex Lyon
39b5760f8e
Merge pull request #1307 from PaulCapron/master
Remove some useless BufReader wrappers around stdin
2019-02-21 04:26:32 -08:00
Julio Rincon
63bc9985e0 Fix #1321 tsort handle self-loops 2019-02-14 07:45:11 +11:00
Roy Ivy III
52c7f0aa34 mv: refactor try! to ? 2019-02-09 13:23:43 -06:00
Julio Rincon
29c6ad5f6a tests: untrimmed stdout assertion (fix #1235) 2019-02-08 07:54:48 +11:00
Roy Ivy III
41fb27e0a7 rm: fix dir-type symlink removal on windows 2019-02-07 08:30:51 -06:00
Roy Ivy III
1d64162218 cp: fix "cp always creates backup" 2019-02-07 08:22:41 -06:00
Roy Ivy III
fb1d844e14 mv: fix "mv fails transfers between dirs" 2019-02-07 08:19:22 -06:00
Roy Ivy III
556a96406c mv: improve error message 2019-02-07 08:19:22 -06:00
Roy Ivy III
e00d586af1 mv: fix failing tests 2019-02-07 08:19:22 -06:00
Alex Lyon
677953b2b6
Merge pull request #1314 from teresy/shorthand-fields
refactor: use shorthand fields
2019-02-07 00:41:00 -08:00
Alex Lyon
313ad332fa
Merge pull request #1290 from ArniDagur/ls-formatting
Change `ls -l -h` formatting to match GNU ls
2019-02-07 00:12:43 -08:00
Alex Lyon
8a7442d257
Merge pull request #1312 from E5ten/patch-3
Remove unused nlink
2019-02-07 00:08:46 -08:00
Alex Lyon
5a17daa963
Merge pull request #1281 from rivy/alt/win-cli-globbing
Add command line globbing to all utilities (for windows targets)
2019-02-06 23:21:53 -08:00
Rijnard van Tonder
436892269f refactor: use shorthand fields 2018-11-07 13:26:03 -05:00
E5ten
cc8899cb5b
Remove unused nlink
Now that --apparent-size does not use stat.nlink * stat.size, nlink is not used anywhere in du and can be removed from what I can see.
2018-10-30 10:49:08 -04:00
E5ten
13e57616b4
Fix --apparent-size on ext4 and MacOS
All credit goes to @JJJollyjim in this PR https://github.com/uutils/coreutils/pull/1294, but that PR needs to be rebased over master to be mergeable and hasn't been after multiple weeks.
2018-10-29 09:29:48 -04:00
Paul Capron
324cbad7a3 factor: Don’t wrap stdin in BufReader & use lock()
stdin() is already buffered.

Locking upfront explicitely avoid the overhead of mutex locking/unlocking
everytime a new line is read. See https://stackoverflow.com/a/17546731
and https://www.reddit.com/r/rust/comments/3rj54u/how_can_i_read_char_by_char_from_stdin/cwpojn1/

The code cannot be simplified to “for line in stdin().lock().lines()”
until non-lexical lifetimes are implemented. The compiler complains at
the moment about a temporary value not living long enough/being dropped
while still borrowed. See https://github.com/rust-lang/rust/issues/33520

This commit is related to issue #1103.
2018-10-24 15:21:05 +02:00
Paul Capron
bb9cc77858 Don’t wrap stdin in a BufReader when prompting
stdin() is already buffered.

stdin().read_line() calls stdin().lock() behind the hood (see
https://doc.rust-lang.org/src/std/io/stdio.rs.html#274)
Here we are reading user input, prompting them to confirm their action:
it seems useless to handle mutex locking/unlocking explicitely and
beforehand to avoid its overhead.

This commit is related to issue #1103.
2018-10-24 15:08:51 +02:00
Julio Rincon
4ac2de925d tee: handle '-' as filename (POSIX spec) fix #1278 2018-10-16 22:10:53 +11:00
Vinzent Steinberg
fe21c4b7fd Update to Rand 0.5 (#1288)
* factor: Update to Rand 0.5

* shuf: Update to Rand 0.5

* shred: Update to Rand 0.5

* mktemp: Update to Rand 0.5
2018-10-14 13:33:44 +04:00
cnd
1b1751d721
Merge pull request #1297 from E5ten/patch-1
Fix -b flag
2018-10-14 13:28:21 +04:00
Roy Ivy III
f56a7d30ba fix: remove unused parens 2018-10-14 00:41:14 -05:00
Roy Ivy III
c56f8f6807 fix: remove unused 'mut' 2018-10-14 00:41:14 -05:00
Roy Ivy III
16d39cafcc fix: remove unused imports 2018-10-14 00:41:14 -05:00
Roy Ivy III
197bd2e10c fix: gate unix-only macros (silences "unused" warnings) 2018-10-14 00:41:14 -05:00
Roy Ivy III
a66f7a7a53 fix: remove deprecated 'std::ascii::AsciiExt' 2018-10-14 00:41:14 -05:00
E5ten
9ff5d4f1f9
Update du.rs
Remove extra parentheses around 1
2018-10-09 21:35:13 -04:00
Alex Lyon
5008b4db2e
Merge pull request #1293 from JJJollyjim/master
numfmt: support neither or both of --to and --from
2018-10-09 18:06:49 -07:00
E5ten
4a0f3b31ab
Fix -b flag
Fixes #1295 , making -b act like `du --block-size=1 --apparent-size`, the reason it uses `stat.size` instead of `stat.nlink * stat.size` is explained in #1292 and the fix for that issue #1294 is mirrored by the use of `stat.size` here.
2018-09-30 22:24:01 -04:00
Ron Kuslak
b09ccaf6b1 Fix comparison of empty string to numeric f64 sort 2018-09-30 09:14:18 -05:00
Jamie McClymont
f3a71215bc numfmt: support neither or both of --to and --from
matches GNU behaviour
2018-09-25 01:42:11 +12:00
Marcus Millin
a19d6d9d7c hostid: remove old enum
Remove old arg parsing enum
2018-09-18 19:48:53 -05:00
Árni Dagur
3367d3d979
Switch to using rust-number-prefix from pretty-bytes 2018-09-18 22:16:34 +00:00
Árni Dagur
9207269791
Change 'ls -l -h' formatting to match GNU ls
Before:
-rw-r--r--  1 arni arni  2.02 kB 2018-09-14 21:07 CONTRIBUTING.md
-rw-r--r--  1 arni arni 78.75 kB 2018-09-14 23:41 Cargo.lock
-rw-r--r--  1 arni arni  6.92 kB 2018-09-14 21:07 Cargo.toml
-rw-r--r--  1 arni arni  1.05 kB 2018-09-14 21:07 LICENSE
-rw-r--r--  1 arni arni  5.98 kB 2018-09-14 21:07 Makefile
-rw-r--r--  1 arni arni 10.68 kB 2018-09-14 21:07 README.md
-rw-r--r--  1 arni arni  2.22 kB 2018-09-14 21:07 appveyor.yml
-rw-r--r--  1 arni arni   2.9 kB 2018-09-14 21:07 build.rs
-rw-r--r--  1 arni arni     15 B 2018-09-14 21:07 codecov.yml
drwxr-xr-x  2 arni arni   4.1 kB 2018-09-14 21:07 docs
-rw-r--r--  1 arni arni    973 B 2018-09-14 21:07 mkmain.rs
drwxr-xr-x 97 arni arni   4.1 kB 2018-09-14 21:07 src
drwxr-xr-x  3 arni arni   4.1 kB 2018-09-14 21:08 target
drwxr-xr-x  4 arni arni   4.1 kB 2018-09-14 21:07 tests
-rw-r--r--  1 arni arni     48 B 2018-09-14 21:07 uumain.rs

After:
-rw-r--r--  1 arni arni  2.02K 2018-09-14 21:07 CONTRIBUTING.md
-rw-r--r--  1 arni arni 78.68K 2018-09-16 20:39 Cargo.lock
-rw-r--r--  1 arni arni  6.92K 2018-09-14 21:07 Cargo.toml
-rw-r--r--  1 arni arni  1.05K 2018-09-14 21:07 LICENSE
-rw-r--r--  1 arni arni  5.98K 2018-09-14 21:07 Makefile
-rw-r--r--  1 arni arni 10.68K 2018-09-14 21:07 README.md
-rw-r--r--  1 arni arni  2.22K 2018-09-14 21:07 appveyor.yml
-rw-r--r--  1 arni arni   2.9K 2018-09-14 21:07 build.rs
-rw-r--r--  1 arni arni     15 2018-09-14 21:07 codecov.yml
drwxr-xr-x  2 arni arni   4.1K 2018-09-14 21:07 docs
-rw-r--r--  1 arni arni    973 2018-09-14 21:07 mkmain.rs
drwxr-xr-x 97 arni arni   4.1K 2018-09-14 21:07 src
drwxr-xr-x  3 arni arni   4.1K 2018-09-14 21:08 target
drwxr-xr-x  4 arni arni   4.1K 2018-09-14 21:07 tests
-rw-r--r--  1 arni arni     48 2018-09-14 21:07 uumain.rs
2018-09-16 20:42:11 +00:00
cnd
1f64d83d6f
Merge pull request #1284 from vks/clippy
Misc code clean up
2018-09-05 10:43:51 +04:00
cnd
35b1e47a63
Merge pull request #1285 from arsdragonfly/master
numfmt: add suffixes and fix negative numbers
2018-09-05 10:39:26 +04:00
Zheyu Shen
1af0484360 numfmt: add suffixes and fix negative numbers
Also refactors the code.
2018-09-04 18:27:21 -04:00
Vinzent Steinberg
bc78bcac7d Remove utf8 feature
All code it provides can be implemented with `std`.
2018-09-04 14:49:27 +02:00
Vinzent Steinberg
e46e3594d2 Fix more clippy warnings and remove redundant 'static 2018-09-04 14:33:36 +02:00
xplorld
47f5f12759 sort: treat "NaN" as string in numeric sort 2018-09-03 22:28:18 -07:00
Vinzent Steinberg
4034a322a2 Fix a few clippy warnings 2018-09-03 19:08:23 +02:00
Roy Ivy III
289c052600 uucore: fix: use updated 'wild' crate for globbing 2018-09-03 11:30:34 -05:00
Roy Ivy III
8684a148ca uucore: fix: use forked 'wild' crate with case-sensitivity + API fixes 2018-08-28 20:49:03 -05:00
Roy Ivy III
0af7fbbf3b uucore: Add globbing for Windows machines 2018-08-05 21:37:35 -05:00
Simon Vandel Sillesen
e30237a714 uniq: avoid allocations for the iterator 2018-07-24 10:53:09 +02:00
Simon Vandel Sillesen
781c9236e1 uniq: add more fast-paths to avoid work 2018-07-24 10:52:39 +02:00
Simon Vandel Sillesen
3288fa2cd2 uniq: avoid a upper-case map if we don't need to 2018-07-24 10:52:39 +02:00
Simon Vandel Sillesen
f233d8e5d7 uniq: avoid copying Strings all the time 2018-07-24 10:52:39 +02:00
Simon Vandel Sillesen
d624dbcfa0 uniq: do not allocate a new string in skip_fields
Instead, reuse the existing line and just view into that.
2018-07-24 10:48:52 +02:00
Simon Vandel Sillesen
caaea84097 uniq: refactor delimiters strings into enums 2018-07-11 23:16:42 +02:00
dependabot[bot]
19aea56351
Bump clippy from 0.0.211 to 0.0.212
Bumps [clippy](https://github.com/rust-lang-nursery/rust-clippy) from 0.0.211 to 0.0.212.
- [Release notes](https://github.com/rust-lang-nursery/rust-clippy/releases)
- [Changelog](https://github.com/rust-lang-nursery/rust-clippy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang-nursery/rust-clippy/compare/v0.0.211...v0.0.212)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-07-11 07:15:40 +00:00
Alex Lyon
6882558280
Merge pull request #1254 from bootandy/master
Fix expr
2018-07-10 21:42:28 -07:00
Alex Lyon
65d3812311
Merge pull request #1262 from uutils/dependabot/cargo/cpp_build-0.4.0
Bump cpp_build from 0.3.2 to 0.4.0
2018-07-10 21:40:50 -07:00
Alex Lyon
e528c38ac8
Merge pull request #1261 from uutils/dependabot/cargo/getopts-0.2.18
Bump getopts from 0.2.17 to 0.2.18
2018-07-10 21:40:38 -07:00
dependabot[bot]
20a236e39b
Bump cpp_build from 0.3.2 to 0.4.0
Bumps [cpp_build](https://github.com/mystor/rust-cpp) from 0.3.2 to 0.4.0.
- [Release notes](https://github.com/mystor/rust-cpp/releases)
- [Commits](https://github.com/mystor/rust-cpp/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-07-11 01:16:49 +00:00
dependabot[bot]
0b870c065f
Bump cpp from 0.3.2 to 0.4.0
Bumps [cpp](https://github.com/mystor/rust-cpp) from 0.3.2 to 0.4.0.
- [Release notes](https://github.com/mystor/rust-cpp/releases)
- [Commits](https://github.com/mystor/rust-cpp/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-07-09 07:50:33 +00:00
bootandy
4756eb5c19 Fix expr
expr now detects overflows and logs to stderr instead of overflowing the
input
https://github.com/uutils/coreutils/issues/1194
2018-07-08 21:24:25 +01:00
dependabot[bot]
2c796811ca
Bump getopts from 0.2.17 to 0.2.18
Bumps [getopts](https://github.com/rust-lang/getopts) from 0.2.17 to 0.2.18.
- [Release notes](https://github.com/rust-lang/getopts/releases)
- [Commits](https://github.com/rust-lang/getopts/compare/0.2.17...v0.2.18)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-07-06 07:17:46 +00:00
dependabot[bot]
e7d8f6b2d7
Bump clippy from 0.0.209 to 0.0.211
Bumps [clippy](https://github.com/rust-lang-nursery/rust-clippy) from 0.0.209 to 0.0.211.
- [Release notes](https://github.com/rust-lang-nursery/rust-clippy/releases)
- [Changelog](https://github.com/rust-lang-nursery/rust-clippy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang-nursery/rust-clippy/compare/v0.0.209...v0.0.211)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-07-01 19:17:17 +00:00
Alex Lyon
19253a066f
Merge pull request #1257 from uutils/dependabot/cargo/clap-2.32.0
Bump clap from 2.31.2 to 2.32.0
2018-07-01 12:13:52 -07:00
dependabot[bot]
bd556d9ae2
Bump aho-corasick from 0.6.4 to 0.6.5
Bumps [aho-corasick](https://github.com/BurntSushi/aho-corasick) from 0.6.4 to 0.6.5.
- [Release notes](https://github.com/BurntSushi/aho-corasick/releases)
- [Commits](https://github.com/BurntSushi/aho-corasick/compare/0.6.4...0.6.5)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-28 07:26:13 +00:00
dependabot[bot]
9883d82785
Bump clap from 2.31.2 to 2.32.0
Bumps [clap](https://github.com/kbknapp/clap-rs) from 2.31.2 to 2.32.0.
- [Release notes](https://github.com/kbknapp/clap-rs/releases)
- [Changelog](https://github.com/kbknapp/clap-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kbknapp/clap-rs/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-27 07:27:24 +00:00
Alex Lyon
d5e6259b4c
Merge pull request #1246 from uutils/dependabot/cargo/regex-1.0.1
Bump regex from 1.0.0 to 1.0.1
2018-06-25 09:24:46 -07:00
Alex Lyon
8c366cd4ea
Merge pull request #1251 from uutils/dependabot/cargo/half-1.1.1
Bump half from 1.1.0 to 1.1.1
2018-06-25 09:24:32 -07:00
dependabot[bot]
1ffebd1054
Bump chrono from 0.4.3 to 0.4.4
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.3 to 0.4.4.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/master/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.3...v0.4.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-25 07:25:17 +00:00
dependabot[bot]
1c38d5f97f
Bump half from 1.1.0 to 1.1.1
Bumps [half](https://github.com/starkat99/half-rs) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/starkat99/half-rs/releases)
- [Changelog](https://github.com/starkat99/half-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/starkat99/half-rs/compare/v1.1.0...v1.1.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-25 07:25:13 +00:00
dependabot[bot]
3e907e2a10
Bump regex from 1.0.0 to 1.0.1
Bumps [regex](https://github.com/rust-lang/regex) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.0.0...1.0.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-20 15:39:26 +00:00
dependabot[bot]
378292cdbd
Bump clippy from 0.0.208 to 0.0.209
Bumps [clippy](https://github.com/rust-lang-nursery/rust-clippy) from 0.0.208 to 0.0.209.
- [Release notes](https://github.com/rust-lang-nursery/rust-clippy/releases)
- [Changelog](https://github.com/rust-lang-nursery/rust-clippy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang-nursery/rust-clippy/compare/v0.0.208...v0.0.209)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-20 07:19:23 +00:00
dependabot[bot]
0cd807c404
Bump clippy from 0.0.207 to 0.0.208
Bumps [clippy](https://github.com/rust-lang-nursery/rust-clippy) from 0.0.207 to 0.0.208.
- [Release notes](https://github.com/rust-lang-nursery/rust-clippy/releases)
- [Changelog](https://github.com/rust-lang-nursery/rust-clippy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang-nursery/rust-clippy/compare/v0.0.207...v0.0.208)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-19 07:25:24 +00:00
Alex Lyon
5d22ae2af3
Merge pull request #1242 from TheGoddessInari/windows
uutils: Replace file_name with file_stem in symlink applet detection.
2018-06-18 08:53:30 -07:00
dependabot[bot]
c3423cdeff
Bump chrono from 0.4.0 to 0.4.3
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.0 to 0.4.3.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/master/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.0...v0.4.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-18 07:40:46 +00:00
TheGoddessInari
7cc0f1337c uutils: Replace file_name with file_stem in symlink applet detection.
This can get confused on Windows with powershell, where it passes .exe
for symlinks.
2018-06-17 23:07:28 -07:00
Alex Lyon
f0859c8094
Merge pull request #1239 from uutils/dependabot/cargo/unicode-width-0.1.5
Bump unicode-width from 0.1.4 to 0.1.5
2018-06-15 09:19:39 -07:00
Alex Lyon
cbc02b8a1a
Merge pull request #1238 from uutils/dependabot/cargo/clippy-0.0.207
Bump clippy from 0.0.206 to 0.0.207
2018-06-15 09:18:36 -07:00
Alex Lyon
5bea2624df
Merge pull request #1237 from uutils/dependabot/cargo/regex-1.0.0
Bump regex from 0.2.7 to 1.0.0
2018-06-15 09:18:15 -07:00
dependabot[bot]
f007268c9c
Bump unicode-width from 0.1.4 to 0.1.5
Bumps [unicode-width](https://github.com/unicode-rs/unicode-width) from 0.1.4 to 0.1.5.
- [Release notes](https://github.com/unicode-rs/unicode-width/releases)
- [Commits](https://github.com/unicode-rs/unicode-width/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-15 07:24:50 +00:00
dependabot[bot]
d5838b93dc
Bump clippy from 0.0.206 to 0.0.207
Bumps [clippy](https://github.com/rust-lang-nursery/rust-clippy) from 0.0.206 to 0.0.207.
- [Release notes](https://github.com/rust-lang-nursery/rust-clippy/releases)
- [Changelog](https://github.com/rust-lang-nursery/rust-clippy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang-nursery/rust-clippy/compare/v0.0.206...v0.0.207)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-15 07:24:45 +00:00
dependabot[bot]
be615fb7df
Bump regex from 0.2.7 to 1.0.0
Bumps [regex](https://github.com/rust-lang/regex) from 0.2.7 to 1.0.0.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/0.2.7...1.0.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-15 07:24:38 +00:00
dependabot[bot]
8ec1060de9
Bump itertools from 0.6.5 to 0.7.8
Bumps [itertools](https://github.com/bluss/rust-itertools) from 0.6.5 to 0.7.8.
- [Release notes](https://github.com/bluss/rust-itertools/releases)
- [Commits](https://github.com/bluss/rust-itertools/compare/0.6.5...0.7.8)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-15 07:24:33 +00:00
Alex Lyon
aab9a8a028
Merge pull request #1216 from uutils/dependabot/cargo/bit-set-0.5.0
Bump bit-set from 0.4.0 to 0.5.0
2018-06-14 17:34:48 -07:00
Alex Lyon
fe51245f54
Merge pull request #1232 from uutils/dependabot/cargo/regex-syntax-0.6.1
Bump regex-syntax from 0.6.0 to 0.6.1
2018-06-14 09:30:15 -07:00
dependabot[bot]
4a4877264c
Bump time from 0.1.39 to 0.1.40
Bumps [time](https://github.com/rust-lang/time) from 0.1.39 to 0.1.40.
- [Release notes](https://github.com/rust-lang/time/releases)
- [Commits](https://github.com/rust-lang/time/compare/0.1.39...0.1.40)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-14 07:22:03 +00:00
dependabot[bot]
ede1aa9ece
Bump regex-syntax from 0.6.0 to 0.6.1
Bumps [regex-syntax](https://github.com/rust-lang/regex) from 0.6.0 to 0.6.1.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/regex-syntax-0.6.0...regex-syntax-0.6.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-14 07:21:55 +00:00
dependabot[bot]
374fb4d4f1
Bump filetime from 0.1.15 to 0.2.1
Bumps [filetime](https://github.com/alexcrichton/filetime) from 0.1.15 to 0.2.1.
- [Release notes](https://github.com/alexcrichton/filetime/releases)
- [Commits](https://github.com/alexcrichton/filetime/compare/0.1.15...0.2.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-13 14:15:48 -07:00
dependabot[bot]
07cd07932d
Bump remove_dir_all from 0.2.0 to 0.5.1
Bumps [remove_dir_all](https://github.com/Aaronepower/remove_dir_all) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/Aaronepower/remove_dir_all/releases)
- [Changelog](https://github.com/Aaronepower/remove_dir_all/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Aaronepower/remove_dir_all/commits/v0.3.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-13 11:14:38 -07:00
Alex Lyon
bb27d74021
Merge pull request #1223 from uutils/dependabot/cargo/semver-0.9.0
Bump semver from 0.7.0 to 0.9.0
2018-06-13 07:04:37 -07:00
dependabot[bot]
2e22cbae9a
Bump quick-error from 1.2.1 to 1.2.2
Bumps [quick-error](https://github.com/tailhook/quick-error) from 1.2.1 to 1.2.2.
- [Release notes](https://github.com/tailhook/quick-error/releases)
- [Commits](https://github.com/tailhook/quick-error/compare/v1.2.1...v1.2.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-13 03:25:46 +00:00
dependabot[bot]
34aeb45d22
Bump semver from 0.7.0 to 0.9.0
Bumps [semver](https://github.com/steveklabnik/semver) from 0.7.0 to 0.9.0.
- [Release notes](https://github.com/steveklabnik/semver/releases)
- [Commits](https://github.com/steveklabnik/semver/compare/v0.7.0...v0.9.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-13 03:25:03 +00:00
Alex Lyon
443f600066
Merge pull request #1228 from uutils/dependabot/cargo/walkdir-2.1.4
Bump walkdir from 1.0.7 to 2.1.4
2018-06-12 20:22:54 -07:00
dependabot[bot]
c985387f5f
Bump walkdir from 1.0.7 to 2.1.4
Bumps [walkdir](https://github.com/BurntSushi/walkdir) from 1.0.7 to 2.1.4.
- [Release notes](https://github.com/BurntSushi/walkdir/releases)
- [Commits](https://github.com/BurntSushi/walkdir/compare/1.0.7...2.1.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-12 23:59:05 +00:00
Alex Lyon
f710d96edb
Merge pull request #1222 from uutils/dependabot/cargo/tempdir-0.3.7
Bump tempdir from 0.3.6 to 0.3.7
2018-06-12 16:58:52 -07:00
Alex Lyon
eedfc3ef57
Merge pull request #1219 from kupospelov/master
join: implement option to suppress joined lines
2018-06-12 09:50:06 -07:00
dependabot[bot]
be6754b7a8
Bump tempdir from 0.3.6 to 0.3.7
Bumps [tempdir](https://github.com/rust-lang/tempdir) from 0.3.6 to 0.3.7.
- [Release notes](https://github.com/rust-lang/tempdir/releases)
- [Commits](https://github.com/rust-lang/tempdir/compare/v0.3.6...v0.3.7)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-12 16:41:14 +00:00
Alex Lyon
f7d5858bdb
Merge pull request #1225 from uutils/dependabot/cargo/half-1.1.0
Bump half from 1.0.2 to 1.1.0
2018-06-12 09:38:55 -07:00
dependabot[bot]
9327f957bd
Bump rand from 0.3.22 to 0.4.2
Bumps [rand](https://github.com/rust-lang-nursery/rand) from 0.3.22 to 0.4.2.
- [Release notes](https://github.com/rust-lang-nursery/rand/releases)
- [Changelog](https://github.com/rust-lang-nursery/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang-nursery/rand/compare/0.3.22...0.4.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-12 07:26:39 +00:00
dependabot[bot]
485507be2b
Bump half from 1.0.2 to 1.1.0
Bumps [half](https://github.com/starkat99/half-rs) from 1.0.2 to 1.1.0.
- [Release notes](https://github.com/starkat99/half-rs/releases)
- [Changelog](https://github.com/starkat99/half-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/starkat99/half-rs/compare/v1.0.2...v1.1.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-12 07:26:12 +00:00
dependabot[bot]
fce51cec0b
Bump bit-set from 0.4.0 to 0.5.0
Bumps [bit-set](https://github.com/contain-rs/bit-set) from 0.4.0 to 0.5.0.
- [Release notes](https://github.com/contain-rs/bit-set/releases)
- [Commits](https://github.com/contain-rs/bit-set/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-11 19:57:56 +00:00
dependabot[bot]
3eea5703bf
Bump regex-syntax from 0.5.0 to 0.6.0
Bumps [regex-syntax](https://github.com/rust-lang/regex) from 0.5.0 to 0.6.0.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/regex-syntax-0.5.0...regex-syntax-0.6.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-11 17:51:25 +00:00
dependabot[bot]
c66dd59489
Bump libc from 0.2.39 to 0.2.42
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.39 to 0.2.42.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.39...0.2.42)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-11 17:13:54 +00:00
Konstantin Pospelov
e9fd9d623d join: implement option to suppress joined lines 2018-06-09 12:11:58 +03:00
Alex Lyon
2b063dd363
Merge pull request #1215 from uutils/dependabot/cargo/sha1-0.6.0
Bump sha1 from 0.2.0 to 0.6.0
2018-06-08 15:06:13 -07:00
dependabot[bot]
92727d3301
Bump sha1 from 0.2.0 to 0.6.0
Bumps [sha1](https://github.com/mitsuhiko/rust-sha1) from 0.2.0 to 0.6.0.
- [Release notes](https://github.com/mitsuhiko/rust-sha1/releases)
- [Commits](https://github.com/mitsuhiko/rust-sha1/compare/0.2.0...0.6.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-08 07:30:51 +00:00
dependabot[bot]
d1c18c01e9
Bump lazy_static from 1.0.0 to 1.0.1
Bumps [lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/rust-lang-nursery/lazy-static.rs/releases)
- [Commits](https://github.com/rust-lang-nursery/lazy-static.rs/commits/v1.0.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-08 07:30:48 +00:00
Alex Lyon
9b28029982
Merge pull request #1211 from uutils/dependabot/cargo/lazy_static-1.0.0
Bump lazy_static from 0.2.11 to 1.0.0
2018-06-07 09:08:24 -07:00
Alex Lyon
13aa3ede94
Merge pull request #1207 from uutils/dependabot/cargo/clippy-0.0.206
Bump clippy from 0.0.143 to 0.0.206
2018-06-07 08:45:23 -07:00
Alex Lyon
c814445c38
Merge pull request #1204 from uutils/dependabot/cargo/regex-syntax-0.5.0
Bump regex-syntax from 0.4.2 to 0.5.0
2018-06-07 08:44:07 -07:00
dependabot[bot]
c7fa56442a
Bump clippy from 0.0.143 to 0.0.206
Bumps [clippy](https://github.com/rust-lang-nursery/rust-clippy) from 0.0.143 to 0.0.206.
- [Release notes](https://github.com/rust-lang-nursery/rust-clippy/releases)
- [Changelog](https://github.com/rust-lang-nursery/rust-clippy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang-nursery/rust-clippy/compare/v0.0.143...v0.0.206)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-07 15:41:42 +00:00
dependabot[bot]
5b5aaa03c9
Bump lazy_static from 0.2.11 to 1.0.0
Bumps [lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs) from 0.2.11 to 1.0.0.
- [Release notes](https://github.com/rust-lang-nursery/lazy-static.rs/releases)
- [Commits](https://github.com/rust-lang-nursery/lazy-static.rs/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-07 07:25:48 +00:00
dependabot[bot]
d2aa1e30d2
Bump regex-syntax from 0.4.2 to 0.5.0
Bumps [regex-syntax](https://github.com/rust-lang/regex) from 0.4.2 to 0.5.0.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/regex-syntax-0.4.2...regex-syntax-0.5.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-07 01:34:32 +00:00
dependabot[bot]
516ee396de
Bump clap from 2.31.1 to 2.31.2
Bumps [clap](https://github.com/kbknapp/clap-rs) from 2.31.1 to 2.31.2.
- [Release notes](https://github.com/kbknapp/clap-rs/releases)
- [Changelog](https://github.com/kbknapp/clap-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kbknapp/clap-rs/commits/v2.31.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-06-07 01:34:24 +00:00
Alex Lyon
f25d4e1114
uucore: update data_encoding and add wrap_write() 2018-05-22 09:55:05 -07:00
Alex Lyon
4d89c2d796
Merge pull request #1197 from c-edw/master
mkdir: Silently fail in recursive mode if unable to create directories.
2018-05-03 02:12:24 -07:00
Connor E
62632faa63 Clean up with changes from Arcterus. 2018-05-03 08:40:01 +01:00
Alex Lyon
974f5def20 uptime: error when uptime cannot be found 2018-05-02 19:11:37 -07:00
Alex Lyon
f91c84bc05
Merge pull request #1191 from ProgVal/chmod-human-friendly
chmod, ls, uucore: Make chmod display human-friendly permissions
2018-05-02 15:36:35 -07:00
Valentin Lorentz
43aafd2f1c chmod: show human-friendly permissions when --changes or --verbose is used.
Like GNU chmod.
2018-05-02 23:23:05 +02:00
Alex Lyon
c50e7b5bc4
Merge pull request #1189 from ProgVal/unlink-nul-terminator
unlink: Add a nul-terminator after the file name before calling lstat.
2018-05-02 11:45:32 -07:00
Valentin Lorentz
f06972ccfd unlink: Use a NUL-terminated string when calling unlink(). 2018-05-02 19:13:36 +02:00
Alex Lyon
2eaabae507
Merge pull request #1192 from ProgVal/chmod-unimplemented
chmod: Remove '(unimplemented)' from the opt help.
2018-05-02 08:50:23 -07:00
Connor E
9d5631228a mkdir: Use std create_dir_all for recursive operations. 2018-05-01 12:42:11 +01:00
Connor E
e03ab6b554 mkdir: Silently fail in recursive mode if unable to create directories. 2018-05-01 12:07:23 +01:00
Valentin Lorentz
4ba6f13c2b chmod: Remove '(unimplemented)' from the opt help.
They are implemented now.
2018-04-22 21:38:30 +02:00
Alex Jiang
58b4075566 hostname: bug fix for non-windows xgethostname and add test case
Cstr::from_bytes_with_nul needs input bytes null terminated. Current
version does not include the last null byte, hence
Cstr::from_bytes_with_nul will panic with error 'FromBytesWithNulError {
kind: NotNulTerminated }'
2018-04-22 21:04:51 +08:00
Valentin Lorentz
dd0d23839a unlink: Add a nul-terminator after the file name before calling lstat. 2018-04-22 10:32:43 +02:00
Alex Lyon
b50aaf6456
du: pick format for convert_size() once and reverse UNITS (again) 2018-04-20 03:56:47 -07:00
Alex Lyon
da301be35c
du: capitalize input block size (e.g. turn 'kB' into 'KB') 2018-04-20 01:26:29 -07:00
Alex Lyon
b619e363db
du: clean up block size parsing code 2018-04-20 00:54:49 -07:00
Alex Lyon
8498e33099
Merge pull request #1176 from bootandy/du_input_refactor3
du: read block size environment variables
2018-04-20 00:23:53 -07:00
Konstantin Pospelov
4b8d4bfc05 join: fix autoformat
There was an issue with autoformat when the files had a different
number of columns in the first line. This commit fixes the issue and
extends the related test to cover this case.
2018-04-15 17:42:52 +03:00
Konstantin Pospelov
cd98478ce9 join: minor improvements
Move the code to get the current key into a separate function.
Replace two 'combine' functions with one defined for Input.
2018-04-15 17:33:02 +03:00
Konstantin Pospelov
7dc8ff62cc join: support headers 2018-04-11 22:55:44 +03:00
Michael Aaron Murphy
dddc773200 [ls] Add "-1" Flag & Fix Needless Vec 2018-04-10 22:13:21 -04:00
bootandy
f1497e43ce du: read block size environment variables
blocksize env variables are read if -B is not specified as a command
line argument.
blocksize is now case insensitive (like gdu).

fn translate_to_pure_number() pulled out from existing code which
populated the block size variable
2018-04-06 21:30:59 +01:00
Alex Lyon
8db47690b2
Merge pull request #1171 from bootandy/du_h
du -h: support GB
2018-04-05 15:41:33 -07:00
bootandy
0840c20ef4 du: support G T P E on -h
Allow -h (human readable form) to show sizes larger than MB
(This mimics original du behaviour)

Code refactored to remove duplication
2018-04-03 06:58:38 -04:00
Alex Lyon
87d317e22f
Merge pull request #1169 from bootandy/du
Fix Du mac/inodes
2018-03-28 10:33:06 -07:00
bootandy
838ce7b3e3 Fix issues raised in review
spelling
use POSIXLY_CORRECT and BLOCKSIZE env variables to determine block size.
move statics to const
use show_error! not show_info!
2018-03-24 18:03:34 -04:00
Alex Lyon
948dbd324e yes: choose between throughput and latency at compile-time 2018-03-22 04:22:34 -07:00
Alex Lyon
4941604362 yes: use 16 KiB rather than 8 KiB for the buffer 2018-03-22 03:31:41 -07:00
bootandy
b6c7771087 du: Fix double counting of hard links.
hard linked files are no longer counted - this mimcs the behaviour of
the original du.
2018-03-20 16:59:29 -04:00
bootandy
e253406026 du: Fix incorrect block size assumption.
du and other tools like stat assume a 512 byte block. ls is the only
tool to use 1024.

Add Simple set of tests
2018-03-20 16:59:29 -04:00
Ian Douglas Scott
fa867e93ea
Port 'tail' to Redox 2018-03-18 22:00:00 -07:00
Ian Douglas Scott
f76b23e3df
Port 'more' to Redox 2018-03-18 18:55:42 -07:00
Ian Douglas Scott
727d4843b8
Change static to const 2018-03-16 20:14:50 -07:00
Ian Douglas Scott
187006f0d3
test: handle symlinks in main match 2018-03-16 18:47:11 -07:00
Ian Douglas Scott
301b9002ce
Port test to Redox 2018-03-16 18:39:53 -07:00
Alex Lyon
3015a19230
Merge pull request #1157 from bootandy/master
Fix edge case for du on mac
2018-03-15 12:26:42 -07:00
bootandy
8f67c8fef2 du: refactor to use ? shortcut 2018-03-15 14:58:21 -04:00
Ian Douglas Scott
6f4b91db93
Build hashsum, join, ln, ls, mkdir, mktemp, nl, ptx, sort on Redox 2018-03-14 22:10:28 -07:00
bootandy
be79a70572 Refactor Stat::new to return Result
This was to remove the double call to fs::symlink_metadata
2018-03-14 16:26:22 -04:00
Ian Douglas Scott
1471e95b22
Make the 'cat' utility build on Redox 2018-03-14 10:21:12 -07:00
bootandy
f0e25e5537 Fix edgecase for du on mac
When du encounters a file that cannot be read it logs an error and
continues to analysise the rest of the directory. This behaviour brings
it inline with the original du.
2018-03-13 16:05:34 -04:00
Alex Lyon
f359507b58 yes: match the speed of GNU yes (on my machine) and remove allocs 2018-03-12 21:14:52 -07:00
Alex Lyon
bd557c87fb uucore: make features opt-in rather than opt-out 2018-03-12 20:21:38 -07:00
Alex Lyon
7b1554cc2c whoami: switch to clap 2018-03-12 19:28:32 -07:00
Alex Lyon
155fea53b2 yes: switch to clap and try to decrease allocs 2018-03-12 16:27:21 -07:00
Alex Lyon
880a4973c1 Format everything using rustfmt 2018-03-12 01:20:58 -07:00
Alex Lyon
00a8b0b0f1 uucore: remove utsname.rs (and replace with platform-info) 2018-03-11 18:50:36 -07:00
Alex Lyon
0b70b151b8 hostname: refactor a bit 2018-03-07 03:34:04 -08:00
Alex Lyon
6330474b4f hostname: add support for Windows (and maybe other systems too) 2018-03-06 16:40:08 -08:00
Alex Lyon
15aaa8215e uucore: read from sys:uname on Redox 2018-03-05 17:31:33 -08:00
Alex Lyon
8ba5fae6e3 cp, tail: update winapi 2018-03-04 18:38:33 -08:00
Alex Lyon
2d798bd601 expr, sync, whoami: update Oniguruma and winapi 2018-03-04 18:07:38 -08:00
Alex Lyon
5d241da7ca arch: add support for building on Windows 2018-03-04 17:58:16 -08:00
Alex Lyon
d8e738c49b tests: disable some chgrp tests when part of the root group
Some tests failed when run using Docker because they assumed the
user would never be root.  This is more of a band-aid solution.
An actual fix would be to test see if something like these tests
were to succeed when the user is root.
2018-03-03 12:04:22 -08:00
Alex Lyon
8ece01d0ef
who: fix heading in containers 2018-03-01 22:20:23 -08:00
Konstantin Pospelov
642633fe3b join: check line order 2018-02-11 18:23:12 +03:00
king6cong
e3fedddd17 remove nightly complier warnings 2018-02-09 19:49:57 +08:00
mpkh
37f3e3a151
Merge pull request #1137 from Arcterus/realpath-relpath-fix
realpath, relpath: fix on stable and beta (whoops)
2018-01-18 10:36:41 +04:00
Alex Lyon
91b7ae44d6 realpath, relpath: fix on stable and beta (whoops) 2018-01-17 15:35:42 -08:00
Konstantin Pospelov
186cb8853f join: fix code formatting 2018-01-17 23:26:00 +03:00
Konstantin Pospelov
128a38965e join: support custom empty filler 2018-01-17 23:26:00 +03:00
mpkh
2db220e820
Merge pull request #1136 from Arcterus/realpath-relpath-fix
Fix build on nightly
2018-01-17 12:12:02 +04:00
James McCoy
c82e94cae5
stat: Remove hard-coded path for mount information 2018-01-16 20:48:03 -05:00
James McCoy
81eef5dabf
stat: Avoid parsing mount info when showing filesystem info 2018-01-16 20:47:52 -05:00
Alex Lyon
e9f32fe170 realpath, relpath, tests: fix build on nightly 2018-01-16 15:11:46 -08:00
Bulat Musin
cc66229f16 add #[allow(unused_imports)] to std::ascii::AsciiExt
explicit import of std::ascii::AsciiExt is deprecated since 1.23
2018-01-08 11:32:38 +03:00
Konstantin Pospelov
12c5c951fb join: implement the -o option 2018-01-06 22:49:07 +03:00
Alex Lyon
49cf7c2a5b
Merge pull request #1127 from bltnkl/echo_refine
Slight improvements to echo
2018-01-06 10:38:46 -08:00
Bulat Musin
ec543508bc echo: refactor slightly 2018-01-06 17:05:04 +03:00
Bulat Musin
26ad240572 echo: reorder of match patterns
People write \n \t and \r \v much more
often than other escape sequences, so
it makes more sense to optimise for common
case, as match scans from top to bottom.
2018-01-06 17:01:50 +03:00
Bulat Musin
7ebda2de44 echo: rewrite two functions as closures 2018-01-06 17:01:24 +03:00
Bulat Musin
6afddc4d6a tail: squashed two commits
commit ceaeb5ec2a284555e6c061070c74b050efb129f0
Author: Bulat Musin <bulatmusin@outlook.com>
Date:   Thu Jan 4 11:01:29 2018 +0300

    tail: fix typo

commit 50e3568e460c7ec9786835c9795d1496a2463901
Author: Bulat Musin <bulatmusin@outlook.com>
Date:   Thu Jan 4 10:54:17 2018 +0300

    collapse similar changes into one commit

    commit a54df8d92d534b801b364c2e74635dfe282441d8
    Author: Bulat Musin <bulatmusin@outlook.com>
    Date:   Wed Jan 3 21:05:33 2018 +0300

        tail: add --silent option

    commit 5c9aec7e5bb5ff79f1421e5b33bf82809795bc64
    Author: Bulat Musin <bulatmusin@outlook.com>
    Date:   Wed Jan 3 20:43:36 2018 +0300

        tail: add spaces after hashes
2018-01-06 16:49:23 +03:00
Alex Lyon
3eee1b9ad6
Merge pull request #1074 from Heather/pwd_lp
pwd: add support for -L and -P options
2017-12-30 23:53:01 -08:00
Alex Lyon
ffc3c1d262
Merge pull request #1087 from ProgVal/faster-yes
Make 'yes' 1000 times faster.
2017-12-30 23:40:20 -08:00
Alex Lyon
cf7582cbd2
stdbuf: make build more reliable and allow installation using Cargo 2017-12-29 23:25:51 -08:00
Alex Lyon
feaae12d0a
cp: lock winapi to 0.2 for now 2017-12-29 03:31:13 -08:00
Alex Lyon
4deef05880
stdbuf: fix build warning 2017-12-28 22:12:44 -08:00
Alex Lyon
8ed383941d
Add Sphinx documentation to generate man pages 2017-12-28 22:02:58 -08:00
Alex Lyon
6d61b6805d
Merge pull request #1113 from tsliang/master
uname: change sysname flag to kernel-name
2017-12-27 03:23:40 -08:00
Tai Sassen-Liang
e79f5277ed uname: add missing paren 2017-12-27 11:57:06 +01:00
Tai Sassen-Liang
5d4e404765 uname: convert to clap; support obsolete option aliases 2017-12-27 11:29:06 +01:00
Alex Lyon
bc6d748a9e
Merge pull request #1119 from KeenS/install-ignore--c
install: ignore -c option for compatibility
2017-12-27 02:29:04 -08:00
Tai Sassen-Liang
c210d8d8c9 uname: change sysname flag to kernel-name
The --sysname flag in GNU uname was deprecated in 2002 and replaced by --kernel-name.
2017-12-27 11:24:29 +01:00
Sunrin SHIMURA (keen)
956a6aa1fb install: ignore -c option for compatibility 2017-12-27 17:52:53 +09:00
Sunrin SHIMURA (keen)
ee34206520 install: allow to install a file to a file 2017-12-27 17:31:19 +09:00
Alex Lyon
a1cf262414 rm: exit normally when -f is used with no operand 2017-12-26 15:36:21 -08:00
Konstantin Pospelov
4e0a0cf7bb join: implement the -t option 2017-12-24 16:22:48 +03:00
Konstantin Pospelov
743a5b68ed join: simplify closure for line parsing 2017-12-18 10:40:15 +03:00
Konstantin Pospelov
2a6d550f4b join: switch to clap 2017-12-17 16:36:46 +03:00
Konstantin Pospelov
d28e09de04 join: do not wrap stdin in BufReader 2017-12-16 19:26:25 +03:00
Konstantin Pospelov
3aa63ad9dd join: minor review points 2017-12-16 16:11:39 +03:00
Konstantin Pospelov
a04a77a477 join: switch to auto-generated main.rs 2017-12-16 16:09:46 +03:00
Konstantin Pospelov
b33ce67d91 join: implement basic functionality
The basic implementation of join with some tests. The supported
options: -1, -2, -j, -a, -i.
2017-12-14 00:02:42 +03:00
Cynede
908eaf610e
pwd: drop unused import 2017-12-11 14:50:56 +04:00
Cynede
6ef16b9221
pwd: fixes for UNC paths on Windows, match instead of plain unwrap 2017-12-11 14:49:20 +04:00
Mikhail Pukhlikov
f8e24439c9 pwd: add support for -L and -P options 2017-12-11 14:11:42 +04:00
Alex Lyon
26d6742c11
mknod, stdbuf: fix build 2017-12-11 00:27:38 -08:00
Alex Lyon
2e7f969404
chmod, install, uucore: fix build on Windows 2017-12-10 21:21:24 -08:00
Alex Lyon
479aeed9f6
mknod: use mode parsing in uucore 2017-12-10 21:10:26 -08:00
Alex Lyon
7aea948473
Remove pipe_* macros 2017-12-10 20:57:39 -08:00
Alex Lyon
6829ca3d10
chmod, install: move mode parsing into uucore 2017-12-10 20:11:05 -08:00
Alex Lyon
e2e77f8c70
du: only use snake case 2017-12-10 10:03:14 -08:00
Alex Lyon
2efd2b38be
du: remove inefficient multi-threading 2017-12-10 09:52:22 -08:00
Alex Lyon
9316fb4603
Merge pull request #1095 from ids1024/travis-redox2
Add cross build targeting Redox to Travis CI
2017-12-09 19:12:06 -08:00
Ian Douglas Scott
75141f0382
Fix cp build on Redox 2017-12-08 21:04:02 -08:00
Alex Lyon
2b4a685286
stdbuf: stop using GNU make as part of the build process 2017-12-08 18:50:18 -08:00
Alex Lyon
75f11e9635
Handle SIGPIPE correctly and autogenerate main() for each util 2017-12-08 15:05:07 -08:00
Alex Lyon
ecdafd830f
stdbuf: fix install on Macs 2017-11-18 21:54:01 -08:00
Alex Lyon
4ef2ef29cd
Fix broken tests due to updating Cargo.lock 2017-11-18 17:52:28 -08:00
Alex Lyon
8c846e2aa9
stdbuf: build shared library on Macs 2017-11-18 17:37:37 -08:00
Alex Lyon
de07c6218b
stdbuf: build the shared library again and fix the Makefile 2017-11-18 17:37:32 -08:00
Alex Lyon
4e034b02bd
Merge pull request #1076 from emielbeinema/remove-rust-crypto
Replace rust-crypto
2017-11-18 15:06:39 -08:00
Emiel Beinema
1e7ebcb9e1 hashsum: use macro for Digest implementation 2017-11-18 13:06:11 +01:00
Emiel Beinema
5d0c8895d9 hashsum: replace rustc_serialize with hex crate 2017-11-18 13:06:11 +01:00
Emiel Beinema
ff1ef82d84 hashsum: clean up and lock new dependencies 2017-11-18 13:06:11 +01:00
Emiel Beinema
b425d03a6b hashsum: replace rust-crypto crate 2017-11-18 13:06:07 +01:00
Emiel Beinema
0944f7bf6d hashsum: introduct local Digest trait 2017-11-18 13:05:59 +01:00
Alex Lyon
fc0e4cb98b
Merge pull request #1090 from shutefan/chmod-cleanup
chmod: avoid passing all args through function hierarchy
2017-11-15 13:12:12 -08:00
Alex Lyon
f7b97dc3d4
Merge pull request #1089 from flyrry/fix_env
fix --help and --version
2017-11-15 13:06:31 -08:00
Nathan Ross
517a263e25
Merge pull request #1088 from flyrry/cleanup_help
make cp print usage correctly
2017-11-14 17:55:31 -05:00
Nathan Ross
4f3a1772cb
Merge pull request #1091 from ykrivopalov/numfmt
Add numfmt
2017-11-14 17:54:00 -05:00
Gerald E Butler
0268cf75cd Added a check to see if the input file/path that ls is run on when using -l or other long options, that if the path part ends with '/' then it does not show it as a soft-link if it is a soft-link but, instead shows the directory contents of the directory the soft-link points to - see https://github.com/uutils/coreutils/issues/1093 2017-11-13 21:34:40 -05:00
Yury Krivopalov
b2ad51839b Add numfmt 2017-11-09 00:23:24 +03:00
shutefan
26b52f7604 chmod: avoid passing all args through function hierarchy 2017-11-01 18:15:54 +01:00
Sergei Mironenko
f0aa68aa1e fix --help and --version 2017-10-28 17:42:40 +03:00
Sergei Mironenko
d8c75e5ae4 make cp print custom usage only once 2017-10-25 19:40:02 +03:00
Valentin Lorentz
fe87116431 Make 'yes' 1000 times faster. 2017-10-21 21:23:06 +02:00
Alex Lyon
f2b952db54 Merge pull request #1082 from flyrry/finish_basename
basename: add -a, -s and -z flags
2017-10-09 11:33:06 -07:00
Sergei Mironenko
0b5a2c8743 basename: add -a, -s and -z flags 2017-10-09 11:02:12 +03:00
Alex Lyon
8ed510d49a Merge pull request #1080 from shutefan/add-truncate-to-tr
tr: add truncate flag
2017-10-07 15:55:51 -07:00
Alex Lyon
42be38f98f Merge pull request #1078 from shutefan/fix-warnings-in-cp
cp: fix compiler warnings
2017-10-07 15:52:26 -07:00
shutefan
4a96b56d60 cp: keep --preserve related code but ignore "unused" warnings 2017-10-06 21:54:00 +02:00
shutefan
ddbfafa684 tr: add truncate flag 2017-10-06 01:09:17 +02:00
shutefan
14160cab86 mv: split up uumain 2017-10-06 01:09:06 +02:00
shutefan
e1d41b84f3 travis: fix compiler warnings for 1.22 2017-10-06 00:49:43 +02:00
Alex Lyon
618531b366 Merge pull request #1079 from shutefan/add-quiet-flag-to-tail
tail: suppress headers when --quiet flag is used
2017-10-05 14:43:12 -07:00
shutefan
bf2a591b0a tail: suppress headers when --quiet flag is used 2017-10-05 21:25:21 +02:00
shutefan
82d6d24a97 cp: cast st_ino and st_nlink to u64 2017-10-05 20:34:08 +02:00
shutefan
83d25c0c70 cp: cast nNumberOfLinks to u64 2017-10-04 23:17:11 +02:00
shutefan
c20ce9bf74 cp: fix compiler warnings
Fixes seven compiler warnings in cp.rs:
- unused imports: `c_char`, `c_int`
  -> removed
- value assigned to `inode` is never read
  -> no more default value, immutable
- value assigned to `nlinks` is never read
  -> no more default value, immutable
- unused variable: `src_path`
  -> removed
- unused `std::result::Result` which must be used
  -> only in error on unsupported platforms (Windows) which is
     already handled with #[cfg(unix)]
- variable `preserve_context` is assigned to, but never used
  -> removed
- value assigned to `preserve_context` is never read
  -> see above, remove
2017-10-04 21:43:06 +02:00
Ian Douglas Scott
1a28a48ca3
Merge branch 'master' into expr-regex 2017-10-01 10:09:06 -07:00
Alex Lyon
ab259194f3 Merge pull request #1066 from Matt8898/master
cp: add support for --attributes-only and setting timestamps, links and xattrs
2017-10-01 01:43:09 -07:00
Yury Krivopalov
ac375d8b7d tr: add squeeze option 2017-09-21 22:15:05 +03:00
Yury Krivopalov
b4d8265a07 tr: generaze translation 2017-09-21 22:15:01 +03:00
Yury Krivopalov
c59e375c7a tr: use as_bytes on whole output string
On my environment on 1MiB file with this fix tr takes 30ms,
instead of 44ms without fix.
2017-09-21 22:14:56 +03:00
Matt8898
e33de238ca cp: add support for --preserve=all. 2017-09-13 16:21:33 +02:00
Matteo Semenzato
6476f6e616 cp: add support for preserving links on windows. 2017-08-23 15:20:23 +02:00
Matt8898
f7072b7dfe cp: add support for preserving links on unix. 2017-08-19 13:43:37 +02:00
Matt8898
4cb727f80b cp: Add support for preserving xattrs. 2017-08-19 13:42:44 +02:00
Matt8898
6d3e9eabe4 cp: add support for --preserve. 2017-08-19 13:42:44 +02:00
Matt8898
38dd8c5836 cp: use filetime to set timestamps. 2017-08-19 13:42:44 +02:00
Matt8898
03432db951 Added support for preserving timestamps. 2017-08-19 13:42:44 +02:00
Matt8898
48ae9b64ba cp: add support for --attributes-only. 2017-08-19 13:42:44 +02:00
Ian Douglas Scott
2853905ebc
install: Fix verbose mode
- Do not mark as unimplemented
- Use ascii quotes
- Print newline
2017-08-14 13:16:50 -07:00
Ian Douglas Scott
79d5d14d11
Make install work on Redox, by using fs::set_permissions
This is the same change I made earlier to chmod
2017-08-12 15:20:50 -07:00
Ian Douglas Scott
de4bee2321
mktemp fix for Redox 2017-08-12 15:17:37 -07:00
Ian Douglas Scott
13d97ee1cc
Correct behavior of cp -r with non-existent dest 2017-08-09 15:35:13 -07:00
Alex Lyon
c827795d17 Merge pull request #1056 from Matt8898/master
cp: add support for --reflink.
2017-07-28 23:34:47 -07:00
Matt8898
a73c74ecbc cp: add support for --reflink. 2017-07-28 10:42:21 +02:00
mpkh
61b15f5c1c Merge pull request #1061 from Arcterus/ls-fix
ls: fix line that was forgotten in #1057
2017-07-27 11:40:08 +04:00
mpkh
678cb5f81a Merge pull request #1060 from Arcterus/rm-refactor
rm: massive refactor
2017-07-27 11:29:04 +04:00
Alex Lyon
86aa1eb47a ls: fix line that was forgotten in #1057 2017-07-27 00:09:42 -07:00
Alex Lyon
b39689ac37 rm: massive refactor 2017-07-26 23:21:23 -07:00
Alex Lyon
4a5b76f678 Merge pull request #1057 from ids1024/ls
Fix ordering of ls -t, which was backwards
2017-07-26 21:18:00 -07:00
Ian Douglas Scott
3c3f5ab2a3
Fix ordering of ls -t, which was backwards 2017-07-26 20:57:44 -07:00
Ian Douglas Scott
b9446c0766
Make ls build on Redox 2017-07-25 16:26:36 -07:00
Ian Douglas Scott
99af79a7fa
Cast umask result, and comment about Redox 2017-07-23 17:28:16 -07:00
Ian Douglas Scott
d8494974bc
Make chmod use std where possible instead of libc; compile for Redox 2017-07-22 20:46:15 -07:00
Matt8898
32bd2843d5 cp: add support for --update 2017-07-22 12:03:26 +02:00
Joshua Miller
7dafb649d5 implement many copy flags
- Refactored towards extensibility
2017-07-16 19:20:07 -05:00
Joshua Miller
e8073d2596 pin dependencies 2017-07-15 15:16:09 -05:00
Alex Lyon
7ef27acb05 Merge pull request #1046 from Matt8898/cp
cp: Add -r flag
2017-07-02 14:12:08 -07:00
Alex Lyon
0c3a816148 expr: update onig to compile on Windows 2017-06-29 21:25:40 -07:00
Alex Lyon
7cfe0465ee Update for changes in regex 2017-06-29 20:59:20 -07:00
Arcterus
9abc3208d3 expr: implement regular expressions 2017-06-29 20:58:16 -07:00
Alex Lyon
eb75085595 Merge pull request #1035 from shinh/ln
ln: Fix how it selects the form
2017-06-29 20:33:33 -07:00
mpkh
ee9013215b Merge pull request #1044 from Shnatsel/fnv-hash-map
tr: use FnvHashMap instead of default HashMap backed by SipHasher
2017-06-02 13:56:13 +00:00
Matt8898
f4ea1a9cc5 cp: added -r/--recursive flag 2017-06-02 13:19:33 +02:00
Hiroki Noda
a30d732463 nproc: fix conditional compilation 2017-05-29 12:08:47 +09:00
Hiroki Noda
5e95d3752e nproc: fix comment position 2017-05-29 11:36:26 +09:00
Hiroki Noda
57dd3703d0 nproc: fix compilation on windows 2017-05-29 10:06:45 +09:00
Hiroki Noda
adb39d411b nproc: fix windows 2017-05-29 09:41:29 +09:00
Hiroki Noda
3a4b5ff8ed nproc: counts CPU cores via affinity mask if available on Linux
* Upgrade num_cpus crate to 1.5.0.
* Use sysconf(_SC_NPROCESSORS_CONF) when `--all` query given.
2017-05-29 08:56:33 +09:00
Sergey "Shnatsel" Davidoff
44cf7798bd tr: use FnvHashMap instead of default HashMap backed by SipHasher. FnvHashMap is much faster for small inputs like intergers, and we literally have a hashmap with chars as keys 2017-05-26 18:49:39 +03:00
Sergey "Shnatsel" Davidoff
c47ce19620 tr: use streaming instead of buffering the entire input and output 2017-05-24 17:58:04 +03:00
Matt8898
2a045fae37 uucore: add support for optflagmulti and optmulti. 2017-04-22 21:36:01 +02:00
theGeekPirate
589847aa2f Ensure "Linux" not targeted instead of "Linu" =D
#[cfg(not(target_os = "linux"))] spelling mistake
2017-04-19 00:18:29 -07:00
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
Shinichiro Hamaji
e4ad79f46e ls: Implement -B option 2017-04-01 19:47:52 +09:00
Anthony Deschamps
41d1dfaf44 Partial implemantion of date. 2017-03-26 23:43:29 -04: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
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
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
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
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
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
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
Wim Hueskes
829ea9f445 od: fix od --help 2016-12-04 22:24:36 +01:00
Arcterus
5d9437bcaf chgrp: remove unwrap() in is_bind_root() 2016-12-01 06:02:58 -08:00
Arcterus
dc6ba887ba uucore: compile on Windows again 2016-11-30 03:51:49 -08:00
Arcterus
f5fce8dadb chgrp: detect bind mounted root 2016-11-30 03:50:07 -08:00
Arcterus
3ab82f9a66 uucore: read symlinked directories correctly in resolve_relative_path() 2016-11-30 03:50:07 -08:00
Alex Lyon
c403270ac3 Merge pull request #992 from kevgeniy/master
cat utility refactoring
2016-11-30 03:24:05 -08:00
Alex Lyon
04fcd823cc Merge pull request #1002 from antiagainst/itertools
Update dependencies and solve deprecated warnings.
2016-11-30 03:11:43 -08:00
Alex Lyon
7ec754ec1b Merge pull request #985 from knight42/fix-preserve-root
chgrp: fix bug in option --preserve-root
2016-11-30 02:59:19 -08:00
Lei Zhang
7d7fc68dee Solve compiler warning about using deprecated item.
PutBackN::new() is replaced by put_back_n.
2016-11-29 12:57:09 -05:00
Michael Gehring
268fe45f24 Merge pull request #1000 from antiagainst/fuchsia
Add a new feature to list all utilities that can compile for Fuchsia right now
2016-11-26 10:01:55 +01:00
Joseph Crail
78d2e8db27 Fix comment spelling 2016-11-25 14:36:56 -05:00
Lei Zhang
59c12433e0 Add Fuchsia as recognized host OS in uname. 2016-11-24 17:30:03 -05:00
Lei Zhang
e37468b630 Turn off utmpx and signals for Fuchsia.
Fuchsia uses musl as its libc; musl only has stub implementation
for utmpx. From their wiki, that is deliberately chosen.

Fuchsia doesn't have signals mechanism.
2016-11-24 17:15:43 -05:00
Lei Zhang
a2071c258e Remove unnecessary dependencies on libc in various utilities. 2016-11-24 11:17:36 -05:00
mpkh
de8d96ff7c Merge pull request #994 from Will-W/windowsfixes
Windowsfixes
2016-11-19 16:34:31 +04:00
kevgeniy
6d13bcf2da cat: fixed indentation 2016-11-18 22:30:12 +03:00
Will Wykeham
0809dce4a2 Fix a number of Windows build warnings 2016-11-18 13:58:36 +00:00
Will Wykeham
d55e2ee80a Fix mv build on Windows 2016-11-18 13:58:13 +00:00
Lei Zhang
aaa7274b63 Remove unnecessary dependencies of getopts & libc for utilities. 2016-11-17 17:43:31 -05:00
Alex Lyon
4f5e8f4566 Merge pull request #965 from wimh/od
od: implement remaining functionality
2016-11-10 15:13:10 -08:00
Wim Hueskes
2550e0f3c7 od: several small changes after review
* update status in README.md
* enable busybox tests
  Adding `CONFIG_DESKTOP` and `CONFIG_LONG_OPTS` to busybox config.
  These flags also enable other tests, but those utilities are not
  included in `TEST_PROGS`. (eg. awk)
* fix whitespace and small issues
* fix Eq imp for FormatWriter on nightly + beta
* fix indention in multifilereader.rs
* fix intermittent errors in tests
2016-11-09 20:26:55 +01:00
Zephiris
0d0087053f ls: Fix '-aR' recursion.
ls with -aR was recursing infinitely becacuse it
added ./.. to every node. I don't see a way to
avoid this except by cloning when that option
is used.
2016-11-05 01:29:55 -07:00
Zephiris
606c1badd2 ls: Change symlink behavior to be more POSIX compliant.
Symlink directories are read by default, and symlink targets are listed on
Windows.
2016-11-05 00:22:55 -07:00
Zephiris
ca8f5516e9 ln: Make sure we can symlink directories on Windows. 2016-11-05 00:22:55 -07:00
kevgeniy
0d56009c3a cat: remove recursion 2016-10-24 20:18:44 +03:00
kevgeniy
6228b06e29 cat: remove libc dependency 2016-10-24 05:23:54 +03:00
kevgeniy
72490ef956 cat: rewrote most part of the code
Rewrote cat to eliminate code duplication and make it safe

  - UnsafeWriter is replaced by BufWriter
  - write_lines (any option except -T and -v) and write_bytes (-T and -v
    options) are replaced by single write_lines method. A new method use
    ``write_to_end``, ``write_tab_to_end`` or ``write_nonprint_to_end``
    method to write all symbols untill the end of line in the right way.
  - Benchmarking (-n, -T and -v options respectively):
    | old (ns/iter)              | new (ns/iter)              |
    | -------------------------- | -------------------------- |
    | 6,501,496 (+/- 1,173,481)  | 6,683,158 (+/- 373,539)    |
    | 8,634,023 (+/- 547,595)    | 5,408,676 (+/- 715,458)    |
    | 24,056,507 (+/- 1,177,445) | 30,879,788 (+/- 1,180,598) |
2016-10-24 04:51:40 +03:00
evgeniy
4a2b8e3c52 cat: conditional compilation added 2016-10-18 19:09:36 +02:00
kevgeniy
2060048c79 Fixed and made the comments clearer 2016-10-16 17:13:02 +02:00
evgeniy
dd16c58ab4 cat utility refactoring:
- Less if branches
 - Unnecessary range variable deleted
 - Optional fail-assertion commented
2016-10-16 12:43:23 +02:00
Wim Hueskes
046ff62af6 more: fix build on windows 2016-10-06 23:35:16 +02:00
Wim Hueskes
4f91662057 who: use i64 instead of time_t
fixes build on raspberry pi 2 (armv7-unknown-linux-gnueabihf)
2016-09-03 22:18:10 +02:00
Wim Hueskes
99f70ba648 od: implement 16-bit floating point type 2016-09-03 21:47:36 +02:00
Wim Hueskes
fd5879dcf2 od: refactor parse_formats.rs
simplified, more but shorter functions
2016-09-02 21:29:58 +02:00
Wim Hueskes
184c4af76d od: fix zero width user input (-w0) 2016-09-02 21:27:06 +02:00
Wim Hueskes
92fc286b0e od: refactor uumain into smaller functions 2016-09-02 21:26:43 +02:00
Wim Hueskes
2c24911d9c od: refactor: create struct for formatting info
also properly document the alignment algorithm.
2016-09-02 21:26:22 +02:00
Wim Hueskes
83a1ff404f od: refactor: create InputDecoder to convert input
It reads from the input and provides data conversion functions.
2016-09-02 21:26:00 +02:00
Wim Hueskes
283a29fd2c od: refactor IntWriter, do not require parameters
use macros to define a function for each format so byte_size
and print_width do not have to be provided by the caller.
2016-09-02 21:25:38 +02:00
Wim Hueskes
f2db897c47 od: refactor: reduce arguments of odfunc
Pass the input stream itself instead of the parameters required to
open it. Create InputOffset to handle functionality required for
the byte offset.
2016-09-02 21:25:17 +02:00
Wim Hueskes
d705dc46ce od: improve/extend --help text 2016-09-02 21:24:56 +02:00
Wim Hueskes
2f12b06ba1 od: implement --traditional 2016-09-02 21:24:29 +02:00
Wim Hueskes
26ec46835c od: implement +size to skip bytes 2016-09-01 00:24:29 +02:00
Wim Hueskes
9e33c3a48c od: fix command-line parsing of file names 2016-09-01 00:23:34 +02:00
Wim Hueskes
e8eab8d3e8 od: implement ascii dump 2016-09-01 00:23:11 +02:00
Wim Hueskes
cea4297fdf od: implement --format / -t 2016-09-01 00:20:02 +02:00
Wim Hueskes
d15604b2e4 od: fix and add tests for simple format args 2016-09-01 00:19:37 +02:00
Wim Hueskes
c2d61a294e od: refactor: separate mod for parse_format_flags 2016-09-01 00:19:15 +02:00
Wim Hueskes
69bde1170d od: finish multi-byte support 2016-09-01 00:14:50 +02:00
Wim Hueskes
459db47c2b od: implement --skip-bytes and --read-bytes 2016-09-01 00:14:25 +02:00
Wim Hueskes
2b10cc47ff od: implement Read for MultifileReader
also add tests and fix error handling
2016-09-01 00:14:02 +02:00
Wim Hueskes
c15936ad68 od: fix performance issue with large values of -w
like -w100000000 or larger
2016-09-01 00:13:39 +02:00
Wim Hueskes
bd0424fa0c od: start with multi-byte support 2016-09-01 00:13:21 +02:00
Wim Hueskes
1164b9e118 od: fix file byte offset for non-octal types
removed binary offset, added no offset.
2016-09-01 00:12:59 +02:00
Wim Hueskes
24fb6d66c4 od: proper align different sized output 2016-09-01 00:12:37 +02:00
Wim Hueskes
45895be96d od: use structs to specify possible dump formats
remove extra padding too - preparing proper allignment
2016-09-01 00:12:11 +02:00
Wim Hueskes
f7d7beb79b od: implement --endian 2016-09-01 00:11:52 +02:00
Vladimir Matveev
d18be30c8a od: add byteorder_io
copied from: https://github.com/netvl/immeta/blob/4460ee/src/utils.rs
workaround for: https://github.com/BurntSushi/byteorder/issues/41
2016-09-01 00:11:42 +02:00
Wim Hueskes
4770690823 od: suppress duplicates 2016-09-01 00:11:23 +02:00
Wim Hueskes
80386ef04f od: split odfunc() 2016-09-01 00:11:02 +02:00
Wim Hueskes
e006a84136 od: refactor: do all printing in odfunc 2016-09-01 00:10:40 +02:00
Wim Hueskes
36b88f268d od: enable hexadecimal output 2016-09-01 00:10:23 +02:00
Wim Hueskes
e905c2ec71 od: do not panic on invalid user input
use macros from uucore where possible
2016-09-01 00:10:02 +02:00
Wim Hueskes
167d7d3ca9 od: implement -w (width) 2016-09-01 00:09:45 +02:00
Wim Hueskes
1b01f02e9e od: remove trailing spaces in output
can't find documentation confirming this behaviour
besides it does not work correctly on all formats
see also uutils/coreutils#922
2016-09-01 00:09:25 +02:00
Wim Hueskes
f45169d37c od: refactor: split into modules 2016-09-01 00:09:04 +02:00
Wim Hueskes
104f8eb509 od: implement 64-bit floating point output 2016-09-01 00:08:41 +02:00
Wim Hueskes
f53aefa7e9 od: implement 32-bit floating point output 2016-09-01 00:08:25 +02:00
Wim Hueskes
5c495359c1 od: refactor: convert bytes using byteorder crate 2016-09-01 00:08:00 +02:00
Wim Hueskes
3e143217a9 od: refactor sign_extend
easier to understand algoritm which does not use unsafe
2016-09-01 00:01:55 +02:00
Wim Hueskes
e0b7ff1953 od: implement --help and --version 2016-09-01 00:01:35 +02:00
Alex Lyon
362cabe1a6 hashsum: implement SHAKE-128 and SHAKE-256 2016-08-30 17:33:18 -07:00
knight42
f8bd9e2a1b chown,chgrp: fix bug in option --preserve-root 2016-08-29 11:19:15 +08:00
knight42
d0196b82ad touch: respect -h 2016-08-28 07:12:25 +08:00
knight42
89ac03d1c2 uucore::fs: add fn resolve_relative_path 2016-08-28 00:02:58 +08:00
knight42
136ca4e197 chgrp,chown: fix bug in option --preserve-root 2016-08-28 00:02:58 +08:00
Martin Kysel
23bab3df69 moved more to unix utils, minor review updates 2016-08-23 11:40:09 +01:00
Martin Kysel
a90aec3f1b add author name 2016-08-23 10:50:45 +01:00
Martin Kysel
7d77b9720d Initial more implementation 2016-08-23 10:45:51 +01:00
Nathan Ross
ae0e1c4768 Merge pull request #977 from knight42/chgrp
Implement chgrp
2016-08-21 06:39:54 -04:00
Knight
9dda0bcd25 chgrp: implemented 2016-08-21 17:04:38 +08:00
Knight
8cba71adb4 chgrp: add entries 2016-08-21 17:04:02 +08:00
Knight
a4bf852207 mv: cleanup the code 2016-08-21 14:57:28 +08:00
mpkh
2981eb5112 Merge pull request #975 from nathanross/normalize-coreopts-squashed
DRYer code and more UX consistency through use of coreopts
2016-08-20 18:44:17 +00:00
Nathan Ross
36503a77c7 impl: use coreopts for brevity and consistent UX 2016-08-20 10:07:24 -04:00
Nathan Ross
edc3bf7c08 impl: dryer use of coreopts 2016-08-20 10:07:24 -04:00
Nathan Ross
ee3aaa017f uucore: allow 'wrong number of arguments' macro to be more precise 2016-08-20 10:07:08 -04:00
Michael Gehring
dcefbd54c6 Merge pull request #974 from knight42/fix-bugs
Fix bugs of `pinky` and `who`
2016-08-20 15:16:19 +02:00
Jian Zeng
14a34b48bf Merge pull request #969 from robertclancy/tail-f-dev-stdin-bug
tail: fix bug when following /dev/stdin
2016-08-20 20:25:08 +08:00
Knight
fb53c019b4 who: limit the parts of split host to 2 2016-08-20 20:22:18 +08:00
Knight
34d2224098 pinky: correct the test 2016-08-20 20:22:18 +08:00
Robert Clancy
3a0c23561e tail: fix bug when following /dev/stdin
main panics when following /dev/stdin since /dev/stdin is not seekable.
Check to see if file is seekable and use unbounded_seek if so.

Also `tail -f` with no files should not follow stdin.
2016-08-20 11:47:02 +01:00
Nathan Ross
268b691881 uucore: add support for optflagopt to coreopts 2016-08-20 05:58:36 -04:00
Nathan Ross
cb1b32cda1 uucore: fix utility name in coreopts parsing error messages 2016-08-20 05:58:36 -04:00
Knight
9ecf899e3d Remove uucore::c_types 2016-08-20 12:12:49 +08:00
Knight
ddf47fab31 groups: use uucore::entries::get_groups instead 2016-08-20 11:59:58 +08:00
Knight
f49ee5b58b uname: use utsname in libc instead 2016-08-20 11:59:58 +08:00
Knight
ac6bc5886b arch: use utsname in libc instead 2016-08-20 11:59:58 +08:00
Knight
c63aa19cd1 Add uucore::utsname to get system info 2016-08-20 11:59:58 +08:00
Knight
b6c864b7f3 uucore::process: add functions to obtain uid/gid, euid/egid 2016-08-20 03:24:23 +08:00
Knight
369c2c2d83 id: use uucore::entries 2016-08-20 03:24:23 +08:00
Knight
2b96f8f0c1 chroot: use uucore::entries 2016-08-20 03:10:37 +08:00
Knight
270290efe6 whoami: use uucore::entries 2016-08-20 03:10:36 +08:00
Knight
99f0114450 stat: use uucore::entries 2016-08-20 03:10:36 +08:00
Knight
40e6c5a397 pinky: use uucore::entries 2016-08-20 03:10:36 +08:00
Knight
f66aaa8b78 ls: use uucore::entries 2016-08-20 03:10:36 +08:00
Knight
40e01b94f3 chown: use uucore::entries 2016-08-20 03:10:36 +08:00
Knight
799804e455 Add uucore::entries 2016-08-20 03:10:36 +08:00
Knight
c2fb66dfcb uucore::utmpx: fix doctest errors 2016-08-20 02:55:17 +08:00
Knight
bc61634dba tr: use HashMap in stdlib instead of vec_map 2016-08-20 02:25:55 +08:00
Nathan Ross
9d2616442a Merge pull request #963 from alsuren/sort--merge
Implement sort  --merge
2016-08-12 20:42:30 -04:00
David Laban
cf93826eee sort --check refactor to use iterator
This allows us to check files without bringing them entirely into
memory. Also makes it easier to find the disorder in
    (seq 9; echo 0) | sort --check
(points at the end of the file, where our previous version would
point at the start of the file)

Itertools' .coalesce() was the most useful helper that I could find
for comparing adjacent values in an iterator. It is designed for
implementing things like .dedup(), so the resulting code is a little
unintuitive.
2016-08-13 00:42:44 +01:00
David Laban
3531c46fb8 sort --merge --unique
This uses Itertools' dedup() rather than Vec::dedup(). There is probably
a cleaner, more polymorphic way to do this. Suggestions welcome.
2016-08-13 00:42:44 +01:00
David Laban
e1af1520e7 sort: make compare_by honour settings.reverse
This allows sort --merge --reverse to work as well.
2016-08-13 00:42:43 +01:00
David Laban
8a8319a337 sort --merge works, but ignores --unique and --reverse
FileMerger receives Lines Iterables of the pre-sorted input files
via push_file() It implements Iterator, which yields lines from the
input files in (merged) sorted order. If the input files are not sorted,
then the behavior is undefined.

Internally, FileMerger uses a
std::collections::BinaryHeap<MergeableFile>.

MergeableFile is an internal helper that implements Ord in a way that
BinaryHeap can use (note that we want smallest-first, but BinaryHeap
returns largest first, so MergeableFile::cmp() calls reverse() on
whatever compare_by() returns.
2016-08-13 00:42:43 +01:00
David Laban
76abc7e51d sort: refactor compare_fns into Settings
Also split out a compare_by(a, b, settings) helper function,
which may be used by --merge, later.
2016-08-13 00:26:20 +01:00
Knight
f19d361013 uniq: add test for case-insensitive comparison 2016-08-13 02:04:19 +08:00
Knight
0ea5314ea1 uucore: make libc optional 2016-08-13 02:00:20 +08:00
mpkh
96e8748336 Merge pull request #945 from nathanross/cut-fix-chars-ranges
cut: make chars mode use byte mode behavior
2016-08-12 04:56:47 +00:00
nathanross
f2dc230d0e uucore: coreopts alignment, spacing, and optional usage 2016-08-11 23:20:39 -04:00
Nathan Ross
4a2532fc12 cut: chars mode has same behavior as byte mode 2016-08-11 18:49:20 -04:00
Nathan Ross
2e41535d69 pinky: switch to using new coreopts syntax 2016-08-11 14:37:26 -04:00
Nathan Ross
6ecf9ecf66 who: switch to using new coreopts syntax 2016-08-11 14:37:25 -04:00
Nathan Ross
617e8ca682 arch: switch to using new coreopts syntax 2016-08-11 14:37:25 -04:00
Nathan Ross
e019b2657e cut: switch to using new coreopts syntax 2016-08-11 14:37:24 -04:00
Nathan Ross
f8509240df uucore: require version; syntax; summary; longhelp 2016-08-11 14:37:16 -04:00
Knight
87894dedca who: implemented 2016-08-11 15:41:28 +08:00
Knight
18da533538 uucore::utmpx: change API and fix error 2016-08-11 15:41:12 +08:00
Knight
8c6cd72848 who: add entries 2016-08-11 00:19:26 +08:00
Knight
963ab9d321 users: use uucore::utmpx 2016-08-10 15:24:55 +08:00
Knight
f4c50921d8 uptime: use uucore::utmpx 2016-08-10 15:24:45 +08:00
Knight
77ef1580c2 pinky: use uucore::utmpx 2016-08-10 15:24:29 +08:00
Knight
301a240b73 uucore::utmpx: refine implementation 2016-08-10 15:23:07 +08:00
Knight
163a3a2540 coreopts: fix error when using msg_wrong_number_of_arguments macro 2016-08-10 13:59:30 +08:00
Knight
23979542af uucore: conditional enable different features 2016-08-10 13:57:40 +08:00
Knight
c9dde462c7 uucore: export latest libc 2016-08-10 01:00:39 +08:00
Knight
7d5a4dbf20 coreopts: display package name instead of module path 2016-08-10 00:16:06 +08:00
Nathan Ross
5aaff02195 cut: implement zero-terminated option
no changes to char mode because removal
of specialized char mode behavior is pending
2016-08-08 20:15:53 -04:00
Nathan Ross
1bf2c82520 arch: use message templates for consistent, original-work error handling 2016-08-08 04:36:33 -04:00
Nathan Ross
d56389aca0 cut: use message templates for consistent error UX 2016-08-08 04:32:48 -04:00
Nathan Ross
3eb9bbf4b5 uucore: CoreOptions error and version message templates 2016-08-08 04:29:11 -04:00
Nathan Ross
c91fd51197 uucore: add message templates 2016-08-08 03:05:36 -04:00
Nathan Ross
ea6b0e55ad cut: provide original-work help message and option descriptions 2016-08-07 23:16:15 -04:00
Chris Nikkel
cdfdc3a2bd uniq: add command line option -z for zero terminated input and output 2016-08-06 18:41:47 -07:00
Knight
0d48744c0f base64: simplified 2016-08-07 00:41:53 +08:00
Knight
9c7ff133dc base32: implemented 2016-08-07 00:41:52 +08:00
Knight
276d2ccd53 uucore: add module encoding 2016-08-07 00:41:52 +08:00
Knight
7c5416799e base32: add entries 2016-08-06 11:45:03 +08:00
Corey Farwell
01da600f71 Remove unused variable binding. 2016-08-05 09:06:39 -04:00
Corey Farwell
8fe3eac087 Remove unused imports. 2016-08-05 09:05:12 -04:00
Corey Farwell
eca7543c61 Cleanup logic around wait_or_timeout exit status handling. 2016-08-04 21:30:50 -04:00
Nathan Ross
a8f5b430df Merge pull request #935 from frewsxcv/refactor-time
Prefer handling `Duration` over `f32` when dealing with times.
2016-08-04 21:17:38 -04:00
Corey Farwell
99fda0b716 Prefer handling Duration over f32 when dealing with times.
Also refactored out usage of the `time` crate in `uucore`.
2016-08-04 19:21:30 -04:00
Knight
d4ac9f22fc uptime & users: move functions extern to uucore::utmpx 2016-08-04 23:39:30 +08:00
Knight
833d50e192 pinky: obtain correct timestamp 2016-08-04 23:39:30 +08:00
Knight
0020d5c80c uucore: update utmpx 2016-08-04 22:37:54 +08:00
Corey Farwell
160f7ed5f4 Use setpgid from libc. 2016-08-04 08:34:33 -04:00
David Laban
6751d2c708 implement sort --stable
Made a new function sort_by(lines, compare_fns), which accepts a
list of compare_fns and calls lines.sort_by() with a closure that
calls each compare_fn in turn until one returns something other
than equal.

Default behavior ensures that String::cmp is the last element in the
compare_fns list (referred to as 'last resort' sorting by man sort).
Passing --stable (-s) turns this behaviour off.

Test cases provided for `sort --month` and `sort --month --stable`.
2016-08-03 07:56:40 +01:00
Mark Karasek
59ad388cce ls: remove dependence on nightly 2016-07-29 07:07:38 -07:00
Mark Karasek
900cd41eb6 ls improvments
* Add options -c, -F, -L, -l, -r, -R, -S, -t, -U, --color
* Fix options -a, -A
* Remove unused options
* Output in columns when not using -l
* Output date with -l
2016-07-28 17:41:52 -07:00
Kevin Robert Stravers
5226ba963c ls: Implement the '-a' (all) flag
The all flag did not cull/remove the directory entries starting with a
dot. The help message indicates it should. The implementation checks
if the string starts with a dot whilst also using '-a' to determine
whether a DirEntry is to be printed.
2016-07-27 11:29:27 +02:00
Kevin Robert Stravers
0afe9b347e ls: Show columns correctly padded according to the largest file and the largest symlink count 2016-07-26 16:05:20 +02:00
mpkh
da0de488e6 Merge pull request #913 from knight42/pinky
Implement pinky
2016-07-26 13:38:53 +04:00
Knight
be20d8605d pinky: add tests 2016-07-26 17:26:22 +08:00
Knight
6fff3a7665 pinky: cleanup the code 2016-07-26 16:44:30 +08:00
Knight
e0c950e145 pinky: canonicalize host 2016-07-26 16:44:30 +08:00
Knight
f91c60ff70 pinky: fix a weird bug:
Strings passed to C functions must ends with NULL.
2016-07-26 16:44:30 +08:00
Knight
048daee8b9 pinky: make ci happy 2016-07-26 16:44:30 +08:00
Knight
fe952d90d8 pinky: iterate over utmp structs using getutxent() 2016-07-26 16:44:29 +08:00
Knight
1056542dd3 uucore::utmpx: revert the changes 2016-07-26 16:44:29 +08:00
Knight
3ed49033b7 pinky: implement short format 2016-07-26 16:44:25 +08:00
Knight
7fb3eef5e5 pinky: implement long format 2016-07-26 16:44:25 +08:00
king6cong
ff7d2bae16 skip directory tail 2016-07-23 23:03:00 +08:00
Jeremy Neptune
a3004fbbff
cp: added -v/--verbose flag
I forgot that -v refers to "verbose" and not "version"
when making earlier changes. So I fixed that and for
good measure added the verbose flag anyway.
2016-07-15 14:41:50 -04:00
Jeremy Neptune
cc57ce7699
cp: added -T/--no-target-directory flag 2016-07-15 14:08:04 -04:00
Jeremy Neptune
5e03b7c75d
cp: Added -t flag, and fixed path bug for source files.
* Added flag -t/--target-directory
* No longer assumes that the source arguments are files in the CWD (in other words, can copy files from directories other than CWD)
2016-07-15 13:15:05 -04:00
Ben Eills
28d1de1de0 Fix type synonym relaiance which breaks some rusts 2016-07-13 15:51:41 +02:00
Ben Eills
fa2145bb84 Allow specification of mode strings for install
We now accept symbolic and numeric mode strings using the
--mode or -m option for install.  This is used either when
moving files into a directory, or when creating component
directories with the -d option.  This feature was designed
to mirror the GNU implementation, including the possibly
quirky behaviour of `install --mode=u+wx file dir`
resulting in dir/file having exactly permissions 0300.

Extensive integration tests are included.

This chnage required a higher libc dependency.
2016-07-13 15:29:24 +02:00
Ben Eills
b15fff6269 Implement creation of component directories (-d option)
Tested in two integration test:

 - One creating three component directories
 - One trying to create an already existing directory
2016-07-13 12:56:30 +02:00
Ben Eills
823ffbd1dd Copy rather than move files
Test this with one integration test.  Also document functions
and add an '(unimplemented)' marker to some arguments in help.
2016-07-13 12:27:11 +02:00
Ben Eills
a5d97323db Test for unimplemented command line arguments
We check if the user has given one of the (many)
not yet implemented command line arguments.  Upon
catching this, we display the specific transgressor
to stderr and exit with return code 2.

This behaviour is tested in one new integration test.
2016-07-13 10:37:08 +02:00
Ben Eills
8a5719561d Implement basic installation of file to directory
Bare minimum functionality of `install file dir` implemented.
Also added TODO markers in code for outstanding parameters
and split main function into smaller logical chunks.
2016-07-12 22:58:44 +02:00
Ben Eills
e72ec4a5bb Implement skeleton install utility
Add install utility skeleton source, based on
mv, including the getopts setup mirroring
GNU's `man install` documentation.  Also
add a single test and build system code.
2016-07-12 20:56:21 +02:00
mpkh
61cf4e4fba Merge pull request #906 from knight42/chown
Implement chown
2016-07-10 19:01:03 +04:00
Knight
197e7787a8 chown: follow symlinks correctly 2016-07-10 21:32:07 +08:00
Smigle00
35fec95d60 arch: add new utility
Signed-off-by: Smigle00 <smigle00@gmail.com>
2016-07-10 00:48:10 +05:30
Knight
7e4a708e7c chown: refactor 2016-07-04 22:50:22 +08:00
Knight
d4b2766c4b chown: Add crate walkdir 2016-06-27 23:22:13 +08:00
Knight
04d7f81fd3 chown: Almost done
TODO:
* [ ] Describe changes according to verbosity
* [ ] More tests
* [ ] Clean up the code
2016-06-22 21:40:31 +08:00
Knight
59ed78209a chown: Add mod passwd 2016-06-22 21:39:01 +08:00
Knight
123175d577 chown: Add main.rs 2016-06-22 21:37:40 +08:00
Knight
69beb787d1 chown: Add entries 2016-06-22 21:36:50 +08:00
Knight
7423c5e644 chmod: fix #831 2016-06-19 22:52:56 +08:00
Neel Kowdley
519c1caa23 add verbose flag to tail 2016-06-18 14:44:05 -04:00
Heather
3a3fbc2840 Merge pull request #901 from knight42/mktemp-dir
Improve mktemp
2016-06-18 18:16:22 +04:00
Knight
bb3536bf14 mktemp: respect quiet option 2016-06-18 17:54:52 +08:00
Knight
c53fa53c75 mktemp: rustfmt 2016-06-18 17:54:52 +08:00
Knight
c6897da7f0 mktemp: make temp dir 2016-06-18 17:54:52 +08:00
Heather
2c65aad3cf Merge pull request #900 from knight42/reorganize-tests
Reorganize tests
2016-06-17 19:45:50 +04:00
Knight
5dba86dfa2 dircolors: extract shell name from $SHELL properly 2016-06-17 21:54:44 +08:00
Knight
2758455d73 stat: fix unstable library 2016-06-17 18:30:08 +08:00
Knight
13d06ff800 dircolors: reorganize tests 2016-06-17 16:17:22 +08:00
Knight
02dc461cf8 stat: implement ' format directive & add tests 2016-06-17 16:15:50 +08:00
Knight
d46a02b586 mknod: remove repeated macro 2016-06-17 13:27:19 +08:00
Tshepang Lekhonkhobe
80432e2b94 comm: remove unused import 2016-06-15 19:42:05 +02:00
palaviv
3fd8136423 sort: Support check 2016-06-14 22:21:30 +03:00
palaviv
3bc5a5f769 sort: support multiple input files 2016-06-14 21:25:29 +03:00
palaviv
87455f998a sort: Version sort support 2016-06-14 20:33:09 +03:00
palaviv
d4ffbe0526 sort: unique option support 2016-06-11 15:46:41 +03:00
Heather
e87407f598 Merge pull request #896 from knight42/ls-patch
Improve `ls` implementation
2016-06-08 07:52:18 +04:00
Knight
537ed734af ls: display the correct permissions 2016-06-07 21:10:00 +08:00
Heather
461a4e72b0 Merge pull request #893 from knight42/stat
Implement stat
2016-06-07 16:35:01 +04:00
Knight
ca6831ef91 ls: fix target_family 2016-06-07 20:11:40 +08:00
Knight
0394d5398d ls: rustfmt the code 2016-06-07 20:07:15 +08:00
Steve Smith
7a3ba3242a Need to make the use Linux-only too. 2016-06-05 11:45:44 +01:00
Steve Smith
1606770a3e getpwuid is linux platform only currently. 2016-06-05 11:07:28 +01:00
Knight
5a0dd67003 stat: make ci happy
1. force ci to use libc@0.2
2. dont use unstable api Metadata::created
3. change quote style
4. pass metadata.mode() as mode_t
2016-06-05 13:21:41 +08:00
Knight
ad3c984afd stat: get rid of crate users 2016-06-05 11:38:56 +08:00
Knight
580667295c stat: use struct libc::statfs now 2016-06-05 11:38:56 +08:00
Knight
48968f3d8a stat: Add tests 2016-06-05 11:38:56 +08:00
Steve Smith
8161bb7fe1 Flag uname/group functions as unix-specific and add NO-OP Windows versions. 2016-06-04 15:30:39 +01:00
Steve Smith
ce7f23bcc4 Fill in group name for ls 2016-06-04 15:14:59 +01:00
Steve Smith
04522760f1 Break cstring->String conversion out into function 2016-06-04 15:12:40 +01:00
Steve Smith
6179b89bcc Add conversion of UID to username for ls 2016-06-04 14:50:52 +01:00
Knight
fd652bc285 stat: TODO: more tests 2016-06-04 13:33:08 +08:00
kwantam
e2cb5eec0a fix fmt's behavior for blank prefixed lines 2016-06-01 18:19:53 -04:00
Knight
e125118510 stat: find mount point 2016-06-01 14:47:37 +08:00
Knight
de4a95accb stat: almost done
TODO:
* print escaped char
* find mount point
* more test cases
2016-06-01 09:52:55 +08:00
Knight
03ce99b455 stat: fsext.rs: remove useless brackets 2016-06-01 01:24:13 +08:00
Mariano Casco
79d281394f tail: -f option on stdin
The follow() function takes slices instead of the actual vectors, and in
the case of unbounded_tail the single bufReader is on stdin.
2016-05-31 12:37:03 -03:00
Mariano Casco
fafab00cd8 tail: remove extra println 2016-05-31 10:52:53 -03:00
Knight
676f00fea3 stat: add main.rs 2016-05-31 13:27:45 +08:00
Knight
0926cd43ac stat: add fsext.rs
Mainly includes the pretty-* functions, turning the file types, file system types and
time into human-readable form.
2016-05-31 13:22:19 +08:00