Yang Hau
2cd19522e4
fix: Fix panic in multi-byte characters
...
Closes #4353
2023-02-19 10:15:53 +08:00
Yang Hau
678a11dcf2
cksum: Implement option -a
...
Implement option -a --algorithm.
Move digest to src/uucore/src/lib/features and rename it to hash.
fix lint
fix Cargo.toml
2023-02-18 20:58:53 +08:00
Terts Diepraam
ae27c82020
Use workspace inheritance for dependencies
2023-02-11 18:54:46 +01:00
Terts Diepraam
d60fc40f2f
Clippy fixes for MSRV 1.64
2023-02-11 13:59:50 +01:00
Terts Diepraam
357001dabc
fix double dependency of memoffset by upgrading nix, libc and ctrlc
2023-02-09 14:02:40 +01:00
Daniel Hofstetter
f6b646e4e5
clippy: fix warnings introduced with Rust 1.67.0
2023-01-27 17:37:56 +01:00
Joining7943
9796e70a28
uucore: Fix #4298 : Build on s390x and riscv64 architectures fails
2023-01-23 21:13:59 +01:00
Terts Diepraam
4d3dc78686
Version 0.0.17
2023-01-21 10:38:18 +01:00
Daniel Hofstetter
f50c352adc
clippy: use type name instead of Default::default
2023-01-16 10:52:28 +01:00
trasua
ef8f92f720
uucore: add options to parse_size::Parser to support parse_byte_count() in sort.rs
2022-12-26 10:23:20 +01:00
Daniel Hofstetter
a0522f5cbd
clippy: fix some "unnested or-patterns" warnings
2022-12-20 16:07:37 +01:00
Joining7943
c94a039358
clippy and doc: Fix warnings, mostly needless conversions. Fix documentation warning.
2022-12-16 18:36:27 +01:00
Daniel Hofstetter
81243db948
chore: fix wildcards that match single variant
2022-12-06 10:50:34 +01:00
Sylvestre Ledru
3880b463fe
Merge pull request #4185 from jfinkels/uucore-sprintf-2
...
uucore: add sprintf() function
2022-12-03 10:21:09 +01:00
Terts Diepraam
dc828fed2d
uucore/process: remove custom ExitStatus
2022-12-02 12:25:14 +01:00
Jeffrey Finkelstein
d083fa19c2
uucore: add sprintf() function
...
Add an `sprintf()` function (and `printf()` function) to
`uucore::memo`. The `sprintf()` function behaves roughly like the
standard Rust `format!()`, but follows our implementation of the GNU
`printf` formatting logic instead.
2022-12-02 07:48:36 +01:00
Daniel Hofstetter
9a2174ba02
chore: standardize creation of empty strings
2022-12-01 13:49:23 +01:00
Terts Diepraam
1b35e467ac
Merge pull request #4137 from jfinkels/dd-bytes-suffix
...
dd: allow B as a suffix for count, seek, and skip
2022-11-19 12:23:43 +01:00
Sylvestre Ledru
6d7850549b
Merge pull request #4150 from tertsdiepraam/stat-refactor
...
`stat` refactor
2022-11-19 09:57:23 +01:00
Jeffrey Finkelstein
701550d76b
dd: allow B as a suffix for count, seek, and skip
...
Allow uppercase "B" on its own as a unit specifier for the `count`,
`seek`, and `skip` arguments to `dd`.
For example,
$ printf "abcdef" | dd count=3B status=none
abc
2022-11-18 20:27:42 -05:00
Jeffrey Finkelstein
847378f8d2
uucore: create parse_size::Parser struct
...
Add a `uucore::parse_size::Parser` struct which will allow future
commits to add fields that change the behavior of `parse_size()`.
2022-11-18 20:27:34 -05:00
Terts Diepraam
6cdcfca573
uucore: add prompt_yes!() and read_yes()
...
These functions are based on existing functions and macros
in utils `cp`, `ln`, `mv ` and `rm`. This unifies the separate
implementations.
2022-11-17 15:06:49 +01:00
Terts Diepraam
406df12b18
stat: make OutputType carry data, instead of turning everthing immediately into a string
2022-11-16 22:23:03 +01:00
Sylvestre Ledru
6bc68cdcdf
Merge branch 'main' into refactor/add_nix_error_auto_conversion
2022-11-04 12:54:35 +01:00
Daniel Hofstetter
96ef306cb3
Fix "unwrap or else default" clippy warning
2022-11-04 10:07:21 +01:00
Daniel Hofstetter
2d4810b91b
numfmt: allow ' ' as field separator
2022-11-01 10:04:46 +01:00
Sylvestre Ledru
f2f2f7033e
Merge branch 'main' into refactor/add_nix_error_auto_conversion
2022-10-30 15:54:13 +01:00
dependabot[bot]
69c1f28c66
build(deps): bump libc from 0.2.136 to 0.2.137
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.136 to 0.2.137.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.136...0.2.137 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-26 06:42:06 +00:00
dependabot[bot]
2213ad5d1c
build(deps): bump libc from 0.2.135 to 0.2.136
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.135 to 0.2.136.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.135...0.2.136 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-25 23:28:47 +02:00
Orhun Parmaksız
f117f36313
Merge branch 'main' into refactor/add_nix_error_auto_conversion
2022-10-22 20:35:43 +02:00
Orhun Parmaksız
81ea9521ce
fix: conditionally enable nix
error conversions
2022-10-22 21:34:45 +03:00
Orhun Parmaksız
c19c19e4db
docs: add usage example for nix::Errno
conversion
2022-10-22 21:26:33 +03:00
Orhun Parmaksız
990bb4224d
test: add test for nix::Error
conversions
2022-10-22 17:45:40 +03:00
Orhun Parmaksız
df8ba87516
feat: add more implementations for converting nix::Error
2022-10-22 17:20:57 +03:00
Sylvestre Ledru
e4fe2b10fa
Merge pull request #4014 from tertsdiepraam/ls-windows-permissions
...
`ls`, `stat`: Show more info in long format on Windows
2022-10-22 10:21:43 +02:00
Sylvestre Ledru
74624b27f1
Merge branch 'main' into refactor/add_nix_error_auto_conversion
2022-10-22 10:19:09 +02:00
Niyaz Nigmatullin
76ee0db26c
uucore: migrate from winapi
to windows-sys
crate
2022-10-20 12:16:22 +03:00
Orhun Parmaksız
50be73d99f
refactor: add automatic conversion for nix::Errno
2022-10-19 00:13:59 +03:00
Terts Diepraam
d6753d8914
uucore: remove string leak in format_usage
2022-10-13 17:55:02 +02:00
Terts Diepraam
042bb3c4e3
cp: update to clap 4
2022-10-13 17:50:26 +02:00
Terts Diepraam
9605c7f135
uucore: update to clap 4
2022-10-13 17:50:17 +02:00
Sylvestre Ledru
6e14dea73b
Fix some clippy warnings
...
Fixed with `cargo clippy --features unix --fix`
and manually
2022-10-13 09:07:22 +02:00
dependabot[bot]
68f2b44c88
build(deps): bump dunce from 1.0.2 to 1.0.3
...
Bumps [dunce](https://gitlab.com/kornelski/dunce ) from 1.0.2 to 1.0.3.
- [Release notes](https://gitlab.com/kornelski/dunce/tags )
- [Commits](https://gitlab.com/kornelski/dunce/commits/v1.0.3 )
---
updated-dependencies:
- dependency-name: dunce
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-10-12 16:54:02 +00:00
Terts Diepraam
f15c4f2d3e
Version 0.0.16
2022-10-11 23:03:39 +02:00
Terts Diepraam
86738ce6cf
ls,stat: Show more info in long format
2022-10-09 00:27:32 +02:00
Daniel Hofstetter
9e8daf92dd
Replace deprecated value_of() with get_one()
2022-09-26 16:42:42 +02:00
Niyaz Nigmatullin
90babe2775
uucore: remove is_symlink
function
...
Since Rust 1.58 there is `is_symlink` method for `Path`
2022-09-23 20:32:09 +03:00
Terts Diepraam
975a1d170d
change remaining usage codes of 2 to 1 for GNU compat
2022-09-10 20:24:24 +02:00
Jeffrey Finkelstein
8458bf1387
Clippy fixes in multiple crates
2022-08-23 18:30:43 -04:00
Terts Diepraam
15180249fc
Version 0.0.15
2022-08-20 13:13:22 +02:00
dependabot[bot]
6193cdbba8
build(deps): bump libc from 0.2.131 to 0.2.132
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.131 to 0.2.132.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.131...0.2.132 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-19 12:22:35 +00:00
Sylvestre Ledru
b7ea400861
Merge pull request #3837 from tertsdiepraam/remove-more-error-macros
...
`uucore` & `cp`: remove `show_error_custom_description` macros `show_usage_error`
2022-08-19 10:01:49 +02:00
Sylvestre Ledru
fb4ddd5310
Merge pull request #3844 from tertsdiepraam/ranges-refactor
...
`uucore::ranges`: Refactor, document and test
2022-08-19 09:02:35 +02:00
Terts Diepraam
003b483705
uucore/ranges: refactor and test complement
2022-08-18 21:27:32 +02:00
Terts Diepraam
7890228f82
uucore/ranges: document and test merge operation
2022-08-18 19:45:56 +02:00
Terts Diepraam
e9e9a8166f
uucore/ranges: refactor FromStr impl
2022-08-18 19:45:18 +02:00
Sylvestre Ledru
88261f36dd
Merge pull request #3834 from uutils/dependabot/cargo/once_cell-1.13.1
...
build(deps): bump once_cell from 1.13.0 to 1.13.1
2022-08-18 13:35:59 +02:00
Terts Diepraam
b983355bc4
uucore & cp: remove show_error_custom_description
macros show_usage_error
2022-08-18 10:44:59 +02:00
Sylvestre Ledru
87e3899477
Merge pull request #3832 from tertsdiepraam/simplify-encoding-handling
...
Simplify invalid encoding handling
2022-08-17 18:59:59 +02:00
dependabot[bot]
e465d0520f
build(deps): bump once_cell from 1.13.0 to 1.13.1
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.13.0 to 1.13.1.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.13.0...v1.13.1 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-17 16:20:25 +00:00
Terts Diepraam
ba713b6365
Simplify invalid encoding handling into two small methods of Args
...
The previous encoding handling was unnecessarily complex. This commit removes the enum that specifies the handling and instead has two separate methods to collect the strings either with lossy conversion or by ignoring invalidly encoded strings.
2022-08-17 15:20:20 +02:00
Terts Diepraam
5621502a95
all: remove accept_{any, complete, lossy}
and ConversionResult
...
Outside of tests, only `accept_any` was used, meaning that this unnecessarily complicated the code. The behaviour of `accept_any` is now the default (and only) option.
2022-08-17 14:57:28 +02:00
Terts Diepraam
0ed8b97a3f
uucore: remove panic encoding handling
...
We never want utilities to panic on invalid input and it is not currently in use, so it can be removed safely.
2022-08-17 14:29:53 +02:00
Niyaz Nigmatullin
9cd898b885
remove nix 0.24.2 dependency
2022-08-17 13:13:27 +03:00
Niyaz Nigmatullin
5af152be2c
uucore/fs: add Not a directory cases handling, e.g. for trailing slashes
2022-08-15 22:47:03 +03:00
David Carlier
b5bb070777
while at it, let's do OpenBSD.
2022-08-13 10:21:30 +01:00
David Carlier
36561c9526
uucore fix NetBSD build.
2022-08-13 08:24:45 +01:00
Daniel Hofstetter
fcb7185279
Disable "broken intra doc links" lint
2022-08-12 14:48:59 +02:00
Daniel Hofstetter
c0c26c4c58
Replace deprecated values_of() with get_many()
2022-08-11 13:49:09 +02:00
Ackerley Tng
defde8c91e
uucore: add parse_glob module
2022-08-09 10:36:23 +02:00
Daniel Hofstetter
7c3116330e
Replace deprecated is_present() with contains_id()
2022-08-02 15:21:39 +02:00
Daniel Hofstetter
fc4544c42b
bump clap from 3.1.18 to 3.2.15
2022-07-29 14:05:02 +02:00
Sylvestre Ledru
62305e67d1
Merge pull request #3719 from andrewbaptist/main
...
split: Don't overwrite files
2022-07-23 22:54:57 +02:00
Sylvestre Ledru
f82ada645e
Merge pull request #3731 from sylvestre/fs-doc
...
document some common fs functions
2022-07-22 13:29:15 +02:00
Andrew Baptist
f2cfc15a70
split: Don't overwrite files
...
Check that a file exists by calling create_new and changing the
interface of instantiate_current_writer to return a Result rather
than calling unwrap.
2022-07-21 12:06:13 -04:00
Sylvestre Ledru
ba44fd0e2b
document some common fs functions
2022-07-20 17:51:53 +02:00
Niyaz Nigmatullin
9f2a9fa6ff
uucore/fs: make function more generic
2022-07-19 17:34:52 +03:00
Niyaz Nigmatullin
80ff3b3b40
ln: change error messages, extract common code
2022-07-19 17:34:52 +03:00
Andrew Baptist
cc08e1cc3a
Update to handle all the latest cargo warnings
2022-07-18 13:20:49 -04:00
dependabot[bot]
d15b95533e
build(deps): bump nix from 0.24.1 to 0.24.2
...
Bumps [nix](https://github.com/nix-rust/nix ) from 0.24.1 to 0.24.2.
- [Release notes](https://github.com/nix-rust/nix/releases )
- [Changelog](https://github.com/nix-rust/nix/blob/v0.24.2/CHANGELOG.md )
- [Commits](https://github.com/nix-rust/nix/compare/v0.24.1...v0.24.2 )
---
updated-dependencies:
- dependency-name: nix
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-07-18 06:41:18 +00:00
Niyaz Nigmatullin
4db08273b3
ln: error on --force when src=dst and dst is regular file
2022-07-18 08:17:37 +03:00
Sylvestre Ledru
882cd527ff
Merge pull request #3704 from Sciencentistguy/once_cell
...
Replace lazy_static with once_cell
2022-07-13 16:15:47 +02:00
Niyaz Nigmatullin
c829ecfd1d
uucore/fs: get back to loop looking in windows as FileInformation
...
for directory is fixed
2022-07-12 17:15:16 +03:00
Jamie Quigley
1a270361c0
Replace lazy_static with once_cell
2022-07-12 14:08:30 +01:00
Terts Diepraam
6b00aec48e
Merge pull request #3602 from lendandgit/main
...
df: better error message when executed in a chroot without /proc #3601
2022-07-11 23:02:39 +02:00
Niyaz Nigmatullin
da5808d4ac
ls: add already listed message ( #3707 )
...
* ls: handle looping symlinks infinite printing
* ls: better coloring and printing symlinks when dereferenced
* tests/ls: add dereferencing and symlink loop tests
* ls: reformat changed using rustfmt
* ls: follow clippy advice for cleaner code
* uucore/fs: fix FileInformation to open directory handles in Windows as
well
2022-07-11 17:18:58 +02:00
Niyaz Nigmatullin
9d285e953d
Realpath symlinks handling, solves issue #3669 ( #3703 )
2022-07-10 16:49:25 +02:00
leon
9d554751ca
df: better error message when executed in a chroot without /proc #3601
2022-07-07 15:24:00 +02:00
Sylvestre Ledru
38f5a47f76
Merge pull request #3698 from uutils/dependabot/cargo/once_cell-1.13.0
...
build(deps): bump once_cell from 1.12.0 to 1.13.0
2022-07-06 08:56:12 +02:00
dependabot[bot]
6a335236c1
build(deps): bump once_cell from 1.12.0 to 1.13.0
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.12.0...v1.13.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-07-05 06:51:26 +00:00
Sylvestre Ledru
7ca2ae4627
spell: Ignore backport
2022-07-05 08:31:45 +02:00
Jeffrey Finkelstein
df83d59b2d
uucore: add backport for Path::is_symlink()
...
Add a `uucore::fs::is_symlink()` function that takes in a
`std::path::Path` and decides whether the given path is a symbolic
link. This is essentially a backport of the `Path::is_symlink()`
function that appears in Rust version 1.58.0. This commit also
replaces some now-duplicate code in `chmod`, `cp`, `ln`, and `rmdir`
that checks whether a path is a symbolic link with a call to
`is_symlink()`.
Technically, this commit slightly changes the behavior of
`cp`. Previously, there was a line of code like this
if fs::symlink_metadata(&source)?.file_type().is_symlink() {
where the `?` operator propagates an error from `symlink_metadata()`
to the caller. Now the line of code is
if is_symlink(source) {
in which any error from `symlink_metadata()` has been converted to
just be a `false` value. I believe this is a satisfactory tradeoff to
make, since an error in accessing the file will likely cause an error
later in the same code path.
2022-07-04 17:25:52 -04:00
Gergely Kalas
4f043ff57f
Fix 'wc' gnu test-suite compatibility #3678
...
This change will extract a utility already present in ls to uucore.
This utility is used by dir and vdir too, which are adjusted to
look it up in uucode. No further changes to ls, dir or dirv intended.
The change here largely fiddles with the output of uu_wc to match
that of GNU wc. This is the case to the extent to make unit tests
pass, however, there are differences remaining. One specific
difference I did not tackle is that GNU wc will not align the
output columns (compute_number_width() -> 1) in the specific case
of the input for --files0-from=- being a named pipe, not real stdin.
This difference can be triggered using the following two invocations.
- wc --files0-from=- < files0 # use a named pipe, GNU does align
- cat files0- | wc --files0-from=- # use real stdin, GNU does not
align.
2022-07-01 16:43:09 +02:00
Daniel Hofstetter
72aa2ff0ab
uucore: fix invalid enum variant in docstring
2022-06-16 14:43:01 +02:00
dependabot[bot]
5a42c06b25
build(deps): bump once_cell from 1.11.0 to 1.12.0
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.11.0...v1.12.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-06-06 19:18:28 +00:00
Terts Diepraam
eae07adfb1
Version 0.0.14 ( #3553 )
...
Version 0.0.14
2022-05-22 19:57:19 +02:00
Daniel Hofstetter
27dd59635a
uucore: add InvalidSuffix to ParseSizeError
2022-05-17 15:37:49 +02:00
Sylvestre Ledru
7792af336e
Merge pull request #3535 from uutils/dependabot/cargo/libc-0.2.126
...
build(deps): bump libc from 0.2.125 to 0.2.126
2022-05-17 12:32:22 +02:00
Terts Diepraam
eac0760905
Merge pull request #3528 from jfinkels/clippy-fixes
...
all: clippy fixes
2022-05-17 11:57:47 +02:00
dependabot[bot]
cd743c2fd1
build(deps): bump libc from 0.2.125 to 0.2.126
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.125 to 0.2.126.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.125...0.2.126 )
---
updated-dependencies:
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-17 07:13:42 +00:00