Sylvestre Ledru
811698b658
Merge pull request #2712 from jfinkels/head-take-lines-reader
...
head: use std::io::copy() with TakeLines reader
2021-10-23 17:53:44 +02:00
Sylvestre Ledru
803c05cb4a
Merge pull request #2720 from Smicry/master
...
head: use UResult in util
2021-10-23 17:53:35 +02:00
Jeffrey Finkelstein
858b0a9e9f
head: use std::io::copy() with TakeLines reader
...
Replace the custom `split::walk_lines()` function with a call to
`std::io::copy()`, using a new `TakeLines` reader as the source and
`stdout` as the destination. The `TakeLines` reader is an adaptor that
scans the bytes being read for line ending characters and stops the
reading after a given number of lines has been read (similar to the
`std::io::Take` adaptor).
This change
* makes the `read_n_lines()` function more concise,
* allows it to mirror the implementation of `read_n_bytes()`,
* increases the speed of `head -n NUM`.
2021-10-20 20:59:44 -04:00
Smicry
b89b11f5da
fix lint error
2021-10-21 00:22:36 +08:00
Smicry
396fa7a9b4
fix lint error
2021-10-21 00:13:28 +08:00
Smicry
2cbc2aa59b
head: use UResult in util
2021-10-20 23:49:04 +08:00
Sylvestre Ledru
c43436d50a
Merge pull request #2710 from jfinkels/tests-add-missing-assert-placeholder
...
tests: add template string to assert! statements
2021-10-19 20:53:35 +02:00
Sylvestre Ledru
ede77c6099
Merge pull request #2711 from jfinkels/hashsum-crlf-windows-across-blocks
...
hashsum: fix handling of \r\n in Windows text mode
2021-10-19 20:50:16 +02:00
Sylvestre Ledru
c65dc1ee7b
Merge pull request #2718 from jhscheer/test_common_util
...
tests/util: add more wrappers for common file handling tasks
2021-10-19 20:48:55 +02:00
Sylvestre Ledru
cc82303804
Merge pull request #2717 from Smicry/master
...
add tail usage
2021-10-19 17:39:18 +02:00
Jan Scheer
bfa8a2a068
tests/util: add more wrappers for common file handling tasks
...
truncate, rename, remove, copy, rmdir, etc.
2021-10-19 01:12:12 +02:00
Jan Scheer
4cf26f0fc2
Merge branch 'master' into clippy_warnings
2021-10-19 00:48:38 +02:00
Jan Scheer
7c5395a27a
build.rs: silence clippy warnings
2021-10-18 23:47:09 +02:00
Smicry
cb34b660cb
add tail usage
2021-10-19 00:15:17 +08:00
James Robson
0b2483452a
Add symbolic mode support to mkdir
2021-10-16 12:57:55 +01:00
Sylvestre Ledru
40a895f79d
Merge pull request #2705 from adamreichold/tac-mmap
...
Minor improvements to tac
2021-10-12 21:51:38 +02:00
Sylvestre Ledru
0a14fba3db
Merge pull request #2713 from jfinkels/head-default-options
...
head: use default() instead of new() for options
2021-10-12 21:47:18 +02:00
Jeffrey Finkelstein
429e1d0f12
head: use default() instead of new() for options
...
Remove the `HeadOptions::new()` function in favor of the `Default`
implementation. Both were implemented, but only `Default::default()` is
needed.
2021-10-11 18:30:03 -04:00
Jeffrey Finkelstein
d1e02665bf
fixup! hashsum: fix handling of \r\n in Windows text mode
2021-10-11 18:18:29 -04:00
Jeffrey Finkelstein
c50b5ac110
hashsum: fix handling of \r\n in Windows text mode
...
Fix a bug in which "\r\n" was not being replaced with "\n" in text mode
on Windows. This would happen only if one call to `write()` ended with a
"\r" character and the next call to `write()` started with a "\n"
character. This commit fixes the bug by buffering a "\r" character if it
appears at the end of one call to `write()` and only writing if the
first character in the next call to `write()` is *not* a "\n" character.
Fixes issue #2681 .
2021-10-11 17:36:08 -04:00
Jeffrey Finkelstein
9e21d26b7c
tests: add template string to assert! statements
...
Add missing "{}" template strings to `assert!()` statements.
2021-10-11 16:51:14 -04:00
Adam Reichold
86d22aaa1d
tac: Add a simple how to for benchmarking
2021-10-10 14:29:37 +02:00
Adam Reichold
c526df57b8
tac: opportunistically use memory maps
...
Since tac must read its input files completely to start processing them
from the end, it is particularly suited to use memory maps to benefit
from the page cache maintained by the operating systems to bring the
necessary data into memory as required.
This does also include situations where the input is stdin, but not via
a pipe but for example a file descriptor set up by the user's shell
through an input redirection.
2021-10-10 13:20:31 +02:00
Adam Reichold
4eab275235
tac: buffer stdout more coarsely than line-based following the GNU tac implementation.
2021-10-10 13:20:31 +02:00
Adam Reichold
28b04fa899
tac: do not use a buffered read as fs::read is more efficient and io::Stdin is buffered internally
2021-10-10 13:20:31 +02:00
Adam Reichold
0d583754ca
tac: lock stdout only once instead for each line
2021-10-10 13:20:31 +02:00
Adam Reichold
e041fda51d
tac: do not re-compile regular expression for each file
2021-10-10 13:20:31 +02:00
Sylvestre Ledru
11ca4be1aa
Merge pull request #2707 from sylvestre/more-clippy
...
More clippy fixes
2021-10-10 12:46:35 +02:00
Sylvestre Ledru
51613c02ec
add a word to ignore...
2021-10-10 12:16:01 +02:00
Sylvestre Ledru
788618e9de
Merge pull request #2708 from adamreichold/fix-pr-stdout-lock
...
pr: fix locking of stdout
2021-10-10 12:15:23 +02:00
Adam Reichold
b4864d760e
pr: fix locking of stdout
2021-10-10 11:33:46 +02:00
Sylvestre Ledru
54ae2fa64a
Merge pull request #2689 from jhscheer/fix_chroot_2687
...
`chroot`: quick fix for #2687
2021-10-10 10:15:22 +02:00
Sylvestre Ledru
00de952592
Fix various 'if_then_panic' clippy warnings
2021-10-10 09:57:39 +02:00
Sylvestre Ledru
32ec3f75ee
Merge pull request #2706 from chadbrewbaker/master
...
Fix need for ssh keys
2021-10-10 09:41:34 +02:00
Chad Brewbaker
a9bfd5df06
Fix need for ssh keys
...
Github now mandates git ssh keys instead of username/password. I modified the download instructions to remove the need for ssh authentication.
2021-10-09 23:01:05 -05:00
Jan Scheer
3e985cb029
Merge branch 'master' into fix_chroot_2687
2021-10-10 01:04:25 +02:00
Jan Scheer
3300d80e3f
tests: silence clippy warnings for unused_imports
2021-10-10 00:52:18 +02:00
Sylvestre Ledru
080d3d2fa7
Merge pull request #2697 from vulppine/cp-uresult
...
cp: uumain returns UResult, implements UError for Error enum in cp.rs
2021-10-09 11:03:33 +02:00
Sylvestre Ledru
03a037e8ea
Merge pull request #2701 from vulppine/seq-hex
...
seq: Adds hexadecimal integer parsing
2021-10-09 11:01:42 +02:00
Sylvestre Ledru
ba53844b19
Merge pull request #2704 from thomasqueirozb/users_uresult
...
Users: use UResult | #[macro_use] refactor
2021-10-06 21:29:21 +02:00
vulppine
cddd40b4e1
seq: Updates hex parse readability, adds hex test
2021-10-05 18:41:28 -07:00
Thomas Queiroz
e2fa6f9412
users: use UResult
2021-10-04 19:53:46 -03:00
Thomas Queiroz
00c9710206
uucore_procs+uu: specify uucore::show_error
...
This allows crates to use `#[uucore_procs::gen_uumain]` without `use uucore::show_error` or
#[macro_use]
extern crate uucore;
Removed unecessary usage
2021-10-04 19:53:16 -03:00
vulppine
4e1f945e86
seq: Adds testing for large hex numbers
2021-10-03 09:50:49 -07:00
Sylvestre Ledru
368fa54520
Merge pull request #2703 from thomasqueirozb/base_uresult
...
base32 + base64 + basenc: use UResult
2021-10-03 17:34:56 +02:00
Sylvestre Ledru
20becf8166
Merge pull request #2699 from jfinkels/lint-fixes
...
ls,more,csplit,sort,od,dd: fix clippy complaints
2021-10-03 10:35:13 +02:00
Thomas Queiroz
b924774c8a
basenc: use UResult
2021-10-02 23:17:16 -03:00
Thomas Queiroz
f85ccf8e46
tests/base64: update test
2021-10-02 23:16:07 -03:00
Thomas Queiroz
452329ad19
base64: use UResult
2021-10-02 23:15:40 -03:00
Thomas Queiroz
051284de4c
tests/base32: update test
2021-10-02 23:12:42 -03:00