Commit graph

3276 commits

Author SHA1 Message Date
Nick Fitzgerald
56d16ca7e7 tail: Optimize tail for bounded searches in files
When tail'ing a file, we do not need to read the whole file from start to finish
just to find the last n lines or bytes. Instead, we can seek to the end of the
file, and then read the file "backwards" in chunks until we find the location of
the first line/byte we wish to print. This ends up being a nice performance win
for very large files.

Fixes #764
2016-03-21 07:51:38 -07:00
Nick Fitzgerald
977742f209 tail: Take ownership of the provided BufReader<T>
The `BufReader` argument passed to the `fn tail<T: Read>(&mut BufReader<T>,
settings: &settings)` function is never reused, so the `tail` function should
just take ownership of it.
2016-03-21 07:51:32 -07:00
Heather
bbd55b283a Merge pull request #829 from lucaotta/fix-chmod-reference
chmod: fix reference option
2016-03-11 10:37:57 +04:00
Luca Ottaviano
5dc0a55630 chmod: fix reference option
Reference option must have a file path.
Fix C interface using CString.
Better error message if the file doesn't exist.
2016-03-10 20:34:49 +01:00
Heather
8d278913c2 Merge pull request #825 from nathanross/dirname-fix-impl
Dirname: fix windows' failing test for absolute-path behavior (approach 2/2: platform-independent behavior)
2016-03-01 11:55:54 +04:00
Heather
49a67bae33 Merge pull request #828 from cbjadwani/uniq_add_tests
Uniq add tests
2016-02-29 10:50:59 +04:00
Chirag B. Jadwani
d674a3bb63 uniq: minor refactoring in skip_fields 2016-02-29 11:16:58 +05:30
Chirag B. Jadwani
fc5b798ff1 uniq: fix skip & check characters logic 2016-02-29 11:10:38 +05:30
Chirag B. Jadwani
676e3718c3 uniq: add tests 2016-02-29 11:07:16 +05:30
Michael Gehring
68efb303bd Merge pull request #823 from nathanross/comm-additional-tests
comm: remaining tests for feature completion
2016-02-24 08:23:32 +01:00
Nathan Ross
d1e785c1dc comm: additional tests and status/stderr checking for existing tests 2016-02-22 09:59:06 -05:00
Heather
267a7d043a Merge pull request #821 from ebfe/cat-test
tests/cat: --squeeze-blank test
2016-02-22 09:24:32 +04:00
Heather
444775dc7f Merge pull request #827 from ColdPie1/sort_opt_o
sort: Implement -o switch
2016-02-22 09:22:25 +04:00
Andrew Eikum
d25ab4adc1 sort: Implement -o switch 2016-02-21 13:32:42 -06:00
Heather
ac457f076c Merge pull request #826 from nathanross/link-normalize-error-messages
link: normalize file-not-found error message across platforms
2016-02-21 09:52:53 +04:00
Nathan Ross
3e6ac628bc link: normalize file-not-found error message across platforms 2016-02-20 17:32:15 -05:00
Nathan Ross
51d7227aeb dirname: in impl, make behavior for '/' fs root agnostic of host platform 2016-02-19 20:10:41 -05:00
Michael Gehring
396c1642a2 Merge pull request #822 from nathanross/more-ergonomic-testing
more ergonomic testing
2016-02-19 09:08:11 +01:00
Nathan Ross
5e764ecf6e more ergonomic testing 2016-02-18 13:24:36 -05:00
Michael Gehring
c0d91d225f tests/cat: --squeeze-blank test 2016-02-17 08:06:32 +01:00
Michael Gehring
aafd20d565 Merge pull request #820 from nathanross/cat-fix-squeeze-blank
cat: --squeeze-blank keeps up to one blank line
2016-02-17 08:01:02 +01:00
Heather
6b11f6c5fb Merge pull request #819 from nathanross/additional-tests
Base64, Basename: additional tests
2016-02-17 07:48:05 +03:00
Nathan Ross
a4e1372451 cat: squeeze blank keeps up to one blank line 2016-02-16 18:52:51 -05:00
Nathan Ross
e44f29a020 basename: tests for bad inputs 2016-02-16 16:47:09 -05:00
Nathan Ross
8190c30a85 basename: tests for remaining options 2016-02-16 16:47:09 -05:00
Nathan Ross
21cee1556b basename: in tests, assert error-free in usage 2016-02-16 16:47:09 -05:00
Nathan Ross
962fcd7183 base64: tests for incorrect wrap args 2016-02-16 16:47:09 -05:00
Nathan Ross
2bad30b2b0 base64: in tests, test both option forms 2016-02-16 02:20:09 -05:00
Michael Gehring
1c1cf2446e Merge pull request #815 from nathanross/spec-tests
allow feature-gated integration tests for unimplemented functionality
2016-02-16 06:56:32 +01:00
Nathan Ross
e32efaa5a1 allow feature-gated integration tests for unimplemented functionality 2016-02-15 23:48:37 -05:00
Michael Gehring
76cfcba306 Merge pull request #816 from nathanross/minor-fixes
basename: error message for too few or many args messages should go to stderr
2016-02-16 04:00:29 +01:00
Nathan Ross
c8dcdf7d25 basename: too few or many args messages go to stderr 2016-02-15 20:44:50 -05:00
Michael Gehring
67de2ca9f7 Merge pull request #657 from nathanross/printf-reorg
Printf
2016-02-15 16:00:27 +01:00
Nathan Ross
5f88dfe12b printf: rustfmt pass 2016-02-15 00:48:08 -05:00
Nathan Ross
9242ba1db6 printf: scaffolding for C99 hex float 2016-02-15 00:17:11 -05:00
Nathan Ross
0892ad3cde printf: add (spare C99 hex floats) 2016-02-15 00:10:30 -05:00
Michael Gehring
1760f2937b Merge pull request #814 from shalupov/mark-fixtures-data-as-binary
.gitattributes: treat tests/fixtures/** as binary data
2016-02-14 19:21:18 +01:00
Michael Gehring
01ca5cac7b Merge pull request #813 from shalupov/fix-windows-tests-startup
Fix tests startup under Windows
2016-02-14 17:24:08 +01:00
Leonid Shalupov
1b48438b44 .gitattributes: treat tests/fixtures/** as binary data to prevent CRLF convertion by git under Windows 2016-02-14 17:09:47 +01:00
Leonid Shalupov
1ae82193f0 tests: do not remove %SYSTEMROOT% from environment variables, it's required to initialize crypto provider (which is required for std::rand) 2016-02-14 16:34:39 +01:00
Heather
2ddea8aa88 Merge pull request #812 from ebfe/fix-build
tests/mktemp: fix build on nightly
2016-02-14 09:39:11 +03:00
Michael Gehring
162e21a418 tests/mktemp: fix build on nightly 2016-02-14 03:31:10 +01:00
Alex Lyon
9d041cdd7d Merge pull request #810 from ebfe/tests-chmod
tests/chmod: fix tests on nightly
2016-01-23 19:43:54 -08:00
Michael Gehring
7cb0db8928 Merge pull request #809 from jbcrail/fix-type-mismatch
Fix type mismatch error.
2016-01-23 05:12:28 +01:00
Michael Gehring
033dd3a0ae tests/chmod: fix tests on nightly 2016-01-23 05:06:02 +01:00
Joseph Crail
f75d58f1da Update bit-set to 0.3.0. 2016-01-22 22:40:44 -05:00
Joseph Crail
53c60e2990 Fix type mismatch error. 2016-01-22 22:02:10 -05:00
Alex Lyon
3fc0f89184 Merge pull request #808 from ebfe/make-vars
make: simplify make variables
2016-01-18 18:17:08 -08:00
Michael Gehring
f50eebb5f9 make: simplify make variables
Replace {,DONT_}{BUILD,INSTALL,TEST,BUSYTEST} with UTILS and SKIP_UTILS.
2016-01-19 03:07:45 +01:00
Michael Gehring
8aead4f36e Merge pull request #807 from uutils/revert-805-master
Revert "Allow selection of tests to not pass to BusyBox"
2016-01-12 20:14:33 +01:00