43 Commits

Author SHA1 Message Date
Gabriel Simonetto
09b050d836 Introduce fs_err as a replacement for fs 2021-10-30 11:17:38 -03:00
Vinícius Miguel
14961bed65
Check if a folder is being compressed to a non-archive format (#79) 2021-10-07 17:09:33 -03:00
Vinícius Rodrigues Miguel
e7dd6f2d4f Don't use colors when stdout or stderr are being redirected 2021-10-05 21:12:15 -03:00
Vinícius Rodrigues Miguel
6085807ddf cd_into_same_dir_as: allow the proper IO error to bubble up and add docs 2021-09-17 11:54:55 -03:00
Vinícius Rodrigues Miguel
b099e4ac20 Respect the NO_COLOR env. arg. 2021-09-17 00:55:38 -03:00
Vinícius Rodrigues Miguel
55aa65dcea Reduced repetition caused by [INFO] printing 2021-09-17 00:22:41 -03:00
Vinícius Rodrigues Miguel
c4a4792816 Misc cleanup 2021-09-16 23:14:00 -03:00
Vinícius Rodrigues Miguel
eabaac0145 Run rustfmt 2021-09-16 21:35:18 -03:00
João M. Bezerra
c9d4eea403 Minor renaming 2021-08-13 02:14:28 -03:00
João M. Bezerra
8f7f812e87 Removing unused macros 2021-08-04 12:41:32 -03:00
João M. Bezerra
bb93e46535 Reworked compression
Now works with multiple formats, like
archive.zip.gz.lz.gz.gz2.xz

Now with minimum in-memory copying, compressing and decompressing (with
exception to .zip, due to the format limitations) is all done directly
into the final destination file.
2021-08-03 21:18:22 -03:00
João M. Bezerra
ac4948abf7 Decompression: multiple formats, no extra copying
Rewrote decompression to use chained decoders, creating a stream and
avoiding in-memory decompression, which caused redundant copying.

Now ouch supports any number of extensions as decompressing formats, not
only two.
2021-08-03 16:58:21 -03:00
Vinícius Rodrigues Miguel
a9673a3eba Reuse Confirmation struct when checking for overwrite permission 2021-07-25 01:23:58 -03:00
João M. Bezerra
d1734b54cb Eliding some lifetimes 2021-05-28 03:14:03 -03:00
João M. Bezerra
57a3d231eb Turning oof subcrate into a module 2021-05-26 21:54:50 -03:00
João M. Bezerra
d01947d9e1 Adding rustfmt.toml and reformatting 2021-05-16 17:52:29 -03:00
Vinícius Miguel
b614533fd5 utils: fix usage of the -n, --no flag 2021-04-08 22:31:10 -03:00
Vinícius Miguel
d9b39706e2 Drop dependency on Termion 2021-04-07 02:23:50 -03:00
Vinícius Miguel
0026e4d4de Drop dependency on Colored 2021-04-07 02:02:50 -03:00
João M. Bezerra
3ac28b8d5c Fixing Windows build warnings 2021-04-06 23:16:39 -03:00
João M. Bezerra
bb004dc78c Fixing Windows build: no termion support 2021-04-06 23:12:40 -03:00
João M. Bezerra
df1bc879cb New --help message 2021-04-06 22:52:41 -03:00
João M. Bezerra
3869c2502e Moving bytes.rs implementation to utils.rs 2021-04-06 21:16:33 -03:00
João M. Bezerra
78d5f435ee Minor style changes 2021-04-06 20:14:33 -03:00
Vinícius Miguel
f9272b5ce5 evaluator: Verify if input files are decompressible 2021-04-06 04:30:36 -03:00
Vinícius Rodrigues Miguel
011626f09b (WIP) Minor misc. changes 2021-04-05 02:57:46 -03:00
João M. Bezerra
28901ec44e Binary size decreased by 35% (-400KB)
Huge refactor, removed totally `clap` to use our argparsing instead.
500+ modified.
2021-04-04 23:26:57 -03:00
João M. Bezerra
b45f38f5fa Add utils::to_utf 2021-04-04 23:18:25 -03:00
João M. Bezerra
5b37a117f1 Clippy lints 2021-04-04 01:58:22 -03:00
Vinícius Rodrigues Miguel
b002de78d9 Show better error messages 2021-03-30 00:11:46 -03:00
Vinícius Rodrigues Miguel
2dc828c0ff (WIP) Showing better error messages 2021-03-29 23:11:22 -03:00
Vinícius Rodrigues Miguel
0f0b086943 Use the the -y and -n flags when decompressing .tar and .zip 2021-03-29 01:37:01 -03:00
Vinícius Rodrigues Miguel
91f411439a rustfmt 2021-03-27 01:34:43 -03:00
Vinícius Rodrigues Miguel
234e0406a1 Don't allow ouch to compress the root folder 2021-03-27 00:37:47 -03:00
Vinícius Rodrigues Miguel
8e37078043 zip: ensure usage of relational paths during compression 2021-03-26 22:56:57 -03:00
João M. Bezerra
ce26246fd4 Changing the error imports 2021-03-26 14:03:06 -03:00
João M. Bezerra
755cc2a40d Refactoring and Clippy warnings 2021-03-25 20:50:42 -03:00
Vinícius Rodrigues Miguel
965041310c Make ouch support paths with dot-dot (..) for input files/directories 2021-03-25 03:20:20 -03:00
Vinícius Rodrigues Miguel
9ea18659e5 Update README, slightly reduce code repetition 2021-03-24 18:35:01 -03:00
Vinícius Rodrigues Miguel
bdc16fdb17 Add support for Bzip compression (includes .tar.bz2 and .zip.bz2 and etc) 2021-03-24 14:33:43 -03:00
Vinícius Rodrigues Miguel
e08703850c Add support for decompressing .tar.{bz, xz, lz} and .zip.{bz, xz, lz} 2021-03-22 04:46:54 -03:00
Vinícius Rodrigues Miguel
e705024c61 decompressors.zip: now working 2021-03-21 19:11:27 -03:00
Vinícius Rodrigues Miguel
0a81384dd8 (Small) Zip decompressor progress 2021-03-21 15:41:05 -03:00