omnizip 0.3.39 → 0.3.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +102 -0
- data/README.adoc +31 -0
- data/lib/omnizip/algorithm_registry.rb +7 -0
- data/lib/omnizip/algorithms/deflate64.rb +5 -8
- data/lib/omnizip/buffer/memory_extractor.rb +31 -6
- data/lib/omnizip/buffer/seven_zip_bridge.rb +154 -0
- data/lib/omnizip/buffer.rb +6 -5
- data/lib/omnizip/commands/archive_create_command.rb +18 -25
- data/lib/omnizip/commands/decompress_command.rb +29 -1
- data/lib/omnizip/commands/metadata_command.rb +67 -3
- data/lib/omnizip/converter/seven_zip_to_zip_strategy.rb +14 -52
- data/lib/omnizip/converter/zip_to_seven_zip_strategy.rb +21 -63
- data/lib/omnizip/formats/rar/block_parser.rb +42 -6
- data/lib/omnizip/formats/rar/decompressor.rb +35 -8
- data/lib/omnizip/formats/rar/header.rb +18 -1
- data/lib/omnizip/formats/rar/models/rar_entry.rb +1 -1
- data/lib/omnizip/formats/rar/reader.rb +17 -22
- data/lib/omnizip/formats/rar/writer.rb +1 -1
- data/lib/omnizip/formats/rar.rb +31 -0
- data/lib/omnizip/formats/rar3/reader.rb +66 -314
- data/lib/omnizip/formats/rar5/reader.rb +80 -297
- data/lib/omnizip/formats/rar5/writer.rb +33 -180
- data/lib/omnizip/formats/seven_zip/writer.rb +17 -0
- data/lib/omnizip/version.rb +1 -1
- data/readme-docs/api-usage.adoc +1 -1
- data/readme-docs/architecture.adoc +1 -1
- data/readme-docs/compression-algorithms.adoc +1 -1
- data/readme-docs/installation.adoc +1 -1
- data/readme-docs/performance-profiler.adoc +1 -1
- metadata +3 -2
data/lib/omnizip/version.rb
CHANGED
data/readme-docs/api-usage.adoc
CHANGED
|
@@ -340,7 +340,7 @@ Zstandard offers fast compression with good ratios, using the native library.
|
|
|
340
340
|
|
|
341
341
|
[source,ruby]
|
|
342
342
|
----
|
|
343
|
-
algorithm = Omnizip::AlgorithmRegistry.get(:
|
|
343
|
+
algorithm = Omnizip::AlgorithmRegistry.get(:zstandard).new(level: 3)
|
|
344
344
|
algorithm.compress(input, output)
|
|
345
345
|
----
|
|
346
346
|
|
|
@@ -246,7 +246,7 @@ end
|
|
|
246
246
|
|
|
247
247
|
# List all available
|
|
248
248
|
algorithms = Omnizip::AlgorithmRegistry.available
|
|
249
|
-
# => [:lzma, :lzma2, :bzip2, :ppmd7, :ppmd8, :deflate, :deflate64, :
|
|
249
|
+
# => [:lzma, :lzma2, :bzip2, :ppmd7, :ppmd8, :deflate, :deflate64, :zstandard]
|
|
250
250
|
----
|
|
251
251
|
|
|
252
252
|
=== Adding New Algorithms
|
|
@@ -63,7 +63,7 @@ require 'omnizip'
|
|
|
63
63
|
|
|
64
64
|
# Check available algorithms
|
|
65
65
|
puts Omnizip::AlgorithmRegistry.available.inspect
|
|
66
|
-
# => [:lzma, :lzma2, :bzip2, :ppmd7, :ppmd8, :deflate, :deflate64, :
|
|
66
|
+
# => [:lzma, :lzma2, :bzip2, :ppmd7, :ppmd8, :deflate, :deflate64, :zstandard]
|
|
67
67
|
|
|
68
68
|
# Get version
|
|
69
69
|
puts Omnizip::VERSION
|
|
@@ -302,7 +302,7 @@ def compare_algorithms(data, algorithms)
|
|
|
302
302
|
end
|
|
303
303
|
|
|
304
304
|
data = File.read('test_file.dat')
|
|
305
|
-
compare_algorithms(data, [:deflate, :lzma, :bzip2, :
|
|
305
|
+
compare_algorithms(data, [:deflate, :lzma, :bzip2, :zstandard])
|
|
306
306
|
----
|
|
307
307
|
|
|
308
308
|
=== Example 3: Memory Leak Detection
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: omnizip
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.41
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ribose Inc.
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-08-
|
|
11
|
+
date: 2026-08-29 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: base64
|
|
@@ -333,6 +333,7 @@ files:
|
|
|
333
333
|
- lib/omnizip/buffer.rb
|
|
334
334
|
- lib/omnizip/buffer/memory_archive.rb
|
|
335
335
|
- lib/omnizip/buffer/memory_extractor.rb
|
|
336
|
+
- lib/omnizip/buffer/seven_zip_bridge.rb
|
|
336
337
|
- lib/omnizip/checksum_registry.rb
|
|
337
338
|
- lib/omnizip/checksums.rb
|
|
338
339
|
- lib/omnizip/checksums/crc32.rb
|