tommady
da9b32a366
Fix 7z BadSignature error when compressing and then listing ( #819 )
2025-05-17 13:00:25 -03:00
João Marcos
c8f97197c3
Give good error messages when archive extensions are invalid ( #817 )
...
+ simplify unit tests, don't require them to start the logger
+ unrelated TODOs
2025-05-06 00:08:38 -03:00
Amyspark
07967927dd
feat: Make bzip3 optout ( #814 )
...
Co-authored-by: João Marcos <marcospb19@hotmail.com>
2025-05-03 20:43:59 -03:00
tommady
1ff1932e3d
Merge folders in decompression ( #798 )
...
Signed-off-by: tommady <tommady@users.noreply.github.com>
2025-05-01 04:20:33 -03:00
Talison Fabio
c97bb6a2d6
feat: Add flag '--no-smart-unpack' to disable smart unpack ( #809 )
2025-04-28 11:03:50 -03:00
Talison Fabio
4961a2c478
tweak: Align file sizes at left to make output clearer ( #792 )
2025-04-18 13:00:18 -03:00
Talison Fabio
267ce7672e
feat: ignore .git/
when -g/--gitignore
is set ( #795 )
2025-04-17 13:56:02 -03:00
tommady
b9b1e11303
Store symlinks by default and add --follow-symlinks
to toggle it ( #789 )
2025-04-16 17:43:46 -03:00
Talison Fabio
35a3f3627c
fix: remove unnecessary allow_piped_choice check config on test
2025-04-04 18:30:50 -03:00
Talison Fabio
184bafc0fa
test: format
2025-04-04 18:30:50 -03:00
Talison Fabio
8c478a3f9d
test: fix renamed test and implement to check disabled smart_unpack
2025-04-04 18:30:50 -03:00
Talison Fabio
31dd9eb923
feat: Add rename option in overwrite menu ( #779 )
...
* feat: Add generic Choice prompt implementation
* feat: use ChoicePrompt in user_wants_to_continue method
* feat: add "rename" option in ask_to_create_file method
* feat: check accessible mode for choises prompt
* feat: rename file in "ask_to_create_file" rename action
* feat: create "resolve_path" for smart_unpack to deal with rename
* feat: use resolve_path instead clear_path in smart_unpack
* fix: remove unused clear_path function
* chore: cargo fmt
* Add docs
* refactor: rename "resolve_path" method
* chore: fix ChoicePrompt doc
* doc: improve doc of resolve_path_conflict
* fix: out of bound when type answer bigger than some choice
* doc: improve rename_path docs
* chore: cargo fmt
* chore: revert user_wants_to_continue
* fix: update error message when find EOF in choise prompt response
* revert: update message error in ChoicePrompt instead Confirmation
* test: add overwrite and cancel tests
* test: Add rename test with "allow_piped_choice" new feature
* cargo fmt
* test: create test for autoincrement new renamed files
2025-03-30 19:19:21 -03:00
Pascal Hertleif
ecc05cdd60
feat: Add support for Brotli
...
Using https://crates.io/crates/brotli/7.0.0
#203
2025-02-12 13:59:18 -03:00
Pascal Hertleif
58271ab77f
refactor(cli): Clearer docs for -y/-n
2025-02-12 10:12:54 -03:00
Pascal Hertleif
fadfe1a213
fix(cli): Align docs phrasing and capitalization
2025-02-12 10:12:54 -03:00
Pascal Hertleif
f3b7c0277f
fix(cli): Fix typo in 'concurrent'
2025-02-12 10:12:54 -03:00
ttyS3
28d0933d6c
fix: change threads short flag to -c in cli args to avoid conflict with tree
2024-12-14 19:52:32 -03:00
João Marcos P. Bezerra
e405690d35
chore: tweak tests so they run faster
2024-11-20 05:23:20 -03:00
João Marcos P. Bezerra
2f7c7e8ff2
tests: fix UI snapshot tests
2024-11-20 04:02:02 -03:00
João Marcos P. Bezerra
ca31742394
run clippy for tests too
2024-11-17 17:07:36 -03:00
João M. Bezerra
730ccbcf2a
Update snapshot tests
2024-11-17 14:50:02 -03:00
Jonas Frei
32b50e9c7a
Added test code, handled BlockSize error, block size = 16MiB
...
Signed-off-by: Jonas Frei <freijon@pm.me>
2024-11-17 14:50:02 -03:00
João Marcos P. Bezerra
3d717ec3bc
update snapshots
2024-09-07 00:24:50 -03:00
João M. Bezerra
5dac8431f2
Fix --format
parsing extensions with dots
...
Also improve error reporting for `--format` with malformed or
unsupported extensions
This commit is very messy, as it also does an refac in the project,
which should ideally be in a separated commit
2024-09-07 00:24:50 -03:00
ttyS3
8987992c21
chore: fix tests
2024-09-06 21:47:03 -03:00
ttyS3
058be43cf4
test: fix warning: use of deprecated macro ui
(it's alias, actual is insta::assert_display_snapshot): use assert_snapshot!() instead
2024-09-06 21:47:03 -03:00
Ryan Roden-Corrent
a7fe78fc68
Write decompressed stdin to stdin-output.
2024-08-26 03:40:52 -03:00
Ryan Roden-Corrent
77c1a4e9db
Support decompressing stdin.
...
Fixes #687 .
If "-" is passed as a filename, decompress data from stdin.
Currently `--format` must be passed as well, but as a next step,
we could try to infer the format from magic numbers.
As stdin is not connected to the terminal, we cannot prompt for Y/N
when warning about decompression in memory, for e.g. zip. Just default
to No, and require passing "-y" in these cases.
For zip, we have to buffer the whole stream in memory to seek into it,
just as we do with a chained decoder like `.zip.bz`.
The rar format requires an actual file (not an `impl Read`), so
we write a temp file that it can decode.
When decoding a single-file archive (e.g. file.bz), the output filename
is just `-`, since we don't know the original filename. I had to add
a bit of a hack to the tests to work around this. Another option
would be to interpret "-d" as a destination filename in this case.
When decoding a multi-file archive, I decided to unpack directly into
the destination directory, as this seemed like a better experience than
adding a top-level "-" folder inside the destination.
2024-08-26 03:40:52 -03:00
Ryan Roden-Corrent
4a323aeba8
Fix confusion between empty/nonempty test.
...
The single_empty_file test was writing random content to the file,
whereas the single_file test was writing an empty file.
Only the latter tested different levels, so I figured that test
was the one that should be using actual file content.
2024-07-14 18:22:44 -03:00
Antonios Barotsis
c4f2f6fcb6
fmt
2024-02-28 20:27:32 -03:00
Antonios Barotsis
8e43cd2afa
Change existing method docs to valid rustdoc
2024-02-28 20:27:32 -03:00
Antonios Barotsis
c894829c37
Silence invalid clippy lint (windows)
2024-02-28 20:27:32 -03:00
Antonios Barotsis
f847040e69
Fix clippy performance lint
...
See https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization
2024-02-28 20:27:32 -03:00
Antonios Barotsis
63ad6b419c
Replace shell commands with File::create
2024-02-28 20:27:32 -03:00
cyqsimon
fa2d214fee
Feature-gate RAR support
2023-12-14 23:32:17 -03:00
cyqsimon
1c30f51051
Make test outputs identical on all platforms
2023-12-13 19:32:55 -03:00
cyqsimon
23936c3d2c
Run tests on every target
2023-12-13 19:32:55 -03:00
João Marcos P. Bezerra
4314a3bbdd
Mention Rar support in README and help
2023-12-05 13:04:08 -03:00
Ilya Grigoriev
e2796cef78
Mention 7z support in README and help
2023-12-05 13:04:08 -03:00
Ilya Grigoriev
9f82c9a655
Clarify that .sz refers to Google's Snappy format
...
It needs to be disambiguated from the unfortunately named
SZ compression, see https://szcompressor.org/ .
Fixes #563
2023-12-05 13:04:08 -03:00
João Marcos P. Bezerra
f3db923d83
Decrease memory usage in ARMv7 CI
...
Our GitHub Actions CI was failing because the ARMv7 systems use QEMU
which consumes more memory than usual, by decreasing the memory usage,
we expect to make it all work again.
2023-11-28 20:29:28 -03:00
João Marcos P. Bezerra
d07c65508a
Removing redundant code
2023-11-25 21:33:22 -03:00
Flat
69b1db4a35
chore: cargo fmt
2023-11-25 21:33:22 -03:00
Flat
97b4356aa8
feat: implement 7zip support for compression and decompression
...
This also fixes symlink canonicalization for Windows and fixes UI tests on Windows.
2023-11-25 21:33:22 -03:00
figsoda
4bea6af526
add 7z to tests
2023-11-25 21:33:22 -03:00
Łukasz Krawiec
dade163243
added support for listing and decompressing .rar archives
2023-11-15 08:59:00 -03:00
João M. Bezerra
a26d3d34ce
Improve hints when decompressing with no extension
...
refactored `check_missing_formats_when_decompressing` to be aware of
missing extensions and unsupported extensions in order to give a more
detailed error message
2023-09-17 20:05:54 -03:00
João M. Bezerra
bc1d9457f0
ui tests: fix for MacOS and skip for Windows
2023-09-17 19:06:14 -03:00
João M. Bezerra
af7e95ae98
add UI tests guide in CONTRIBUTING.md
2023-09-17 19:06:14 -03:00
João M. Bezerra
192eaca5dc
add ui snapshot tests
...
these tests are used to assert on Ouch's output for error reports and
progress logging
2023-09-17 19:06:14 -03:00