1269 Commits

Author SHA1 Message Date
ttyS3
d4e252a732 chore: remove comment from Cross configuration 2024-09-06 21:47:03 -03:00
ttyS3
a241397d95 ci: use newer gcc version for cross target aarch64-unknown-linux-gnu and armv7-unknown-linux-gnueabihf 2024-09-06 21:47:03 -03:00
ttyS3
9b092fef71 style: cargo fmt 2024-09-06 21:47:03 -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
ttyS3
3392730d66 style: lint the code 2024-09-06 21:47:03 -03:00
ttyS3
d21db763f1 feat: support decompress and list zip file 2024-09-06 21:47:03 -03:00
ttyS3
75e16510df feat(list): support list and decompress 7z files with password 2024-09-06 21:47:03 -03:00
ttyS3
512d2445b2 feat: add password support for decompress and list 2024-09-06 21:47:03 -03:00
dependabot[bot]
4ac8e2ba91 build(deps): bump bstr from 1.9.1 to 1.10.0
Bumps [bstr](https://github.com/BurntSushi/bstr) from 1.9.1 to 1.10.0.
- [Commits](https://github.com/BurntSushi/bstr/compare/1.9.1...1.10.0)

---
updated-dependencies:
- dependency-name: bstr
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-31 17:47:51 -03:00
dependabot[bot]
b8f78d2925 build(deps): bump proptest from 1.4.0 to 1.5.0
Bumps [proptest](https://github.com/proptest-rs/proptest) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/proptest-rs/proptest/releases)
- [Changelog](https://github.com/proptest-rs/proptest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/proptest-rs/proptest/compare/v1.4.0...v1.5.0)

---
updated-dependencies:
- dependency-name: proptest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-31 17:47:33 -03:00
dependabot[bot]
b814599d77 build(deps): bump clap from 4.5.13 to 4.5.16
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.13 to 4.5.16.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.13...clap_complete-v4.5.16)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-31 17:47:18 -03:00
dependabot[bot]
f2800c7b41 build(deps): bump test-strategy from 0.3.1 to 0.4.0
Bumps [test-strategy](https://github.com/frozenlib/test-strategy) from 0.3.1 to 0.4.0.
- [Commits](https://github.com/frozenlib/test-strategy/compare/v0.3.1...v0.4.0)

---
updated-dependencies:
- dependency-name: test-strategy
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-29 04:05:01 -03:00
dependabot[bot]
dbde18668a build(deps): bump sevenz-rust from 0.6.0 to 0.6.1
Bumps [sevenz-rust](https://github.com/dyz1990/sevenz-rust) from 0.6.0 to 0.6.1.
- [Changelog](https://github.com/dyz1990/sevenz-rust/blob/main/CHANGELOG.md)
- [Commits](https://github.com/dyz1990/sevenz-rust/commits)

---
updated-dependencies:
- dependency-name: sevenz-rust
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-29 04:04:19 -03:00
dependabot[bot]
7b9ec7d49a build(deps): bump clap_complete from 4.5.2 to 4.5.13
Bumps [clap_complete](https://github.com/clap-rs/clap) from 4.5.2 to 4.5.13.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.2...clap_complete-v4.5.13)

---
updated-dependencies:
- dependency-name: clap_complete
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-29 04:04:07 -03:00
dependabot[bot]
6f183fbe6a build(deps): bump clap from 4.5.4 to 4.5.13
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.4 to 4.5.13.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.4...v4.5.13)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 05:27:36 -03:00
dependabot[bot]
b2d0ff75c8 build(deps): bump tar from 0.4.40 to 0.4.41
Bumps [tar](https://github.com/alexcrichton/tar-rs) from 0.4.40 to 0.4.41.
- [Commits](https://github.com/alexcrichton/tar-rs/compare/0.4.40...0.4.41)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 03:58:17 -03:00
dependabot[bot]
bee5ae05ae build(deps): bump infer from 0.15.0 to 0.16.0
Bumps [infer](https://github.com/bojand/infer) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/bojand/infer/releases)
- [Commits](https://github.com/bojand/infer/compare/v0.15.0...v0.16.0)

---
updated-dependencies:
- dependency-name: infer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 03:57:48 -03:00
Ryan Roden-Corrent
61f96cab13 Fix docstring formatting for clippy.
Fixes:

```
error: doc list item missing indentation
   --> src/commands/decompress.rs:237:5
    |
237 | /// Note: This functions assumes that `output_dir` exists
    |     ^
    |
    = help: if this is supposed to be its own paragraph, add a blank line
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
    = note: `-D clippy::doc-lazy-continuation` implied by `-D warnings`
    = help: to override `-D warnings` add `#[allow(clippy::doc_lazy_continuation)]`
help: indent this line
    |
237 | ///   Note: This functions assumes that `output_dir` exists
    |     ++
```
2024-08-26 03:40:52 -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
nalabrie
3867fa33e9 adjust README to indicate zstd runs in parallel, remove leftover code comment 2024-07-27 01:07:23 -03:00
Nicky Labrie
01b919043c Update CHANGELOG.md
fixed pull number
2024-07-27 01:07:23 -03:00
nalabrie
0ec7d4489d Added multithreading by default to zstd compression. Bumped zstd package version. Added num_cpus package to get core count. 2024-07-27 01:07:23 -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
dependabot[bot]
b7ebcd3703 build(deps): bump parse-display from 0.9.0 to 0.9.1
Bumps [parse-display](https://github.com/frozenlib/parse-display) from 0.9.0 to 0.9.1.
- [Changelog](https://github.com/frozenlib/parse-display/blob/master/CHANGELOG.md)
- [Commits](https://github.com/frozenlib/parse-display/compare/v0.9.0...v0.9.1)

---
updated-dependencies:
- dependency-name: parse-display
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-02 08:21:08 -03:00
dependabot[bot]
e2dd3186ce build(deps): bump insta from 1.38.0 to 1.39.0
Bumps [insta](https://github.com/mitsuhiko/insta) from 1.38.0 to 1.39.0.
- [Release notes](https://github.com/mitsuhiko/insta/releases)
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/insta/compare/1.38.0...1.39.0)

---
updated-dependencies:
- dependency-name: insta
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-27 00:38:07 -03:00
dependabot[bot]
ee505878c1 build(deps): bump libc from 0.2.153 to 0.2.155
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.153 to 0.2.155.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.153...0.2.155)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-27 00:16:27 -03:00
dependabot[bot]
f02e7fff26 build(deps): bump flate2 from 1.0.29 to 1.0.30
Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.0.29 to 1.0.30.
- [Release notes](https://github.com/rust-lang/flate2-rs/releases)
- [Commits](https://github.com/rust-lang/flate2-rs/compare/1.0.29...1.0.30)

---
updated-dependencies:
- dependency-name: flate2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-01 21:28:46 -03:00
dependabot[bot]
4d660f678c build(deps): bump flate2 from 1.0.28 to 1.0.29
Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.0.28 to 1.0.29.
- [Release notes](https://github.com/rust-lang/flate2-rs/releases)
- [Commits](https://github.com/rust-lang/flate2-rs/compare/1.0.28...1.0.29)

---
updated-dependencies:
- dependency-name: flate2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-27 02:56:40 -03:00
dependabot[bot]
1e383d65cd build(deps): bump time from 0.3.35 to 0.3.36
Bumps [time](https://github.com/time-rs/time) from 0.3.35 to 0.3.36.
- [Release notes](https://github.com/time-rs/time/releases)
- [Changelog](https://github.com/time-rs/time/blob/main/CHANGELOG.md)
- [Commits](https://github.com/time-rs/time/compare/v0.3.35...v0.3.36)

---
updated-dependencies:
- dependency-name: time
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-12 11:40:07 -03:00
dependabot[bot]
419abbf4d7
build(deps): bump sevenz-rust from 0.5.4 to 0.6.0 (#656) 2024-04-11 04:24:01 +00:00
dependabot[bot]
0d6045eacd
build(deps): bump clap_complete from 4.5.1 to 4.5.2 (#657) 2024-04-11 03:26:28 +00:00
dependabot[bot]
fbebf549e9
build(deps): bump time from 0.3.34 to 0.3.35 (#658) 2024-04-11 03:26:21 +00:00
dependabot[bot]
4994d00616 build(deps): bump lz4_flex from 0.11.2 to 0.11.3
Bumps [lz4_flex](https://github.com/pseitz/lz4_flex) from 0.11.2 to 0.11.3.
- [Release notes](https://github.com/pseitz/lz4_flex/releases)
- [Changelog](https://github.com/PSeitz/lz4_flex/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pseitz/lz4_flex/commits)

---
updated-dependencies:
- dependency-name: lz4_flex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-03 00:25:13 -03:00
dependabot[bot]
e08631f4d5 build(deps): bump insta from 1.37.0 to 1.38.0
Bumps [insta](https://github.com/mitsuhiko/insta) from 1.37.0 to 1.38.0.
- [Release notes](https://github.com/mitsuhiko/insta/releases)
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/insta/compare/1.37.0...1.38.0)

---
updated-dependencies:
- dependency-name: insta
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-01 11:02:15 -03:00
Antonios Barotsis
a14bbfc904 Switched to explicit shutdown message instead of None 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
a3e5bac438 fix STDIN syncrhonization problems 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
ccbdceac34 logger: fix warning output 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
88e9d9afc7 update CHANGELOG.md 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
62d70225ab remove macros.rs module 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
615a7d3c49 logger: flush logs temporarily 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
c56978d1e7 handle logger thread in main function 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
25d7d3d870 logger: refactor usage of sync primitives
use `std::sync::Barrier` instead of the barebones `Condvar` + `Mutex`
combo
2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
792db000bb move spawn_logger_thread to logger module
and create another module inside of the logger module to reorganize
things
2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
0b760aadf7 fix logger thread shutdown system 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
39395c797a move code to function run_cmd 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
d0280f0579 move code to function spawn_logger_thread 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
28daa9e8c4 make logger channel static 2024-04-01 10:58:35 -03:00
João Marcos P. Bezerra
bed8ea0276 create Logger::info_accessible 2024-04-01 10:58:35 -03:00