lz4rip 0.1.1 → 0.1.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3c501bb8f4cd63f4f2d3d0ae5b75abcc7892b5a9fde08a419fc780f913435173
4
- data.tar.gz: 982c8bb12f228d7696b29bdc769e3838e2c667b8fc761eb245e813e720e4a826
3
+ metadata.gz: 57c8a45c7f389dd4f6b324e147fcbf7cbfec93ca2746226120ea3290741ba761
4
+ data.tar.gz: b651348f2fce6405b8dabdb7208359eebdd28565a44bf9948a1ca4dcc1317e62
5
5
  SHA512:
6
- metadata.gz: 226311912ef4209023b7e1f2089c31ba41c6f63b9e7ebfd497c3fcf7bed1d362e729366148ebbd9adb73d32fc75747e7b16f8dee6e4738bb527fd68a9c1b4217
7
- data.tar.gz: d86295a8d164727cc8f12a6608078f66824dd6b557d418cac47bffbfd2d89fac5e883e2e27d7da92955c14f5f0679efb5d2231f72d7f1fa1320f0d05c28d6532
6
+ metadata.gz: 170650658b63413bd2b03659b168a9f77b5e434db3a8cbca52a7155282e5b7f7b0e16123e6ccbcb4aa48e15cc13d17993f902477a501cb80100b3f3375b14add
7
+ data.tar.gz: f8b9b5c1fa3f9fdc043af195137999f8d301ae2b4b984a4cc780f190dbc49dad21256fbf5a056804b86f5fea56c0c3fc7e97602ae384765bcb35afd88bb91f28
data/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.1.2] - 2026-08-05
6
+
7
+ - Update `lz4rip` crate dependency from 0.11.1 to 0.11.2.
8
+
5
9
  ## [0.1.1] - 2026-06-29
6
10
 
7
11
  - Update `lz4rip` crate dependency from 0.8 to 0.9.
data/Cargo.lock CHANGED
@@ -4,9 +4,9 @@ version = 4
4
4
 
5
5
  [[package]]
6
6
  name = "aho-corasick"
7
- version = "1.1.4"
7
+ version = "1.1.5"
8
8
  source = "registry+https://github.com/rust-lang/crates.io-index"
9
- checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301"
9
+ checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba"
10
10
  dependencies = [
11
11
  "memchr",
12
12
  ]
@@ -31,9 +31,9 @@ dependencies = [
31
31
 
32
32
  [[package]]
33
33
  name = "bitflags"
34
- version = "2.13.0"
34
+ version = "2.13.1"
35
35
  source = "registry+https://github.com/rust-lang/crates.io-index"
36
- checksum = "b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8"
36
+ checksum = "b588b76d00fde79687d7646a9b5bdf3cc0f655e0bbd080335a95d7e96f3587da"
37
37
 
38
38
  [[package]]
39
39
  name = "cexpr"
@@ -52,9 +52,9 @@ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
52
52
 
53
53
  [[package]]
54
54
  name = "clang-sys"
55
- version = "1.8.1"
55
+ version = "1.9.1"
56
56
  source = "registry+https://github.com/rust-lang/crates.io-index"
57
- checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4"
57
+ checksum = "157a8ba7b480713b56f4c09fd13fc3e0a22a5dfab8097ba61cbc5feef950788a"
58
58
  dependencies = [
59
59
  "glob",
60
60
  "libc",
@@ -63,15 +63,15 @@ dependencies = [
63
63
 
64
64
  [[package]]
65
65
  name = "either"
66
- version = "1.16.0"
66
+ version = "1.17.0"
67
67
  source = "registry+https://github.com/rust-lang/crates.io-index"
68
- checksum = "91622ff5e7162018101f2fea40d6ebf4a78bbe5a49736a2020649edf9693679e"
68
+ checksum = "9e5e8f6c15a24b9a3ee5efec809ccd006d3b30e8b3bb63c39af737c7f87daa1d"
69
69
 
70
70
  [[package]]
71
71
  name = "glob"
72
- version = "0.3.3"
72
+ version = "0.3.4"
73
73
  source = "registry+https://github.com/rust-lang/crates.io-index"
74
- checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280"
74
+ checksum = "e4eba85ea1d0a966a983acd07deee566e67395d2d96b6fb39e62b5a833f1eb0b"
75
75
 
76
76
  [[package]]
77
77
  name = "itertools"
@@ -90,9 +90,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
90
90
 
91
91
  [[package]]
92
92
  name = "libc"
93
- version = "0.2.186"
93
+ version = "0.2.189"
94
94
  source = "registry+https://github.com/rust-lang/crates.io-index"
95
- checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66"
95
+ checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
96
96
 
97
97
  [[package]]
98
98
  name = "libloading"
@@ -106,18 +106,18 @@ dependencies = [
106
106
 
107
107
  [[package]]
108
108
  name = "lz4rip"
109
- version = "0.1.1"
109
+ version = "0.1.2"
110
110
  dependencies = [
111
- "lz4rip 0.9.3",
111
+ "lz4rip 0.11.2",
112
112
  "magnus",
113
113
  "rb-sys",
114
114
  ]
115
115
 
116
116
  [[package]]
117
117
  name = "lz4rip"
118
- version = "0.9.3"
118
+ version = "0.11.2"
119
119
  source = "registry+https://github.com/rust-lang/crates.io-index"
120
- checksum = "b4c929eba0e2d2e97a3dc4193a476d36fd7c343ef0623b69394b8c69a437c1fa"
120
+ checksum = "2cb69a12f600139f42d2c63d929b60733582f8bb706da4d2cd951e5beb6c649c"
121
121
  dependencies = [
122
122
  "lz4rip-core",
123
123
  "lz4rip-decode",
@@ -127,24 +127,24 @@ dependencies = [
127
127
 
128
128
  [[package]]
129
129
  name = "lz4rip-core"
130
- version = "0.5.2"
130
+ version = "0.5.5"
131
131
  source = "registry+https://github.com/rust-lang/crates.io-index"
132
- checksum = "5bf2d77a9fc2acbfe6f4b6b0a3ef2d97f0c96bb384c4406225851a900f483788"
132
+ checksum = "22fc4edb61fcaf1cdad24ac2982eff7af4417ef463c33bcf5c42ba549abd8b96"
133
133
 
134
134
  [[package]]
135
135
  name = "lz4rip-decode"
136
- version = "0.9.0"
136
+ version = "0.10.3"
137
137
  source = "registry+https://github.com/rust-lang/crates.io-index"
138
- checksum = "a57fce948bb22f5f0e055a61dfb69a84b7b60e4afd54a6eadc1d26cd120241d9"
138
+ checksum = "60d65bfd4c032fefcf8c18fb5f8d9958f4925146845db16dbc9d416f1566b9bf"
139
139
  dependencies = [
140
140
  "lz4rip-core",
141
141
  ]
142
142
 
143
143
  [[package]]
144
144
  name = "lz4rip-encode"
145
- version = "0.9.2"
145
+ version = "0.10.5"
146
146
  source = "registry+https://github.com/rust-lang/crates.io-index"
147
- checksum = "e76796529ac165094cec92c7eb2fe993d26759552e319d78c58a4ac9d4a4bf89"
147
+ checksum = "09e92b7345788ec0d32b5e31051dc6a86730e17b01267e502e9ec2744b689d34"
148
148
  dependencies = [
149
149
  "lz4rip-core",
150
150
  ]
@@ -174,9 +174,9 @@ dependencies = [
174
174
 
175
175
  [[package]]
176
176
  name = "memchr"
177
- version = "2.8.2"
177
+ version = "2.8.3"
178
178
  source = "registry+https://github.com/rust-lang/crates.io-index"
179
- checksum = "88904434abc2901f197fe8cc55f0445e7ded921dba5911dad2e2b39b48e663c4"
179
+ checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98"
180
180
 
181
181
  [[package]]
182
182
  name = "minimal-lexical"
@@ -196,18 +196,18 @@ dependencies = [
196
196
 
197
197
  [[package]]
198
198
  name = "proc-macro2"
199
- version = "1.0.106"
199
+ version = "1.0.107"
200
200
  source = "registry+https://github.com/rust-lang/crates.io-index"
201
- checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
201
+ checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
202
202
  dependencies = [
203
203
  "unicode-ident",
204
204
  ]
205
205
 
206
206
  [[package]]
207
207
  name = "quote"
208
- version = "1.0.46"
208
+ version = "1.0.47"
209
209
  source = "registry+https://github.com/rust-lang/crates.io-index"
210
- checksum = "dfbc457d0c7a0759a614551b11a6409e5951f6c7537be1f1b7682b9ae9230368"
210
+ checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
211
211
  dependencies = [
212
212
  "proc-macro2",
213
213
  ]
@@ -244,9 +244,9 @@ checksum = "cca7ad6a7e21e72151d56fe2495a259b5670e204c3adac41ee7ef676ea08117a"
244
244
 
245
245
  [[package]]
246
246
  name = "regex"
247
- version = "1.12.4"
247
+ version = "1.13.1"
248
248
  source = "registry+https://github.com/rust-lang/crates.io-index"
249
- checksum = "f1292b7759ae1cb9ec195452d1390a074f0cd8541ab7a5a8c31cd6db45d4a6ba"
249
+ checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d"
250
250
  dependencies = [
251
251
  "aho-corasick",
252
252
  "memchr",
@@ -256,9 +256,9 @@ dependencies = [
256
256
 
257
257
  [[package]]
258
258
  name = "regex-automata"
259
- version = "0.4.14"
259
+ version = "0.4.18"
260
260
  source = "registry+https://github.com/rust-lang/crates.io-index"
261
- checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f"
261
+ checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2"
262
262
  dependencies = [
263
263
  "aho-corasick",
264
264
  "memchr",
@@ -273,9 +273,9 @@ checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4"
273
273
 
274
274
  [[package]]
275
275
  name = "rustc-hash"
276
- version = "2.1.2"
276
+ version = "2.1.3"
277
277
  source = "registry+https://github.com/rust-lang/crates.io-index"
278
- checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe"
278
+ checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d"
279
279
 
280
280
  [[package]]
281
281
  name = "seq-macro"
@@ -297,9 +297,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
297
297
 
298
298
  [[package]]
299
299
  name = "syn"
300
- version = "2.0.118"
300
+ version = "2.0.119"
301
301
  source = "registry+https://github.com/rust-lang/crates.io-index"
302
- checksum = "1b9ae57f904213ebb649ce6895b8a66c66f0203b9319718f69a5612a065b1422"
302
+ checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"
303
303
  dependencies = [
304
304
  "proc-macro2",
305
305
  "quote",
@@ -308,9 +308,9 @@ dependencies = [
308
308
 
309
309
  [[package]]
310
310
  name = "twox-hash"
311
- version = "2.1.2"
311
+ version = "2.1.3"
312
312
  source = "registry+https://github.com/rust-lang/crates.io-index"
313
- checksum = "9ea3136b675547379c4bd395ca6b938e5ad3c3d20fad76e7fe85f9e0d011419c"
313
+ checksum = "8464ec13c3691491391d9fce00f6416c9a48e46972f72d7865688be2080192c9"
314
314
 
315
315
  [[package]]
316
316
  name = "unicode-ident"
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "lz4rip"
3
- version = "0.1.1"
3
+ version = "0.1.2"
4
4
  edition = "2021"
5
5
 
6
6
  [lib]
@@ -8,7 +8,7 @@ name = "lz4rip"
8
8
  crate-type = ["cdylib", "rlib"]
9
9
 
10
10
  [dependencies]
11
- lz4 = { version = "0.9", package = "lz4rip" }
11
+ lz4 = { version = "0.11.2", package = "lz4rip" }
12
12
  magnus = "0.8"
13
13
  rb-sys = "0.9"
14
14
 
@@ -6,7 +6,7 @@ use std::cell::RefCell;
6
6
  use std::io::{Cursor, Read, Write};
7
7
  use std::sync::OnceLock;
8
8
 
9
- use lz4::block::{self, Compressor, Decompressor, DictTrainer};
9
+ use lz4::block::{self, Decompressor, DictCompressor, DictTrainer};
10
10
  use lz4::frame::{BlockMode, FrameDecoder, FrameEncoder, FrameInfo};
11
11
 
12
12
  const COMPRESSOR_HEAP_SIZE: usize = 8192;
@@ -37,7 +37,7 @@ fn lz4rip_block_stream_size(_ruby: &Ruby) -> usize {
37
37
 
38
38
  #[magnus::wrap(class = "Lz4rip::BlockCodec", free_immediately, size)]
39
39
  struct BlockCodec {
40
- compressor: Option<RefCell<Compressor>>,
40
+ compressor: Option<RefCell<DictCompressor>>,
41
41
  decompressor: Option<Decompressor>,
42
42
  dict_len: usize,
43
43
  }
@@ -52,7 +52,7 @@ fn block_codec_new(_ruby: &Ruby, rb_dict: Option<RString>) -> Result<BlockCodec,
52
52
  Some(rb_dict) => {
53
53
  let bytes: Vec<u8> = unsafe { rb_dict.as_slice().to_vec() };
54
54
  Ok(BlockCodec {
55
- compressor: Some(RefCell::new(Compressor::with_dict(&bytes))),
55
+ compressor: Some(RefCell::new(DictCompressor::new(&bytes))),
56
56
  decompressor: Some(Decompressor::with_dict(&bytes)),
57
57
  dict_len: bytes.len(),
58
58
  })
@@ -147,7 +147,15 @@ fn frame_codec_compress(
147
147
  let info = FrameInfo::new().block_mode(BlockMode::Linked);
148
148
  FrameEncoder::with_frame_info(info, buf)
149
149
  }
150
- Some(d) => FrameEncoder::with_dictionary(buf, &d.bytes, d.id),
150
+ Some(d) => {
151
+ let info = FrameInfo::new().block_mode(BlockMode::Linked);
152
+ FrameEncoder::with_dictionary(buf, &d.bytes, d.id, Some(info)).map_err(|e| {
153
+ Error::new(
154
+ ruby.exception_runtime_error(),
155
+ format!("lz4 frame compress failed: {e}"),
156
+ )
157
+ })?
158
+ }
151
159
  };
152
160
 
153
161
  enc.write_all(input).map_err(|e| {
@@ -350,7 +358,7 @@ mod tests {
350
358
  let dict = b"common log prefix: ".to_vec();
351
359
  let msg = b"common log prefix: event=login user=alice".to_vec();
352
360
 
353
- let mut comp = Compressor::with_dict(&dict);
361
+ let mut comp = DictCompressor::new(&dict);
354
362
  let ct_dict = comp.compress(&msg);
355
363
  let decomp = Decompressor::with_dict(&dict);
356
364
  let pt = decomp.decompress(&ct_dict, msg.len()).unwrap();
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lz4rip
4
- VERSION = "0.1.1"
4
+ VERSION = "0.1.2"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lz4rip
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Patrik Wenger
@@ -69,7 +69,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
69
69
  - !ruby/object:Gem::Version
70
70
  version: '0'
71
71
  requirements: []
72
- rubygems_version: 4.0.10
72
+ rubygems_version: 4.0.16
73
73
  specification_version: 4
74
74
  summary: Ractor-safe LZ4 compression for Ruby
75
75
  test_files: []