omnizip 0.3.2 → 0.3.4

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.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +243 -368
  3. data/README.adoc +101 -5
  4. data/docs/guides/archive-formats/index.adoc +31 -1
  5. data/docs/guides/archive-formats/ole-format.adoc +316 -0
  6. data/docs/guides/archive-formats/rpm-format.adoc +249 -0
  7. data/docs/index.adoc +12 -2
  8. data/lib/omnizip/algorithms/lzma/distance_coder.rb +29 -18
  9. data/lib/omnizip/algorithms/lzma/encoder.rb +2 -1
  10. data/lib/omnizip/algorithms/lzma/length_coder.rb +6 -3
  11. data/lib/omnizip/algorithms/lzma/literal_decoder.rb +2 -1
  12. data/lib/omnizip/algorithms/lzma/lzip_decoder.rb +40 -13
  13. data/lib/omnizip/algorithms/lzma/range_decoder.rb +36 -2
  14. data/lib/omnizip/algorithms/lzma/range_encoder.rb +19 -0
  15. data/lib/omnizip/algorithms/lzma/xz_encoder_fast.rb +2 -1
  16. data/lib/omnizip/algorithms/lzma/xz_utils_decoder.rb +148 -112
  17. data/lib/omnizip/algorithms/lzma.rb +20 -5
  18. data/lib/omnizip/algorithms/ppmd7/decoder.rb +25 -21
  19. data/lib/omnizip/algorithms/ppmd7/encoder.rb +4 -11
  20. data/lib/omnizip/algorithms/sevenzip_lzma2.rb +2 -1
  21. data/lib/omnizip/algorithms/xz_lzma2.rb +2 -1
  22. data/lib/omnizip/algorithms/zstandard/constants.rb +125 -9
  23. data/lib/omnizip/algorithms/zstandard/decoder.rb +202 -17
  24. data/lib/omnizip/algorithms/zstandard/encoder.rb +197 -17
  25. data/lib/omnizip/algorithms/zstandard/frame/block.rb +128 -0
  26. data/lib/omnizip/algorithms/zstandard/frame/header.rb +224 -0
  27. data/lib/omnizip/algorithms/zstandard/fse/bitstream.rb +186 -0
  28. data/lib/omnizip/algorithms/zstandard/fse/encoder.rb +325 -0
  29. data/lib/omnizip/algorithms/zstandard/fse/table.rb +269 -0
  30. data/lib/omnizip/algorithms/zstandard/huffman.rb +272 -0
  31. data/lib/omnizip/algorithms/zstandard/huffman_encoder.rb +339 -0
  32. data/lib/omnizip/algorithms/zstandard/literals.rb +178 -0
  33. data/lib/omnizip/algorithms/zstandard/literals_encoder.rb +251 -0
  34. data/lib/omnizip/algorithms/zstandard/sequences.rb +346 -0
  35. data/lib/omnizip/buffer/memory_extractor.rb +3 -3
  36. data/lib/omnizip/buffer.rb +2 -2
  37. data/lib/omnizip/filters/delta.rb +2 -1
  38. data/lib/omnizip/filters/registry.rb +6 -6
  39. data/lib/omnizip/formats/cpio/bounded_io.rb +66 -0
  40. data/lib/omnizip/formats/lzip.rb +2 -1
  41. data/lib/omnizip/formats/lzma_alone.rb +2 -1
  42. data/lib/omnizip/formats/ole/allocation_table.rb +244 -0
  43. data/lib/omnizip/formats/ole/constants.rb +61 -0
  44. data/lib/omnizip/formats/ole/dirent.rb +380 -0
  45. data/lib/omnizip/formats/ole/header.rb +198 -0
  46. data/lib/omnizip/formats/ole/ranges_io.rb +264 -0
  47. data/lib/omnizip/formats/ole/storage.rb +305 -0
  48. data/lib/omnizip/formats/ole/types/variant.rb +328 -0
  49. data/lib/omnizip/formats/ole.rb +145 -0
  50. data/lib/omnizip/formats/rar/compression/ppmd/decoder.rb +92 -49
  51. data/lib/omnizip/formats/rar/compression/ppmd/encoder.rb +13 -20
  52. data/lib/omnizip/formats/rar/rar5/compression/lzss.rb +6 -2
  53. data/lib/omnizip/formats/rar3/reader.rb +6 -2
  54. data/lib/omnizip/formats/rar5/reader.rb +4 -1
  55. data/lib/omnizip/formats/rpm/constants.rb +58 -0
  56. data/lib/omnizip/formats/rpm/entry.rb +102 -0
  57. data/lib/omnizip/formats/rpm/header.rb +113 -0
  58. data/lib/omnizip/formats/rpm/lead.rb +122 -0
  59. data/lib/omnizip/formats/rpm/tag.rb +230 -0
  60. data/lib/omnizip/formats/rpm.rb +434 -0
  61. data/lib/omnizip/formats/seven_zip/bcj2_stream_decompressor.rb +239 -0
  62. data/lib/omnizip/formats/seven_zip/coder_chain.rb +32 -8
  63. data/lib/omnizip/formats/seven_zip/constants.rb +1 -1
  64. data/lib/omnizip/formats/seven_zip/reader.rb +84 -8
  65. data/lib/omnizip/formats/seven_zip/stream_compressor.rb +2 -1
  66. data/lib/omnizip/formats/seven_zip/stream_decompressor.rb +6 -0
  67. data/lib/omnizip/formats/seven_zip/writer.rb +21 -9
  68. data/lib/omnizip/formats/seven_zip.rb +10 -0
  69. data/lib/omnizip/formats/xar/entry.rb +18 -5
  70. data/lib/omnizip/formats/xar/header.rb +34 -6
  71. data/lib/omnizip/formats/xar/reader.rb +43 -10
  72. data/lib/omnizip/formats/xar/toc.rb +34 -21
  73. data/lib/omnizip/formats/xar/writer.rb +15 -5
  74. data/lib/omnizip/formats/xz_impl/block_decoder.rb +45 -33
  75. data/lib/omnizip/formats/xz_impl/block_encoder.rb +2 -1
  76. data/lib/omnizip/formats/xz_impl/index_decoder.rb +3 -1
  77. data/lib/omnizip/formats/xz_impl/stream_header_parser.rb +2 -1
  78. data/lib/omnizip/formats/zip/end_of_central_directory.rb +4 -3
  79. data/lib/omnizip/implementations/seven_zip/lzma/decoder.rb +14 -6
  80. data/lib/omnizip/implementations/seven_zip/lzma/encoder.rb +2 -1
  81. data/lib/omnizip/implementations/seven_zip/lzma2/encoder.rb +28 -13
  82. data/lib/omnizip/implementations/xz_utils/lzma2/encoder.rb +13 -6
  83. data/lib/omnizip/pipe/stream_compressor.rb +1 -1
  84. data/lib/omnizip/version.rb +1 -1
  85. data/readme-docs/compression-algorithms.adoc +6 -2
  86. metadata +30 -2
data/.rubocop_todo.yml CHANGED
@@ -1,145 +1,148 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2026-01-31 01:50:26 UTC using RuboCop version 1.81.6.
3
+ # on 2026-02-20 05:39:34 UTC using RuboCop version 1.81.6.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
- # Offense count: 1
10
- # Configuration parameters: Severity.
11
- Gemspec/RequiredRubyVersion:
12
- Exclude:
13
- - 'omnizip.gemspec'
14
-
15
- # Offense count: 13
9
+ # Offense count: 119
16
10
  # This cop supports safe autocorrection (--autocorrect).
17
11
  # Configuration parameters: EnforcedStyle, IndentationWidth.
18
12
  # SupportedStyles: with_first_argument, with_fixed_indentation
19
13
  Layout/ArgumentAlignment:
20
- Exclude:
21
- - 'compare_bypass_checksum.rb'
22
- - 'extract_dict_bytes.rb'
23
- - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
24
- - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
25
- - 'lib/omnizip/algorithms/lzma2/decoder.rb'
26
- - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
27
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
28
- - 'tmp_trace_chunk1.rb'
29
- - 'trace_control_a0.rb'
14
+ Enabled: false
30
15
 
31
- # Offense count: 4
16
+ # Offense count: 7
32
17
  # This cop supports safe autocorrection (--autocorrect).
33
18
  # Configuration parameters: EnforcedStyle, IndentationWidth.
34
19
  # SupportedStyles: with_first_element, with_fixed_indentation
35
20
  Layout/ArrayAlignment:
36
21
  Exclude:
37
- - 'compare_bypass_checksum.rb'
38
- - 'compare_clean.rb'
22
+ - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
23
+ - 'lib/omnizip/algorithms/zstandard/fse/encoder.rb'
24
+ - 'lib/omnizip/algorithms/zstandard/literals_encoder.rb'
25
+ - 'lib/omnizip/formats/xar/header.rb'
26
+ - 'spec/omnizip/algorithms/lzma/distance_coder_spec.rb'
27
+ - 'spec/omnizip/seven_zip_tool_compatibility_spec.rb'
39
28
 
40
- # Offense count: 32
29
+ # Offense count: 13
30
+ # This cop supports safe autocorrection (--autocorrect).
31
+ # Configuration parameters: IndentationWidth.
32
+ Layout/AssignmentIndentation:
33
+ Exclude:
34
+ - 'lib/omnizip/algorithms/lzma.rb'
35
+ - 'lib/omnizip/formats/rar/rar5/compression/lzss.rb'
36
+ - 'lib/omnizip/formats/xar/entry.rb'
37
+ - 'lib/omnizip/formats/xar/toc.rb'
38
+
39
+ # Offense count: 10
41
40
  # This cop supports safe autocorrection (--autocorrect).
42
41
  # Configuration parameters: EnforcedStyleAlignWith, Severity.
43
42
  # SupportedStylesAlignWith: start_of_line, begin
44
43
  Layout/BeginEndAlignment:
45
44
  Exclude:
46
- - 'extract_dict_bytes.rb'
47
45
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
48
- - 'lib/omnizip/algorithms/lzma2/decoder.rb'
49
- - 'trace_finish_state_reset.rb'
50
- - 'trace_init_bytes.rb'
51
- - 'trace_init_bytes2.rb'
52
- - 'trace_init_bytes3.rb'
53
46
 
54
- # Offense count: 25
47
+ # Offense count: 28
55
48
  # This cop supports safe autocorrection (--autocorrect).
56
49
  # Configuration parameters: EnforcedStyleAlignWith.
57
50
  # SupportedStylesAlignWith: either, start_of_block, start_of_line
58
51
  Layout/BlockAlignment:
59
52
  Exclude:
60
- - 'analyze_chunks.rb'
61
- - 'analyze_xz_structure.rb'
62
- - 'compare_outputs.rb'
63
- - 'lib/omnizip/algorithms/lzma2/decoder.rb'
64
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
65
- - 'scripts/bypass_checksum_compare.rb'
66
- - 'scripts/compare_xz_decode.rb'
67
- - 'scripts/debug_lzma2_chunk_type.rb'
68
- - 'scripts/trace_operations_250_256.rb'
69
- - 'trace_decode_output.rb'
70
- - 'trace_init_bytes3.rb'
71
- - 'trace_input_pos.rb'
72
- - 'trace_stream_content2.rb'
73
- - 'trace_xz_bytes.rb'
53
+ - 'lib/omnizip/algorithms/lzma/lzip_decoder.rb'
54
+ - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
55
+ - 'lib/omnizip/algorithms/zstandard/fse/encoder.rb'
56
+ - 'lib/omnizip/formats/seven_zip/writer.rb'
57
+ - 'lib/omnizip/formats/xar/reader.rb'
58
+ - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
59
+ - 'lib/omnizip/formats/xz_impl/index_decoder.rb'
60
+ - 'spec/omnizip/algorithms/lzma/xz_compat_spec.rb'
61
+ - 'spec/omnizip/formats/seven_zip/seven_zip_reference_spec.rb'
62
+ - 'spec/omnizip/formats/xar/header_spec.rb'
63
+ - 'spec/omnizip/tool_compatibility_spec.rb'
64
+ - 'spec/omnizip/xz_tool_compatibility_spec.rb'
74
65
 
75
- # Offense count: 9
66
+ # Offense count: 23
76
67
  # This cop supports safe autocorrection (--autocorrect).
77
68
  Layout/BlockEndNewline:
78
69
  Exclude:
79
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
80
- - 'trace_init_bytes3.rb'
81
- - 'trace_input_pos.rb'
82
- - 'trace_reset_bytes.rb'
83
- - 'trace_stream_content2.rb'
70
+ - 'lib/omnizip/algorithms/lzma/lzip_decoder.rb'
71
+ - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
72
+ - 'lib/omnizip/algorithms/zstandard/fse/encoder.rb'
73
+ - 'lib/omnizip/formats/seven_zip/writer.rb'
74
+ - 'lib/omnizip/formats/xar/reader.rb'
75
+ - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
76
+ - 'lib/omnizip/formats/xz_impl/index_decoder.rb'
77
+ - 'spec/omnizip/algorithms/lzma/xz_compat_spec.rb'
78
+ - 'spec/omnizip/formats/seven_zip/seven_zip_reference_spec.rb'
79
+ - 'spec/omnizip/formats/xar/header_spec.rb'
80
+ - 'spec/omnizip/tool_compatibility_spec.rb'
81
+ - 'spec/omnizip/xz_tool_compatibility_spec.rb'
84
82
 
85
- # Offense count: 2
83
+ # Offense count: 20
86
84
  # This cop supports safe autocorrection (--autocorrect).
87
85
  Layout/ClosingParenthesisIndentation:
88
86
  Exclude:
89
87
  - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
90
88
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
89
+ - 'lib/omnizip/implementations/seven_zip/lzma2/encoder.rb'
90
+ - 'spec/omnizip/formats/rar/libarchive_rar_reference_spec.rb'
91
91
 
92
- # Offense count: 2
92
+ # Offense count: 3
93
93
  # This cop supports safe autocorrection (--autocorrect).
94
94
  # Configuration parameters: AllowForAlignment.
95
95
  Layout/CommentIndentation:
96
96
  Exclude:
97
- - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
97
+ - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
98
98
 
99
- # Offense count: 9
99
+ # Offense count: 12
100
100
  # This cop supports safe autocorrection (--autocorrect).
101
101
  Layout/ElseAlignment:
102
102
  Exclude:
103
- - 'compare_bypass_checksum.rb'
104
- - 'extract_dict_bytes.rb'
105
103
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
104
+ - 'lib/omnizip/formats/xar/writer.rb'
106
105
  - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
107
106
 
108
107
  # Offense count: 1
109
108
  # This cop supports safe autocorrection (--autocorrect).
110
- Layout/EmptyLineAfterGuardClause:
109
+ # Configuration parameters: EmptyLineBetweenMethodDefs, EmptyLineBetweenClassDefs, EmptyLineBetweenModuleDefs, DefLikeMacros, AllowAdjacentOneLineDefs, NumberOfEmptyLines.
110
+ Layout/EmptyLineBetweenDefs:
111
111
  Exclude:
112
- - 'lib/omnizip/formats/xz_impl/index_decoder.rb'
112
+ - 'lib/omnizip/algorithms/zstandard/fse/table.rb'
113
113
 
114
- # Offense count: 1
114
+ # Offense count: 2
115
+ # This cop supports safe autocorrection (--autocorrect).
116
+ Layout/EmptyLines:
117
+ Exclude:
118
+ - 'lib/omnizip/algorithms/zstandard/fse/table.rb'
119
+ - 'lib/omnizip/algorithms/zstandard/huffman.rb'
120
+
121
+ # Offense count: 3
115
122
  # This cop supports safe autocorrection (--autocorrect).
116
123
  Layout/EmptyLinesAroundMethodBody:
117
124
  Exclude:
118
- - 'trace_stream_content2.rb'
125
+ - 'lib/omnizip/algorithms/zstandard/huffman.rb'
126
+ - 'lib/omnizip/formats/seven_zip.rb'
119
127
 
120
- # Offense count: 7
128
+ # Offense count: 11
121
129
  # This cop supports safe autocorrection (--autocorrect).
122
130
  # Configuration parameters: EnforcedStyleAlignWith, Severity.
123
131
  # SupportedStylesAlignWith: keyword, variable, start_of_line
124
132
  Layout/EndAlignment:
125
133
  Exclude:
126
- - 'compare_bypass_checksum.rb'
127
- - 'extract_dict_bytes.rb'
128
134
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
135
+ - 'lib/omnizip/formats/xar/writer.rb'
129
136
  - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
130
137
 
131
- # Offense count: 6
138
+ # Offense count: 1
132
139
  # This cop supports safe autocorrection (--autocorrect).
133
140
  # Configuration parameters: AllowForAlignment, AllowBeforeTrailingComments, ForceEqualSignAlignment.
134
141
  Layout/ExtraSpacing:
135
142
  Exclude:
136
- - 'lib/omnizip/algorithms/lzma/range_decoder.rb'
137
- - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
138
- - 'tmp_trace_chunk1.rb'
139
- - 'trace_chunk1_comprehensive.rb'
140
- - 'trace_reset_bytes.rb'
143
+ - 'lib/omnizip/algorithms/zstandard/sequences.rb'
141
144
 
142
- # Offense count: 2
145
+ # Offense count: 20
143
146
  # This cop supports safe autocorrection (--autocorrect).
144
147
  # Configuration parameters: EnforcedStyle, IndentationWidth.
145
148
  # SupportedStyles: consistent, consistent_relative_to_receiver, special_for_inner_method_call, special_for_inner_method_call_in_parentheses
@@ -147,16 +150,31 @@ Layout/FirstArgumentIndentation:
147
150
  Exclude:
148
151
  - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
149
152
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
153
+ - 'lib/omnizip/implementations/seven_zip/lzma2/encoder.rb'
154
+ - 'spec/omnizip/formats/rar/libarchive_rar_reference_spec.rb'
150
155
 
151
- # Offense count: 2
156
+ # Offense count: 4
152
157
  # This cop supports safe autocorrection (--autocorrect).
153
158
  # Configuration parameters: EnforcedStyle, IndentationWidth.
154
159
  # SupportedStyles: special_inside_parentheses, consistent, align_brackets
155
160
  Layout/FirstArrayElementIndentation:
156
161
  Exclude:
157
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
162
+ - 'lib/omnizip/implementations/seven_zip/lzma2/encoder.rb'
163
+ - 'lib/omnizip/implementations/xz_utils/lzma2/encoder.rb'
158
164
 
159
- # Offense count: 4
165
+ # Offense count: 3
166
+ # This cop supports safe autocorrection (--autocorrect).
167
+ # Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
168
+ # SupportedHashRocketStyles: key, separator, table
169
+ # SupportedColonStyles: key, separator, table
170
+ # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
171
+ Layout/HashAlignment:
172
+ Exclude:
173
+ - 'lib/omnizip/algorithms/sevenzip_lzma2.rb'
174
+ - 'lib/omnizip/formats/seven_zip/writer.rb'
175
+ - 'spec/omnizip/formats/xar/entry_spec.rb'
176
+
177
+ # Offense count: 2
160
178
  # This cop supports safe autocorrection (--autocorrect).
161
179
  # Configuration parameters: EnforcedStyle.
162
180
  # SupportedStyles: normal, indented_internal_methods
@@ -164,49 +182,42 @@ Layout/IndentationConsistency:
164
182
  Exclude:
165
183
  - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
166
184
 
167
- # Offense count: 76
185
+ # Offense count: 101
168
186
  # This cop supports safe autocorrection (--autocorrect).
169
187
  # Configuration parameters: Width, AllowedPatterns.
170
188
  Layout/IndentationWidth:
171
189
  Exclude:
172
- - 'compare_bypass_checksum.rb'
173
- - 'extract_dict_bytes.rb'
190
+ - 'lib/omnizip/algorithms/lzma/lzip_decoder.rb'
174
191
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
175
- - 'lib/omnizip/algorithms/lzma2/decoder.rb'
192
+ - 'lib/omnizip/algorithms/zstandard/fse/encoder.rb'
193
+ - 'lib/omnizip/formats/seven_zip/writer.rb'
194
+ - 'lib/omnizip/formats/xar/reader.rb'
195
+ - 'lib/omnizip/formats/xar/writer.rb'
176
196
  - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
177
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
178
- - 'trace_finish_state_reset.rb'
179
- - 'trace_init_bytes.rb'
180
- - 'trace_init_bytes2.rb'
181
- - 'trace_init_bytes3.rb'
182
- - 'trace_input_pos.rb'
183
- - 'trace_reset_bytes.rb'
184
- - 'trace_stream_content2.rb'
185
-
186
- # Offense count: 1
187
- # This cop supports safe autocorrection (--autocorrect).
188
- # Configuration parameters: EnforcedStyle, IndentationWidth.
189
- # SupportedStyles: aligned, indented
190
- Layout/LineEndStringConcatenationIndentation:
191
- Exclude:
192
- - 'lib/omnizip/algorithms/lzma2/decoder.rb'
197
+ - 'lib/omnizip/formats/xz_impl/index_decoder.rb'
198
+ - 'spec/omnizip/algorithms/lzma/xz_compat_spec.rb'
199
+ - 'spec/omnizip/formats/seven_zip/seven_zip_reference_spec.rb'
200
+ - 'spec/omnizip/formats/xar/header_spec.rb'
201
+ - 'spec/omnizip/tool_compatibility_spec.rb'
202
+ - 'spec/omnizip/xz_tool_compatibility_spec.rb'
193
203
 
194
- # Offense count: 2683
204
+ # Offense count: 1940
195
205
  # This cop supports safe autocorrection (--autocorrect).
196
206
  # Configuration parameters: Max, AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, IgnoreCopDirectives, AllowedPatterns, SplitStrings.
197
207
  # URISchemes: http, https
198
208
  Layout/LineLength:
199
209
  Enabled: false
200
210
 
201
- # Offense count: 1
211
+ # Offense count: 2
202
212
  # This cop supports safe autocorrection (--autocorrect).
203
213
  # Configuration parameters: EnforcedStyle.
204
214
  # SupportedStyles: symmetrical, new_line, same_line
205
215
  Layout/MultilineArrayBraceLayout:
206
216
  Exclude:
207
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
217
+ - 'lib/omnizip/implementations/seven_zip/lzma2/encoder.rb'
218
+ - 'lib/omnizip/implementations/xz_utils/lzma2/encoder.rb'
208
219
 
209
- # Offense count: 2
220
+ # Offense count: 20
210
221
  # This cop supports safe autocorrection (--autocorrect).
211
222
  # Configuration parameters: EnforcedStyle.
212
223
  # SupportedStyles: symmetrical, new_line, same_line
@@ -214,76 +225,42 @@ Layout/MultilineMethodCallBraceLayout:
214
225
  Exclude:
215
226
  - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
216
227
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
228
+ - 'lib/omnizip/implementations/seven_zip/lzma2/encoder.rb'
229
+ - 'spec/omnizip/formats/rar/libarchive_rar_reference_spec.rb'
217
230
 
218
- # Offense count: 39
231
+ # Offense count: 19
219
232
  # This cop supports safe autocorrection (--autocorrect).
220
233
  Layout/RescueEnsureAlignment:
221
234
  Exclude:
222
- - 'extract_dict_bytes.rb'
223
235
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
224
- - 'lib/omnizip/algorithms/lzma2/decoder.rb'
225
- - 'trace_finish_state_reset.rb'
226
- - 'trace_init_bytes.rb'
227
- - 'trace_init_bytes2.rb'
228
- - 'trace_init_bytes3.rb'
229
236
 
230
- # Offense count: 4
231
- # This cop supports safe autocorrection (--autocorrect).
232
- # Configuration parameters: AllowForAlignment, EnforcedStyleForExponentOperator, EnforcedStyleForRationalLiterals.
233
- # SupportedStylesForExponentOperator: space, no_space
234
- # SupportedStylesForRationalLiterals: space, no_space
235
- Layout/SpaceAroundOperators:
236
- Exclude:
237
- - 'tmp_trace_chunk1.rb'
238
-
239
- # Offense count: 18
237
+ # Offense count: 154
240
238
  # This cop supports safe autocorrection (--autocorrect).
241
239
  # Configuration parameters: AllowInHeredoc.
242
240
  Layout/TrailingWhitespace:
243
- Exclude:
244
- - 'compare_bypass_checksum.rb'
245
- - 'compare_clean.rb'
246
- - 'extract_dict_bytes.rb'
247
- - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
248
- - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
249
- - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
250
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
251
- - 'tmp_trace_chunk1.rb'
252
- - 'trace_control_a0.rb'
253
- - 'trace_stream_content2.rb'
254
-
255
- # Offense count: 1
256
- # This cop supports safe autocorrection (--autocorrect).
257
- Lint/AmbiguousOperatorPrecedence:
258
- Exclude:
259
- - 'lib/omnizip/algorithms/lzma2/decoder.rb'
260
-
261
- # Offense count: 1
262
- Lint/BinaryOperatorWithIdenticalOperands:
263
- Exclude:
264
- - 'scripts/comprehensive_decoder_comparison.rb'
241
+ Enabled: false
265
242
 
266
- # Offense count: 5
243
+ # Offense count: 13
267
244
  # Configuration parameters: AllowedMethods.
268
245
  # AllowedMethods: enums
269
246
  Lint/ConstantDefinitionInBlock:
270
247
  Exclude:
248
+ - 'spec/omnizip/algorithms/lzma/optimal_encoder_spec.rb'
271
249
  - 'spec/omnizip/extraction_spec.rb'
272
250
  - 'spec/omnizip/filter_registry_spec.rb'
273
- - 'spec/omnizip/formats/xz/official_test_suite_spec.rb'
274
- - 'spec/omnizip/algorithms/lzma/optimal_encoder_spec.rb'
275
251
  - 'spec/omnizip/formats/rar/libarchive_rar_reference_spec.rb'
276
252
  - 'spec/omnizip/formats/rar/official_compatibility_spec.rb'
253
+ - 'spec/omnizip/formats/xz/official_test_suite_spec.rb'
277
254
  - 'spec/omnizip/formats/xz/xz_reference_spec.rb'
278
255
  - 'spec/omnizip/seven_zip_tool_compatibility_spec.rb'
279
256
  - 'spec/omnizip/xz_tool_compatibility_spec.rb'
280
257
 
281
- # Offense count: 35
258
+ # Offense count: 32
282
259
  # Configuration parameters: IgnoreLiteralBranches, IgnoreConstantBranches, IgnoreDuplicateElseBranch.
283
260
  Lint/DuplicateBranch:
284
261
  Enabled: false
285
262
 
286
- # Offense count: 6
263
+ # Offense count: 8
287
264
  Lint/DuplicateMethods:
288
265
  Exclude:
289
266
  - 'lib/omnizip/algorithms/lzma/xz_range_encoder_exact.rb'
@@ -292,7 +269,6 @@ Lint/DuplicateMethods:
292
269
  - 'lib/omnizip/models/filter_config.rb'
293
270
  - 'lib/omnizip/parity/par2_creator.rb'
294
271
  - 'lib/omnizip/zip/file.rb'
295
- - 'scripts/analyze_normalize_operations.rb'
296
272
 
297
273
  # Offense count: 4
298
274
  # Configuration parameters: AllowComments, AllowEmptyLambdas.
@@ -302,12 +278,6 @@ Lint/EmptyBlock:
302
278
  - 'spec/omnizip/buffer_spec.rb'
303
279
  - 'spec/omnizip/formats/rar/rar5/multi_volume/volume_writer_spec.rb'
304
280
 
305
- # Offense count: 1
306
- # Configuration parameters: AllowComments.
307
- Lint/EmptyFile:
308
- Exclude:
309
- - 'test/verify_xz_encoder.rb'
310
-
311
281
  # Offense count: 10
312
282
  Lint/IneffectiveAccessModifier:
313
283
  Exclude:
@@ -322,7 +292,6 @@ Lint/IneffectiveAccessModifier:
322
292
  # Configuration parameters: MaximumRangeSize.
323
293
  Lint/MissingCopEnableDirective:
324
294
  Exclude:
325
- - 'lib/omnizip/algorithms/lzma2/xz_lzma2_encoder.rb'
326
295
  - 'lib/omnizip/implementations/xz_utils/lzma2/encoder.rb'
327
296
 
328
297
  # Offense count: 2
@@ -332,11 +301,10 @@ Lint/MissingSuper:
332
301
  - 'lib/omnizip/formats/rar/compression/ppmd/decoder.rb'
333
302
  - 'lib/omnizip/formats/rar/compression/ppmd/encoder.rb'
334
303
 
335
- # Offense count: 1
336
- # This cop supports safe autocorrection (--autocorrect).
337
- Lint/RedundantStringCoercion:
304
+ # Offense count: 2
305
+ Lint/ShadowedException:
338
306
  Exclude:
339
- - 'test_loading.rb'
307
+ - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
340
308
 
341
309
  # Offense count: 2
342
310
  Lint/StructNewOverride:
@@ -344,125 +312,117 @@ Lint/StructNewOverride:
344
312
  - 'lib/omnizip/parallel/job_queue.rb'
345
313
  - 'lib/omnizip/parity/par2_creator.rb'
346
314
 
347
- # Offense count: 2
348
- Lint/ShadowedException:
349
- Exclude:
350
- - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
351
-
352
- # Offense count: 3
315
+ # Offense count: 1
353
316
  # Configuration parameters: AllowedPatterns.
354
317
  # AllowedPatterns: (?-mix:(exactly|at_least|at_most)\(\d+\)\.times)
355
318
  Lint/UnreachableLoop:
356
319
  Exclude:
357
- - 'extract_dict_bytes.rb'
358
320
  - 'lib/omnizip/algorithms/lzma/range_decoder.rb'
359
- - 'scripts/trace_byte_231.rb'
360
- - 'scripts/trace_capture_state.rb'
361
321
 
362
- # Offense count: 3
322
+ # Offense count: 5
363
323
  # This cop supports safe autocorrection (--autocorrect).
364
324
  # Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods, IgnoreNotImplementedMethods, NotImplementedExceptions.
365
325
  # NotImplementedExceptions: NotImplementedError
366
326
  Lint/UnusedMethodArgument:
367
327
  Exclude:
328
+ - 'lib/omnizip/algorithms/zstandard/decoder.rb'
329
+ - 'lib/omnizip/algorithms/zstandard/sequences.rb'
368
330
  - 'lib/omnizip/filters/registry.rb'
369
331
  - 'lib/omnizip/formats/iso/writer.rb'
370
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
371
332
 
372
- # Offense count: 16
333
+ # Offense count: 1
334
+ # This cop supports safe autocorrection (--autocorrect).
335
+ # Configuration parameters: ContextCreatingMethods, MethodCreatingMethods.
336
+ Lint/UselessAccessModifier:
337
+ Exclude:
338
+ - 'lib/omnizip/algorithms/zstandard/fse/table.rb'
339
+
340
+ # Offense count: 9
373
341
  # This cop supports safe autocorrection (--autocorrect).
374
342
  Lint/UselessAssignment:
375
343
  Exclude:
376
- - 'compare_bypass_checksum.rb'
377
- - 'extract_dict_bytes.rb'
378
- - 'test_chunk1_direct.rb'
379
- - 'tmp_capture_output.rb'
380
- - 'trace_chunk1_comprehensive.rb'
381
- - 'trace_reset_bytes.rb'
344
+ - 'lib/omnizip/algorithms/zstandard/decoder.rb'
345
+ - 'lib/omnizip/algorithms/zstandard/frame/header.rb'
346
+ - 'lib/omnizip/algorithms/zstandard/huffman.rb'
347
+ - 'lib/omnizip/algorithms/zstandard/literals.rb'
348
+ - 'lib/omnizip/algorithms/zstandard/sequences.rb'
382
349
 
383
350
  # Offense count: 4
384
351
  Lint/UselessConstantScoping:
385
352
  Exclude:
386
353
  - 'lib/omnizip/algorithms/lzma/optimal_encoder.rb'
387
354
 
388
- # Offense count: 642
355
+ # Offense count: 525
389
356
  # Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes, Max.
390
357
  Metrics/AbcSize:
391
358
  Enabled: false
392
359
 
393
- # Offense count: 73
360
+ # Offense count: 18
394
361
  # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
395
362
  # AllowedMethods: refine
396
363
  Metrics/BlockLength:
397
- Max: 172
398
- Exclude:
399
- - 'spec/**/*'
400
- - 'test/**/*'
401
- - 'benchmark/**/*'
402
- - 'scripts/**/*'
403
- - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
364
+ Max: 206
404
365
 
405
- # Offense count: 51
366
+ # Offense count: 5
406
367
  # Configuration parameters: CountBlocks, CountModifierForms.
407
368
  Metrics/BlockNesting:
408
369
  Max: 6
409
370
 
410
- # Offense count: 282
371
+ # Offense count: 250
411
372
  # Configuration parameters: AllowedMethods, AllowedPatterns, Max.
412
373
  Metrics/CyclomaticComplexity:
413
374
  Enabled: false
414
375
 
415
- # Offense count: 1058
376
+ # Offense count: 905
416
377
  # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
417
378
  Metrics/MethodLength:
418
- Max: 325
419
- Exclude:
420
- - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
379
+ Max: 434
421
380
 
422
- # Offense count: 27
381
+ # Offense count: 31
423
382
  # Configuration parameters: CountKeywordArgs, MaxOptionalParameters.
424
383
  Metrics/ParameterLists:
425
384
  Max: 20
426
385
 
427
- # Offense count: 212
386
+ # Offense count: 178
428
387
  # Configuration parameters: AllowedMethods, AllowedPatterns, Max.
429
388
  Metrics/PerceivedComplexity:
430
389
  Enabled: false
431
390
 
432
- # Offense count: 80
391
+ # Offense count: 64
433
392
  # Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
434
393
  # AllowedNames: as, at, by, cc, db, id, if, in, io, ip, of, on, os, pp, to
435
394
  Naming/MethodParameterName:
436
395
  Enabled: false
437
396
 
438
- # Offense count: 36
397
+ # Offense count: 37
439
398
  # Configuration parameters: Mode, AllowedMethods, AllowedPatterns, AllowBangMethods, WaywardPredicates.
440
399
  # AllowedMethods: call
441
400
  # WaywardPredicates: nonzero?
442
401
  Naming/PredicateMethod:
443
402
  Enabled: false
444
403
 
445
- # Offense count: 2
446
- # Configuration parameters: NamePrefix, ForbiddenPrefixes, AllowedMethods, MethodDefinitionMacros, UseSorbetSigs.
447
- # NamePrefix: is_, has_, have_, does_
448
- # ForbiddenPrefixes: is_, has_, have_, does_
449
- # AllowedMethods: is_a?
450
- # MethodDefinitionMacros: define_method, define_singleton_method
451
- Naming/PredicatePrefix:
452
- Exclude:
453
- - 'spec/**/*'
454
- - 'lib/omnizip/algorithms/lzma/sdk_state_machine.rb'
455
- - 'lib/omnizip/implementations/seven_zip/lzma/state_machine.rb'
456
- - 'scripts/compare_is_match_states.rb'
457
-
458
- # Offense count: 369
404
+ # Offense count: 42
459
405
  # Configuration parameters: EnforcedStyle, CheckMethodNames, CheckSymbols, AllowedIdentifiers, AllowedPatterns.
460
406
  # SupportedStyles: snake_case, normalcase, non_integer
461
407
  # AllowedIdentifiers: TLS1_1, TLS1_2, capture3, iso8601, rfc1123_date, rfc822, rfc2822, rfc3339, x86_64
462
408
  Naming/VariableNumber:
463
- Enabled: false
464
-
465
- # Offense count: 16
409
+ Exclude:
410
+ - 'lib/omnizip/algorithms/lzma/bit_model.rb'
411
+ - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
412
+ - 'lib/omnizip/algorithms/lzma/literal_decoder.rb'
413
+ - 'lib/omnizip/algorithms/lzma/range_encoder.rb'
414
+ - 'lib/omnizip/algorithms/lzma/xz_buffered_range_encoder.rb'
415
+ - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
416
+ - 'lib/omnizip/formats/rar/rar5/compression/lzss.rb'
417
+ - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
418
+ - 'lib/omnizip/implementations/seven_zip/lzma/range_encoder.rb'
419
+ - 'spec/omnizip/algorithms/lzma/literal_encoder_spec.rb'
420
+ - 'spec/omnizip/algorithms/lzma/xz_price_calculator_spec.rb'
421
+ - 'spec/omnizip/parity/par2_compatibility_spec.rb'
422
+ - 'spec/omnizip/parity/reed_solomon_encoder_spec.rb'
423
+ - 'spec/omnizip/parity/reed_solomon_matrix_spec.rb'
424
+
425
+ # Offense count: 8
466
426
  # Configuration parameters: MinSize.
467
427
  Performance/CollectionLiteralInLoop:
468
428
  Exclude:
@@ -472,25 +432,12 @@ Performance/CollectionLiteralInLoop:
472
432
  - 'lib/omnizip/formats/seven_zip/header_writer.rb'
473
433
  - 'lib/omnizip/parity/models/file_description_packet.rb'
474
434
  - 'lib/omnizip/parity/par2_repairer.rb'
475
- - 'scan_for_lzma2.rb'
476
- - 'scripts/compare_is_match_states.rb'
477
- - 'scripts/debug_chunk_details.rb'
478
- - 'scripts/debug_lzma2_props.rb'
479
- - 'scripts/track_byte_reads.rb'
480
435
  - 'spec/omnizip/filters/bcj_arch_spec.rb'
481
436
 
482
- # Offense count: 2
437
+ # Offense count: 1
483
438
  Performance/MapMethodChain:
484
439
  Exclude:
485
440
  - 'lib/omnizip/commands/archive_create_command.rb'
486
- - 'trace_instrumented.rb'
487
-
488
- # Offense count: 2
489
- # This cop supports unsafe autocorrection (--autocorrect-all).
490
- Performance/StringInclude:
491
- Exclude:
492
- - 'diagnose_loading.rb'
493
- - 'test_without_bundler.rb'
494
441
 
495
442
  # Offense count: 10
496
443
  Security/Open:
@@ -500,7 +447,15 @@ Security/Open:
500
447
  - 'lib/omnizip/formats/rar.rb'
501
448
  - 'lib/omnizip/zip/file.rb'
502
449
 
503
- # Offense count: 14
450
+ # Offense count: 3
451
+ # This cop supports unsafe autocorrection (--autocorrect-all).
452
+ Style/BitwisePredicate:
453
+ Exclude:
454
+ - 'lib/omnizip/algorithms/zstandard/frame/block.rb'
455
+ - 'lib/omnizip/algorithms/zstandard/frame/header.rb'
456
+ - 'lib/omnizip/algorithms/zstandard/huffman.rb'
457
+
458
+ # Offense count: 27
504
459
  # This cop supports safe autocorrection (--autocorrect).
505
460
  # Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, AllowedMethods, AllowedPatterns, AllowBracesOnProceduralOneLiners, BracesRequiredMethods.
506
461
  # SupportedStyles: line_count_based, semantic, braces_for_chaining, always_braces
@@ -509,41 +464,17 @@ Security/Open:
509
464
  # AllowedMethods: lambda, proc, it
510
465
  Style/BlockDelimiters:
511
466
  Exclude:
512
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
513
- - 'trace_init_bytes3.rb'
514
- - 'trace_input_pos.rb'
515
- - 'trace_reset_bytes.rb'
516
- - 'trace_stream_content2.rb'
517
-
518
- # Ruby 3.0 doesn't support anonymous block forwarding (&) syntax
519
- # These files use explicit &block for Ruby 3.0 compatibility
520
- Naming/BlockForwarding:
521
- Exclude:
522
- - 'lib/omnizip/zip/file.rb'
523
- - 'lib/omnizip/temp/safe_extract.rb'
524
-
525
- Style/ArgumentsForwarding:
526
- Exclude:
527
- - 'lib/omnizip/zip/file.rb'
528
- - 'lib/omnizip/temp/safe_extract.rb'
529
-
530
- # Offense count: 2
531
- # This cop supports unsafe autocorrection (--autocorrect-all).
532
- # Configuration parameters: EnforcedStyle, EnforcedStyleForClasses, EnforcedStyleForModules.
533
- # SupportedStyles: nested, compact
534
- # SupportedStylesForClasses: ~, nested, compact
535
- # SupportedStylesForModules: ~, nested, compact
536
- Style/ClassAndModuleChildren:
537
- Exclude:
538
- - 'trace_init_bytes3.rb'
539
-
540
- # Offense count: 4
541
- # This cop supports unsafe autocorrection (--autocorrect-all).
542
- Style/ComparableBetween:
543
- Exclude:
544
- - 'debug_slot_decode.rb'
545
- - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
546
- - 'trace_dict_put.rb'
467
+ - 'lib/omnizip/algorithms/lzma/lzip_decoder.rb'
468
+ - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
469
+ - 'lib/omnizip/algorithms/zstandard/fse/encoder.rb'
470
+ - 'lib/omnizip/formats/seven_zip/writer.rb'
471
+ - 'lib/omnizip/formats/xar/reader.rb'
472
+ - 'lib/omnizip/formats/xz_impl/index_decoder.rb'
473
+ - 'spec/omnizip/algorithms/lzma/xz_compat_spec.rb'
474
+ - 'spec/omnizip/formats/seven_zip/seven_zip_reference_spec.rb'
475
+ - 'spec/omnizip/formats/xar/header_spec.rb'
476
+ - 'spec/omnizip/tool_compatibility_spec.rb'
477
+ - 'spec/omnizip/xz_tool_compatibility_spec.rb'
547
478
 
548
479
  # Offense count: 2
549
480
  # This cop supports safe autocorrection (--autocorrect).
@@ -554,47 +485,27 @@ Style/ComparableClamp:
554
485
 
555
486
  # Offense count: 2
556
487
  # This cop supports safe autocorrection (--autocorrect).
557
- # Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions.
558
- # SupportedStyles: assign_to_condition, assign_inside_condition
559
- Style/ConditionalAssignment:
560
- Exclude:
561
- - 'compare_bypass_checksum.rb'
562
- - 'extract_dict_bytes.rb'
563
-
564
- # Offense count: 5
565
- # This cop supports safe autocorrection (--autocorrect).
566
488
  # Configuration parameters: EnforcedStyle, AllowComments.
567
489
  # SupportedStyles: empty, nil, both
568
490
  Style/EmptyElse:
569
491
  Exclude:
570
- - 'lib/omnizip/algorithms/lzma/sdk_match_finder.rb'
571
- - 'lib/omnizip/algorithms/lzma2/decoder.rb'
572
492
  - 'lib/omnizip/algorithms/ppmd7/encoder.rb'
573
493
  - 'lib/omnizip/formats/iso/volume_descriptor.rb'
574
- - 'scripts/debug_3delta2.rb'
575
- - 'trace_stream_reads.rb'
576
494
 
577
- # Offense count: 1
495
+ # Offense count: 19
578
496
  # This cop supports safe autocorrection (--autocorrect).
579
497
  # Configuration parameters: AllowedVars, DefaultToNil.
580
498
  Style/FetchEnvVar:
581
499
  Exclude:
582
500
  - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
583
501
 
584
- # Offense count: 722
502
+ # Offense count: 139
585
503
  # This cop supports safe autocorrection (--autocorrect).
586
504
  # Configuration parameters: MaxUnannotatedPlaceholdersAllowed, Mode, AllowedMethods, AllowedPatterns.
587
505
  # SupportedStyles: annotated, template, unannotated
588
506
  Style/FormatStringToken:
589
507
  EnforcedStyle: unannotated
590
508
 
591
- # Offense count: 4
592
- # This cop supports unsafe autocorrection (--autocorrect-all).
593
- Style/IdenticalConditionalBranches:
594
- Exclude:
595
- - 'analyze_control_bytes.rb'
596
- - 'lib/omnizip/formats/xz_impl/block_decoder.rb'
597
-
598
509
  # Offense count: 1
599
510
  # This cop supports safe autocorrection (--autocorrect).
600
511
  # Configuration parameters: AllowIfModifier.
@@ -602,29 +513,33 @@ Style/IfInsideElse:
602
513
  Exclude:
603
514
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
604
515
 
605
- # Offense count: 27
516
+ # Offense count: 2
606
517
  Style/MixinUsage:
607
- Enabled: false
518
+ Exclude:
519
+ - 'spec/scripts/debug_7z_structure.rb'
520
+ - 'spec/scripts/debug_writer_output.rb'
608
521
 
609
- # Offense count: 1
522
+ # Offense count: 25
610
523
  # This cop supports safe autocorrection (--autocorrect).
611
524
  Style/MultilineIfModifier:
612
525
  Exclude:
613
- - 'tmp_trace_chunk1.rb'
526
+ - 'lib/omnizip/algorithms/lzma.rb'
527
+ - 'lib/omnizip/algorithms/lzma/lzip_decoder.rb'
528
+ - 'lib/omnizip/formats/rar/rar5/compression/lzss.rb'
529
+ - 'lib/omnizip/formats/rar3/reader.rb'
530
+ - 'lib/omnizip/formats/rar5/reader.rb'
531
+ - 'lib/omnizip/formats/xar/entry.rb'
532
+ - 'lib/omnizip/formats/xar/header.rb'
533
+ - 'lib/omnizip/formats/xar/toc.rb'
534
+ - 'lib/omnizip/implementations/seven_zip/lzma/decoder.rb'
614
535
 
615
536
  # Offense count: 1
616
537
  # This cop supports safe autocorrection (--autocorrect).
617
538
  Style/MultilineTernaryOperator:
618
539
  Exclude:
619
- - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
540
+ - 'lib/omnizip/formats/xar/writer.rb'
620
541
 
621
- # Offense count: 1
622
- # This cop supports safe autocorrection (--autocorrect).
623
- Style/NegatedIfElseCondition:
624
- Exclude:
625
- - 'trace_chunk1_comprehensive.rb'
626
-
627
- # Offense count: 5
542
+ # Offense count: 23
628
543
  # This cop supports unsafe autocorrection (--autocorrect-all).
629
544
  # Configuration parameters: EnforcedStyle, AllowedMethods, AllowedPatterns.
630
545
  # SupportedStyles: predicate, comparison
@@ -632,59 +547,48 @@ Style/NumericPredicate:
632
547
  Exclude:
633
548
  - 'spec/**/*'
634
549
  - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
635
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
636
- - 'trace_chunk1_comprehensive.rb'
550
+ - 'lib/omnizip/algorithms/zstandard/fse/bitstream.rb'
551
+ - 'lib/omnizip/algorithms/zstandard/fse/table.rb'
552
+ - 'lib/omnizip/algorithms/zstandard/huffman.rb'
553
+ - 'lib/omnizip/algorithms/zstandard/sequences.rb'
637
554
 
638
- # Offense count: 2
555
+ # Offense count: 3
639
556
  # Configuration parameters: AllowedMethods.
640
557
  # AllowedMethods: respond_to_missing?
641
558
  Style/OptionalBooleanParameter:
642
559
  Exclude:
560
+ - 'lib/omnizip/algorithms/zstandard/literals_encoder.rb'
643
561
  - 'lib/omnizip/formats/rar/archive_verifier.rb'
644
562
  - 'lib/omnizip/formats/seven_zip/writer.rb'
645
563
 
646
- # Offense count: 1
564
+ # Offense count: 82
647
565
  # This cop supports safe autocorrection (--autocorrect).
648
- Style/RedundantAssignment:
566
+ # Configuration parameters: EnforcedStyle.
567
+ # SupportedStyles: same_as_string_literals, single_quotes, double_quotes
568
+ Style/QuotedSymbols:
649
569
  Exclude:
650
- - 'trace_stream_content2.rb'
570
+ - 'lib/omnizip/buffer.rb'
571
+ - 'lib/omnizip/buffer/memory_extractor.rb'
572
+ - 'lib/omnizip/filters/registry.rb'
573
+ - 'lib/omnizip/pipe/stream_compressor.rb'
574
+ - 'spec/omnizip/filters/integration_spec.rb'
575
+ - 'spec/omnizip/filters/registry_spec.rb'
576
+ - 'spec/omnizip/integration/filter_integration_spec.rb'
577
+ - 'spec/omnizip/models/filter_chain_spec.rb'
651
578
 
652
579
  # Offense count: 2
653
580
  # This cop supports safe autocorrection (--autocorrect).
654
- Style/RedundantParentheses:
655
- Exclude:
656
- - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
657
-
658
- # Offense count: 15
659
- # This cop supports safe autocorrection (--autocorrect).
660
- Style/RescueModifier:
581
+ Style/RedundantAssignment:
661
582
  Exclude:
662
- - 'extract_dict_bytes.rb'
663
- - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
664
- - 'trace_finish_state_reset.rb'
665
- - 'trace_init_bytes.rb'
666
- - 'trace_init_bytes2.rb'
667
- - 'trace_init_bytes3.rb'
583
+ - 'lib/omnizip/algorithms/zstandard/huffman.rb'
584
+ - 'lib/omnizip/formats/seven_zip.rb'
668
585
 
669
- # Offense count: 22
586
+ # Offense count: 17
670
587
  # This cop supports safe autocorrection (--autocorrect).
671
- # Configuration parameters: EnforcedStyle.
672
- # SupportedStyles: implicit, explicit
673
- Style/RescueStandardError:
588
+ Style/RedundantParentheses:
674
589
  Exclude:
675
- - 'debug_slot_decode.rb'
676
- - 'diagnose_loading.rb'
677
- - 'extract_dict_bytes.rb'
678
- - 'lib/omnizip/algorithms/lzma/xz_utils_decoder.rb'
679
- - 'test_exact2.rb'
680
- - 'test_without_bundler.rb'
681
- - 'trace_chunk1_comprehensive.rb'
682
- - 'trace_control_a0.rb'
683
- - 'trace_finish_state_reset.rb'
684
- - 'trace_init_bytes.rb'
685
- - 'trace_init_bytes2.rb'
686
- - 'trace_init_bytes3.rb'
687
- - 'trace_range_decoder.rb'
590
+ - 'lib/omnizip/algorithms/lzma/distance_coder.rb'
591
+ - 'lib/omnizip/algorithms/zstandard/sequences.rb'
688
592
 
689
593
  # Offense count: 1
690
594
  # This cop supports unsafe autocorrection (--autocorrect-all).
@@ -692,63 +596,34 @@ Style/RescueStandardError:
692
596
  # AllowedMethods: present?, blank?, presence, try, try!
693
597
  Style/SafeNavigation:
694
598
  Exclude:
695
- - 'lib/omnizip/formats/xz_impl/stream_decoder.rb'
599
+ - 'lib/omnizip/algorithms/zstandard/huffman.rb'
696
600
 
697
601
  # Offense count: 1
698
- # Configuration parameters: Max.
699
- Style/SafeNavigationChainLength:
700
- Exclude:
701
- - 'trace_instrumented.rb'
702
-
703
- # Offense count: 2
704
- # This cop supports unsafe autocorrection (--autocorrect-all).
705
- Style/SelectByRegexp:
706
- Exclude:
707
- - 'diagnose_loading.rb'
708
- - 'test_without_bundler.rb'
709
-
710
- # Offense count: 18
711
602
  # This cop supports unsafe autocorrection (--autocorrect-all).
712
603
  # Configuration parameters: Mode.
713
604
  Style/StringConcatenation:
714
605
  Exclude:
715
606
  - 'lib/omnizip/formats/iso/writer.rb'
716
- - 'scripts/analyze_corruption_pattern.rb'
717
- - 'scripts/compare_outputs_detailed.rb'
718
- - 'test_first_256.rb'
719
- - 'test_loading.rb'
720
- - 'tmp_check_compressed.rb'
721
- - 'tmp_manual_trace.rb'
722
- - 'trace_init_bytes3.rb'
723
- - 'trace_input_pos.rb'
724
- - 'trace_reset_bytes.rb'
725
- - 'verify_compressed_data.rb'
726
-
727
- # Offense count: 65
607
+
608
+ # Offense count: 20
728
609
  # This cop supports safe autocorrection (--autocorrect).
729
610
  # Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline.
730
611
  # SupportedStyles: single_quotes, double_quotes
731
612
  Style/StringLiterals:
732
- Enabled: false
733
-
734
- # Offense count: 4
735
- # This cop supports safe autocorrection (--autocorrect).
736
- # Configuration parameters: EnforcedStyle.
737
- # SupportedStyles: single_quotes, double_quotes
738
- Style/StringLiteralsInInterpolation:
739
613
  Exclude:
740
- - 'lib/omnizip/algorithms/lzma2/decoder.rb'
614
+ - 'lib/omnizip/algorithms/lzma/lzip_decoder.rb'
615
+ - 'spec/omnizip/tool_compatibility_spec.rb'
741
616
 
742
- # Offense count: 1
617
+ # Offense count: 2
743
618
  # This cop supports safe autocorrection (--autocorrect).
744
- Style/SuperArguments:
619
+ # Configuration parameters: EnforcedStyleForMultiline.
620
+ # SupportedStylesForMultiline: comma, consistent_comma, diff_comma, no_comma
621
+ Style/TrailingCommaInHashLiteral:
745
622
  Exclude:
746
- - 'tmp_capture_output.rb'
623
+ - 'lib/omnizip/algorithms/zstandard/sequences.rb'
747
624
 
748
625
  # Offense count: 1
749
- # This cop supports safe autocorrection (--autocorrect).
750
- # Configuration parameters: EnforcedStyleForMultiline.
751
- # SupportedStylesForMultiline: comma, consistent_comma, diff_comma, no_comma
752
- Style/TrailingCommaInArguments:
626
+ # This cop supports unsafe autocorrection (--autocorrect-all).
627
+ Style/ZeroLengthPredicate:
753
628
  Exclude:
754
- - 'trace_chunk1_comprehensive.rb'
629
+ - 'lib/omnizip/algorithms/zstandard/sequences.rb'