Commit graph

4793 commits

Author SHA1 Message Date
Sylvestre Ledru 2511abbfa8
Merge pull request #2313 from jhscheer/precommit
fix precommit for clippy nightly
2021-05-31 08:26:56 +02:00
Sylvestre Ledru 4a3703d218
fix a warning
it was showing:
[WARNING] normalizing pre-commit configuration to a top-level map.  support for top level list will be removed in a future version.  run: `pre-commit migrate-config` to automatically fix this.
2021-05-30 23:18:45 +02:00
Terts Diepraam 99fb2c5aac
Merge pull request #2310 from sylvestre/clippy2
Fix a clippy warning
2021-05-30 23:06:10 +02:00
Jan Scheer b9863e1cc4 fix precommit for clippy nightly 2021-05-30 21:01:38 +02:00
Sylvestre Ledru 69850942b6 fix a clippy warning
WARNING: `cargo clippy`: single-character string constant used as pattern
2021-05-30 16:26:03 +02:00
Sylvestre Ledru e865c2257e
Merge pull request #2309 from siebenHeaven/ls_r_output_inconsistency
ls: Fix minor output mismatch
2021-05-30 16:24:26 +02:00
Anup Mahindre 898d325aea ls: Fix minor output mismatch
When a single directory is passed to ls in recursive mode, uutils ls
won't print the directory name
======================
GNU ls:
z:
======================
======================
uutils ls:
======================

This commit fixes this minor inconsistency and adds corresponding test.
2021-05-30 18:00:52 +05:30
Sylvestre Ledru 65eb785654
Merge pull request #2307 from jhscheer/ci_clippy
CI: set clippy targets 'all'
2021-05-30 13:13:37 +02:00
Jan Scheer cda04eb690 docs: add note for clippy usage 2021-05-30 12:42:46 +02:00
Jan Scheer 141a92c965 CI: set clippy targets to 'all' 2021-05-30 10:13:31 +02:00
Sylvestre Ledru 4d51e16140
Merge pull request #2308 from uutils/revert-2305-rmdir-match-gnu-error
Revert "rmdir: match GNU error output"
2021-05-30 09:55:28 +02:00
Sylvestre Ledru 3913731222
Revert "rmdir: match GNU error output" 2021-05-30 09:55:02 +02:00
Sylvestre Ledru dfdd627763
Merge pull request #2305 from deantvv/rmdir-match-gnu-error
rmdir: match GNU error output
2021-05-30 09:28:26 +02:00
Sylvestre Ledru 83bb8795bd
add a comment to explain the why 2021-05-30 09:16:46 +02:00
Dean Li 5b417e251d
rmdir: match GNU error output
Related to #2258
2021-05-30 10:45:54 +08:00
Michael Debertol dc63133f14
sort: correctly inherit global flags for keys (#2302)
Closes #2254. We should only inherit global settings for keys when there
are absolutely no options attached to the key.

The default key (matching the whole line) is implicitly added only if no
keys are supplied.

Improved some error messages by including more context.
2021-05-29 23:25:56 +02:00
Michael Debertol d821719c67
expr: support arbitrary precision integers (#2271)
* expr: support arbitrary precision integers

Instead of i64s we now use BigInts for integer operations. This means
that no result or input can be out of range.
The representation of integer flags was changed from i64 to u8 to make
their intention clearer.

* expr: allow big numbers as arguments as well

Also adds some tests

* expr: use num-traits to check bigints for 0 and 1

* expr: remove obsolete refs

match ergonomics made these avoidable.

* formatting

Co-authored-by: Sylvestre Ledru <sylvestre@debian.org>
2021-05-29 23:25:23 +02:00
Sylvestre Ledru 6e1a68ce9a
Merge pull request #2298 from jhscheer/fix_clippy
Major clippy overhaul.
2021-05-29 23:23:26 +02:00
Sylvestre Ledru 61e8b4fe94
Merge pull request #2303 from miDeb/maint-spell-ci
maint: add spell checker to CICD
2021-05-29 22:57:33 +02:00
Michael Debertol 4058caa3e6 maint: add spell checker to CICD 2021-05-29 22:30:02 +02:00
Jeffrey Finkelstein 0999b00ff9 truncate: re-organize into one func for each mode
Reorganize the code in `truncate.rs` into three distinct functions
representing the three modes of operation of the `truncate` program. The
three modes are

- `truncate -r RFILE FILE`, which sets the length of `FILE` to match the
  length of `RFILE`,
- `truncate -r RFILE -s NUM FILE`, which sets the length of `FILE`
  relative to the given `RFILE`,
- `truncate -s NUM FILE`, which sets the length of `FILE` either
  absolutely or relative to its curent length.

This organization of the code makes it more concise and easier to
follow.
2021-05-29 15:11:27 +02:00
Jeffrey Finkelstein 5129114ddc truncate: create TruncateMode::to_size() method
Create a method that computes the final target size in bytes for the
file to truncate, given the reference file size and the parameter to the
`TruncateMode`.
2021-05-29 15:11:27 +02:00
Jeffrey Finkelstein 005bc259da truncate: add parse_mode_and_size() helper func
Add a helper function to contain the code for parsing the size and the
modifier symbol, if any. This commit also changes the `TruncateMode`
enum so that the parameter for each "mode" is stored along with the
enumeration value. This is because the parameter has a different meaning
in each mode.
2021-05-29 15:11:27 +02:00
Jeffrey Finkelstein b898e54d7a truncate: remove read permissions from OpenOptions
Remove "read" permissions from the `OpenOptions` when opening a new file
just to truncate it. We will never read from the file, only write to
it. (Specifically, we will only call `File::set_len()`.)
2021-05-29 15:11:27 +02:00
Jeffrey Finkelstein 4e73b919e9 truncate: add test for -r and -s options together
Add a test for when the reference file is not found and both `-r` and
`-s` options are given on the command-line.
2021-05-29 15:11:27 +02:00
Gilad Naaman 17b0939dee Moved factor to use clap
Issue: https://github.com/uutils/coreutils/issues/2121
2021-05-29 15:11:27 +02:00
Jan Scheer e4aa8ee159 users: fix long_help text and clippy warning 2021-05-29 15:11:27 +02:00
Jan Scheer 3aeccfd802 fix a lot of clippy warnings 2021-05-29 15:11:22 +02:00
Jan Scheer fb812ff9d0 Cargo.toml: remove factor_benches in order to be able to run clippy
linting for all targets
2021-05-29 14:29:46 +02:00
Jan Scheer 52ea9c4a48 CI: set MSRV and "--target" for clippy
* add "clippy.toml" in order to set MSRV for clippy linting
    this works only if clippy is invoked with "+nightly"
* add "--target" to clippy in order to also lint tests
2021-05-29 14:21:32 +02:00
Terts Diepraam 762da0bd37 more: comment out unimplemented arguments 2021-05-29 12:51:47 +02:00
Terts Diepraam 9d17c1fddf more: add todo for unicode width 2021-05-29 12:45:12 +02:00
Terts Diepraam 40ee9023e8 more: simplify main loop 2021-05-29 12:42:46 +02:00
Terts Diepraam 101e55702c more: simplify and fix logic for multiple files 2021-05-29 12:35:03 +02:00
Sylvestre Ledru 3d42d41a72
Merge pull request #2247 from jfinkels/truncate-split-three-functions
truncate: re-organize truncate() into one function for each mode of operation
2021-05-29 10:31:02 +02:00
Sylvestre Ledru 0746b3e1e6
Merge pull request #2292 from Gilnaa/2121-factor-clap
Moved factor to use clap
2021-05-29 10:30:06 +02:00
Sylvestre Ledru c2544a6f37
Merge pull request #2299 from jhscheer/users
users: fix long_help text and clippy warning
2021-05-29 09:26:04 +02:00
Jan Scheer 714661774b users: fix long_help text and clippy warning 2021-05-29 02:34:43 +02:00
Jan Scheer a2947f6897 fix clippy warning 2021-05-29 00:46:25 +02:00
Michael Debertol bb268d1500
sort: crash when failing to open an input file (#2265)
* sort: crash when failing to open an input file

Instead of ignoring files we fail to open, crash.
The error message does not exactly match gnu, but that would require
more effort.

* use split_whitespace instead of a manual implementation

* fix expected error on windows

* sort: update expected error message
2021-05-28 22:39:33 +02:00
Michael Debertol e9656a6c32
sort: make GNU test sort-debug-keys pass (#2269)
* sort: disable support for thousand separators

In order to be compatible with GNU, we have to disable thousands
separators. GNU does not enable them for the C locale, either.

Once we add support for locales we can add this feature back.

* sort: delete unused fixtures

* sort: compare -0 and 0 equal

I must have misunderstood this when implementing, but GNU considers
-0, 0, and invalid numbers to be equal.

* sort: strip blanks before applying the char index

* sort: don't crash when key start is after key end

* sort: add "no match" for months at the first non-whitespace char

We should put the "^ no match for key" indicator at the first
non-whitespace character of a field.

* sort: improve support for e notation

* sort: use maches! macros
2021-05-28 22:38:29 +02:00
Sylvestre Ledru 9442f26fdb
Merge pull request #2283 from Mikadore/master
Closing #1916 - Concluding the test refactor
2021-05-28 22:36:47 +02:00
Sylvestre Ledru a2143dcfbf
Merge pull request #2293 from miDeb/maint-minrustv
maint: adapt code to new MinRustV
2021-05-28 21:48:51 +02:00
Terts Diepraam 1c2540a613 Add atty to dev-deps for more tests 2021-05-28 21:07:38 +02:00
Sylvestre Ledru fe42808e9b
Merge branch 'master' into implement-more 2021-05-28 19:49:48 +02:00
Terts Diepraam 0a2f74fd8e
More: update crossterm dependency 2021-05-28 19:43:03 +02:00
Michael Debertol b5cbd506bc maint: remove trailing commas from matches
Trailing commas are only supported starting from 1.48.
2021-05-28 18:58:06 +02:00
Gilad Naaman 6a9ffee548 Moved factor to use clap
Issue: https://github.com/uutils/coreutils/issues/2121
2021-05-28 19:48:28 +03:00
Terts Diepraam c7930a63f7
Merge pull request #2285 from blesson3/cp-backup-arg-fix
cp: fix regressed issue with `--backup` and `-b`
2021-05-28 18:44:09 +02:00
Michael Debertol a9e0208ee2 maint: remove obsolete attributes 2021-05-28 18:03:47 +02:00