blake3-rb 1.5.6.rc1 → 1.8.3.0

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: f5d1396cf55d1df3c276b72ec7977c869aa2d454a373be73942441014965be94
4
- data.tar.gz: 95d3a0b57d84fb519e4eb39a4d48a6ea8b4236b40de24a599beefa2c5ad0ae47
3
+ metadata.gz: c89b1137da421aca8471a87e45065bdfb51aaf349d38f86f9abd0983ab30665e
4
+ data.tar.gz: 83021ab6fa5e3e456e2fdefc5465e37a4ed08e2968a80e38151816ac2f0c77b7
5
5
  SHA512:
6
- metadata.gz: 6a167884b981d71748c0795d1ccd3a5dda6d211be56a3dc347e3f6a755f4650c5d64706cd5803e5f13a4712c941a0dbef25115c722da350277bc9bcb8f5152a2
7
- data.tar.gz: 7bca938bfe2c5e988f0668be309811b654b1ca319e67914f0760a697dfe49467d4fa95e0b1dcf1b1c43bba252d4bbffa1d76aa4da20d38b2260d4ecdaa01aa6a
6
+ metadata.gz: 942a19117bbf634cecb6d997070403a9cfa0325e56a7a69754a020d34014083e75d91fecd7bcfcab39e96d9f05a8897ed0dfacc1b26da9fc092e6cfa4c570b8d
7
+ data.tar.gz: ec27a90e727511eee541eae5ece8c4ecb785614b65f6c13750196e7cae58deb6bb1a9e71f20415a8b35fdece5133fe2fc5faa5a0213066c6bebb107276359635
data/Cargo.lock CHANGED
@@ -4,9 +4,9 @@ version = 4
4
4
 
5
5
  [[package]]
6
6
  name = "aho-corasick"
7
- version = "1.1.3"
7
+ version = "1.1.4"
8
8
  source = "registry+https://github.com/rust-lang/crates.io-index"
9
- checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
9
+ checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301"
10
10
  dependencies = [
11
11
  "memchr",
12
12
  ]
@@ -45,21 +45,22 @@ dependencies = [
45
45
 
46
46
  [[package]]
47
47
  name = "bitflags"
48
- version = "2.7.0"
48
+ version = "2.11.0"
49
49
  source = "registry+https://github.com/rust-lang/crates.io-index"
50
- checksum = "1be3f42a67d6d345ecd59f675f3f012d6974981560836e938c22b424b85ce1be"
50
+ checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af"
51
51
 
52
52
  [[package]]
53
53
  name = "blake3"
54
- version = "1.5.5"
54
+ version = "1.8.3"
55
55
  source = "registry+https://github.com/rust-lang/crates.io-index"
56
- checksum = "b8ee0c1824c4dea5b5f81736aff91bae041d2c07ee1192bec91054e10e3e601e"
56
+ checksum = "2468ef7d57b3fb7e16b576e8377cdbde2320c60e1491e961d11da40fc4f02a2d"
57
57
  dependencies = [
58
58
  "arrayref",
59
59
  "arrayvec",
60
60
  "cc",
61
61
  "cfg-if",
62
62
  "constant_time_eq",
63
+ "cpufeatures",
63
64
  ]
64
65
 
65
66
  [[package]]
@@ -74,18 +75,13 @@ dependencies = [
74
75
  "rb-sys-test-helpers",
75
76
  ]
76
77
 
77
- [[package]]
78
- name = "byteorder"
79
- version = "1.5.0"
80
- source = "registry+https://github.com/rust-lang/crates.io-index"
81
- checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
82
-
83
78
  [[package]]
84
79
  name = "cc"
85
- version = "1.2.8"
80
+ version = "1.2.56"
86
81
  source = "registry+https://github.com/rust-lang/crates.io-index"
87
- checksum = "ad0cf6e91fde44c773c6ee7ec6bba798504641a8bc2eb7e37a04ffbf4dfaa55a"
82
+ checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2"
88
83
  dependencies = [
84
+ "find-msvc-tools",
89
85
  "shlex",
90
86
  ]
91
87
 
@@ -100,9 +96,9 @@ dependencies = [
100
96
 
101
97
  [[package]]
102
98
  name = "cfg-if"
103
- version = "1.0.0"
99
+ version = "1.0.4"
104
100
  source = "registry+https://github.com/rust-lang/crates.io-index"
105
- checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
101
+ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
106
102
 
107
103
  [[package]]
108
104
  name = "clang-sys"
@@ -117,32 +113,48 @@ dependencies = [
117
113
 
118
114
  [[package]]
119
115
  name = "constant_time_eq"
120
- version = "0.3.1"
116
+ version = "0.4.2"
117
+ source = "registry+https://github.com/rust-lang/crates.io-index"
118
+ checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b"
119
+
120
+ [[package]]
121
+ name = "cpufeatures"
122
+ version = "0.2.17"
121
123
  source = "registry+https://github.com/rust-lang/crates.io-index"
122
- checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6"
124
+ checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280"
125
+ dependencies = [
126
+ "libc",
127
+ ]
123
128
 
124
129
  [[package]]
125
130
  name = "either"
126
- version = "1.13.0"
131
+ version = "1.15.0"
127
132
  source = "registry+https://github.com/rust-lang/crates.io-index"
128
- checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
133
+ checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719"
134
+
135
+ [[package]]
136
+ name = "find-msvc-tools"
137
+ version = "0.1.9"
138
+ source = "registry+https://github.com/rust-lang/crates.io-index"
139
+ checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
129
140
 
130
141
  [[package]]
131
142
  name = "getrandom"
132
- version = "0.2.15"
143
+ version = "0.3.4"
133
144
  source = "registry+https://github.com/rust-lang/crates.io-index"
134
- checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
145
+ checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd"
135
146
  dependencies = [
136
147
  "cfg-if",
137
148
  "libc",
138
- "wasi",
149
+ "r-efi",
150
+ "wasip2",
139
151
  ]
140
152
 
141
153
  [[package]]
142
154
  name = "glob"
143
- version = "0.3.2"
155
+ version = "0.3.3"
144
156
  source = "registry+https://github.com/rust-lang/crates.io-index"
145
- checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2"
157
+ checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280"
146
158
 
147
159
  [[package]]
148
160
  name = "hex"
@@ -173,25 +185,25 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
173
185
 
174
186
  [[package]]
175
187
  name = "libc"
176
- version = "0.2.169"
188
+ version = "0.2.182"
177
189
  source = "registry+https://github.com/rust-lang/crates.io-index"
178
- checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a"
190
+ checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112"
179
191
 
180
192
  [[package]]
181
193
  name = "libloading"
182
- version = "0.8.6"
194
+ version = "0.8.9"
183
195
  source = "registry+https://github.com/rust-lang/crates.io-index"
184
- checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34"
196
+ checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55"
185
197
  dependencies = [
186
198
  "cfg-if",
187
- "windows-targets",
199
+ "windows-link",
188
200
  ]
189
201
 
190
202
  [[package]]
191
203
  name = "memchr"
192
- version = "2.7.4"
204
+ version = "2.8.0"
193
205
  source = "registry+https://github.com/rust-lang/crates.io-index"
194
- checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
206
+ checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79"
195
207
 
196
208
  [[package]]
197
209
  name = "minimal-lexical"
@@ -211,47 +223,52 @@ dependencies = [
211
223
 
212
224
  [[package]]
213
225
  name = "ppv-lite86"
214
- version = "0.2.20"
226
+ version = "0.2.21"
215
227
  source = "registry+https://github.com/rust-lang/crates.io-index"
216
- checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04"
228
+ checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9"
217
229
  dependencies = [
218
230
  "zerocopy",
219
231
  ]
220
232
 
221
233
  [[package]]
222
234
  name = "proc-macro2"
223
- version = "1.0.93"
235
+ version = "1.0.106"
224
236
  source = "registry+https://github.com/rust-lang/crates.io-index"
225
- checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99"
237
+ checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
226
238
  dependencies = [
227
239
  "unicode-ident",
228
240
  ]
229
241
 
230
242
  [[package]]
231
243
  name = "quote"
232
- version = "1.0.38"
244
+ version = "1.0.44"
233
245
  source = "registry+https://github.com/rust-lang/crates.io-index"
234
- checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc"
246
+ checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4"
235
247
  dependencies = [
236
248
  "proc-macro2",
237
249
  ]
238
250
 
251
+ [[package]]
252
+ name = "r-efi"
253
+ version = "5.3.0"
254
+ source = "registry+https://github.com/rust-lang/crates.io-index"
255
+ checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f"
256
+
239
257
  [[package]]
240
258
  name = "rand"
241
- version = "0.8.5"
259
+ version = "0.9.2"
242
260
  source = "registry+https://github.com/rust-lang/crates.io-index"
243
- checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
261
+ checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1"
244
262
  dependencies = [
245
- "libc",
246
263
  "rand_chacha",
247
264
  "rand_core",
248
265
  ]
249
266
 
250
267
  [[package]]
251
268
  name = "rand_chacha"
252
- version = "0.3.1"
269
+ version = "0.9.0"
253
270
  source = "registry+https://github.com/rust-lang/crates.io-index"
254
- checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
271
+ checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb"
255
272
  dependencies = [
256
273
  "ppv-lite86",
257
274
  "rand_core",
@@ -259,9 +276,9 @@ dependencies = [
259
276
 
260
277
  [[package]]
261
278
  name = "rand_core"
262
- version = "0.6.4"
279
+ version = "0.9.5"
263
280
  source = "registry+https://github.com/rust-lang/crates.io-index"
264
- checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
281
+ checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c"
265
282
  dependencies = [
266
283
  "getrandom",
267
284
  ]
@@ -298,9 +315,9 @@ checksum = "cca7ad6a7e21e72151d56fe2495a259b5670e204c3adac41ee7ef676ea08117a"
298
315
 
299
316
  [[package]]
300
317
  name = "rb-sys-test-helpers"
301
- version = "0.2.2"
318
+ version = "0.3.0"
302
319
  source = "registry+https://github.com/rust-lang/crates.io-index"
303
- checksum = "d6ccb543252549fc28f5d290322e041cd682bd199a8e1caaa813fb6e63dd221e"
320
+ checksum = "ccc637c53cad6a6b49ad51c5857c64e36bd70c955ffafe9dc9cc5bc9dd0b3b18"
304
321
  dependencies = [
305
322
  "rb-sys",
306
323
  "rb-sys-env",
@@ -309,9 +326,9 @@ dependencies = [
309
326
 
310
327
  [[package]]
311
328
  name = "rb-sys-test-helpers-macros"
312
- version = "0.2.2"
329
+ version = "0.3.0"
313
330
  source = "registry+https://github.com/rust-lang/crates.io-index"
314
- checksum = "1508caed999cb659ab1b3308e7b2985186b3b550ef5492dc18da71b560c55615"
331
+ checksum = "b1c1fce35d9ac77a2745e539232fb82a75856675a5daf4ef8b1ca994d89f8b3f"
315
332
  dependencies = [
316
333
  "quote",
317
334
  "syn",
@@ -319,9 +336,9 @@ dependencies = [
319
336
 
320
337
  [[package]]
321
338
  name = "regex"
322
- version = "1.11.1"
339
+ version = "1.12.3"
323
340
  source = "registry+https://github.com/rust-lang/crates.io-index"
324
- checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
341
+ checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276"
325
342
  dependencies = [
326
343
  "aho-corasick",
327
344
  "memchr",
@@ -331,9 +348,9 @@ dependencies = [
331
348
 
332
349
  [[package]]
333
350
  name = "regex-automata"
334
- version = "0.4.9"
351
+ version = "0.4.14"
335
352
  source = "registry+https://github.com/rust-lang/crates.io-index"
336
- checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
353
+ checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f"
337
354
  dependencies = [
338
355
  "aho-corasick",
339
356
  "memchr",
@@ -342,9 +359,9 @@ dependencies = [
342
359
 
343
360
  [[package]]
344
361
  name = "regex-syntax"
345
- version = "0.8.5"
362
+ version = "0.8.9"
346
363
  source = "registry+https://github.com/rust-lang/crates.io-index"
347
- checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
364
+ checksum = "a96887878f22d7bad8a3b6dc5b7440e0ada9a245242924394987b21cf2210a4c"
348
365
 
349
366
  [[package]]
350
367
  name = "rustc-hash"
@@ -354,9 +371,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
354
371
 
355
372
  [[package]]
356
373
  name = "shell-words"
357
- version = "1.1.0"
374
+ version = "1.1.1"
358
375
  source = "registry+https://github.com/rust-lang/crates.io-index"
359
- checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde"
376
+ checksum = "dc6fe69c597f9c37bfeeeeeb33da3530379845f10be461a66d16d03eca2ded77"
360
377
 
361
378
  [[package]]
362
379
  name = "shlex"
@@ -366,9 +383,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
366
383
 
367
384
  [[package]]
368
385
  name = "syn"
369
- version = "2.0.96"
386
+ version = "2.0.117"
370
387
  source = "registry+https://github.com/rust-lang/crates.io-index"
371
- checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80"
388
+ checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99"
372
389
  dependencies = [
373
390
  "proc-macro2",
374
391
  "quote",
@@ -377,95 +394,45 @@ dependencies = [
377
394
 
378
395
  [[package]]
379
396
  name = "unicode-ident"
380
- version = "1.0.14"
381
- source = "registry+https://github.com/rust-lang/crates.io-index"
382
- checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83"
383
-
384
- [[package]]
385
- name = "wasi"
386
- version = "0.11.0+wasi-snapshot-preview1"
397
+ version = "1.0.24"
387
398
  source = "registry+https://github.com/rust-lang/crates.io-index"
388
- checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
399
+ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
389
400
 
390
401
  [[package]]
391
- name = "windows-targets"
392
- version = "0.52.6"
402
+ name = "wasip2"
403
+ version = "1.0.2+wasi-0.2.9"
393
404
  source = "registry+https://github.com/rust-lang/crates.io-index"
394
- checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
405
+ checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5"
395
406
  dependencies = [
396
- "windows_aarch64_gnullvm",
397
- "windows_aarch64_msvc",
398
- "windows_i686_gnu",
399
- "windows_i686_gnullvm",
400
- "windows_i686_msvc",
401
- "windows_x86_64_gnu",
402
- "windows_x86_64_gnullvm",
403
- "windows_x86_64_msvc",
407
+ "wit-bindgen",
404
408
  ]
405
409
 
406
410
  [[package]]
407
- name = "windows_aarch64_gnullvm"
408
- version = "0.52.6"
409
- source = "registry+https://github.com/rust-lang/crates.io-index"
410
- checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
411
-
412
- [[package]]
413
- name = "windows_aarch64_msvc"
414
- version = "0.52.6"
415
- source = "registry+https://github.com/rust-lang/crates.io-index"
416
- checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
417
-
418
- [[package]]
419
- name = "windows_i686_gnu"
420
- version = "0.52.6"
421
- source = "registry+https://github.com/rust-lang/crates.io-index"
422
- checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
423
-
424
- [[package]]
425
- name = "windows_i686_gnullvm"
426
- version = "0.52.6"
427
- source = "registry+https://github.com/rust-lang/crates.io-index"
428
- checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
429
-
430
- [[package]]
431
- name = "windows_i686_msvc"
432
- version = "0.52.6"
433
- source = "registry+https://github.com/rust-lang/crates.io-index"
434
- checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
435
-
436
- [[package]]
437
- name = "windows_x86_64_gnu"
438
- version = "0.52.6"
439
- source = "registry+https://github.com/rust-lang/crates.io-index"
440
- checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
441
-
442
- [[package]]
443
- name = "windows_x86_64_gnullvm"
444
- version = "0.52.6"
411
+ name = "windows-link"
412
+ version = "0.2.1"
445
413
  source = "registry+https://github.com/rust-lang/crates.io-index"
446
- checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
414
+ checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
447
415
 
448
416
  [[package]]
449
- name = "windows_x86_64_msvc"
450
- version = "0.52.6"
417
+ name = "wit-bindgen"
418
+ version = "0.51.0"
451
419
  source = "registry+https://github.com/rust-lang/crates.io-index"
452
- checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
420
+ checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5"
453
421
 
454
422
  [[package]]
455
423
  name = "zerocopy"
456
- version = "0.7.35"
424
+ version = "0.8.39"
457
425
  source = "registry+https://github.com/rust-lang/crates.io-index"
458
- checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0"
426
+ checksum = "db6d35d663eadb6c932438e763b262fe1a70987f9ae936e60158176d710cae4a"
459
427
  dependencies = [
460
- "byteorder",
461
428
  "zerocopy-derive",
462
429
  ]
463
430
 
464
431
  [[package]]
465
432
  name = "zerocopy-derive"
466
- version = "0.7.35"
433
+ version = "0.8.39"
467
434
  source = "registry+https://github.com/rust-lang/crates.io-index"
468
- checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
435
+ checksum = "4122cd3169e94605190e77839c9a40d40ed048d305bfdc146e7df40ab0f3e517"
469
436
  dependencies = [
470
437
  "proc-macro2",
471
438
  "quote",
@@ -1,7 +1,7 @@
1
1
  [package]
2
2
  name = "blake3_ext"
3
3
  version = "0.1.0"
4
- edition = "2021"
4
+ edition = "2024"
5
5
  authors = ["Ian Ker-Seymer <ian.kerseymer@shopify.com>"]
6
6
  license = "MIT"
7
7
  publish = false
@@ -10,16 +10,16 @@ publish = false
10
10
  crate-type = ["cdylib"]
11
11
 
12
12
  [dependencies]
13
- rb-sys = { version = "0.9", features = ["stable-api-compiled-fallback"] }
13
+ rb-sys = { version = "0.9.124", features = ["stable-api-compiled-fallback"] }
14
14
  blake3 = { version = "1.5" }
15
15
 
16
16
  [dev-dependencies]
17
17
  hex = "0.4.3"
18
- rand = "0.8.5"
19
- rb-sys-test-helpers = "0.2.0"
18
+ rand = "0.9.2"
19
+ rb-sys-test-helpers = "0.3.0"
20
20
 
21
21
  [build-dependencies]
22
- rb-sys-env = "0.2.1"
22
+ rb-sys-env = "0.2.3"
23
23
 
24
24
 
25
25
  [lints.rust]
@@ -1,4 +1,4 @@
1
- use rb_sys::{size_t, VALUE};
1
+ use rb_sys::{VALUE, size_t};
2
2
  use std::ffi::{c_int, c_uchar, c_void};
3
3
 
4
4
  pub const RUBY_DIGEST_API_VERSION: c_int = 3;
@@ -36,19 +36,23 @@ pub unsafe fn rb_digest_make_metadata(meta: &'static RbDigestMetadataT) -> VALUE
36
36
  INIT.call_once(|| {
37
37
  let lib_name = "digest.so\0".as_ptr() as *const c_char;
38
38
  let symbol_name = "rb_digest_wrap_metadata\0".as_ptr() as *const c_char;
39
- let symbol_ptr = rb_ext_resolve_symbol(lib_name, symbol_name);
39
+ let symbol_ptr = unsafe { rb_ext_resolve_symbol(lib_name, symbol_name) };
40
40
 
41
41
  if !symbol_ptr.is_null() {
42
- WRAPPER = Some(std::mem::transmute::<*mut c_void, WrapperType>(symbol_ptr));
42
+ unsafe {
43
+ WRAPPER = Some(std::mem::transmute::<*mut c_void, WrapperType>(symbol_ptr));
44
+ }
43
45
  } else {
44
46
  panic!("Failed to resolve rb_digest_wrap_metadata");
45
47
  }
46
48
  });
47
49
  }
48
50
 
49
- load_wrapper();
50
- if let Some(wrapper) = WRAPPER {
51
- return wrapper(meta);
51
+ unsafe {
52
+ load_wrapper();
53
+ if let Some(wrapper) = WRAPPER {
54
+ return wrapper(meta);
55
+ }
52
56
  }
53
57
  panic!("Failed to resolve rb_digest_wrap_metadata");
54
58
  }
@@ -56,11 +60,13 @@ pub unsafe fn rb_digest_make_metadata(meta: &'static RbDigestMetadataT) -> VALUE
56
60
  #[cfg(not(any(digest_use_rb_ext_resolve_symbol, ruby_gte_3_4)))]
57
61
  pub unsafe fn rb_digest_make_metadata(meta: &'static RbDigestMetadataT) -> VALUE {
58
62
  use rb_sys::{rb_data_object_wrap, rb_obj_freeze};
59
- let data = rb_data_object_wrap(
60
- 0 as VALUE,
61
- meta as *const RbDigestMetadataT as *mut c_void,
62
- None,
63
- None,
64
- );
65
- rb_obj_freeze(data)
63
+ unsafe {
64
+ let data = rb_data_object_wrap(
65
+ 0 as VALUE,
66
+ meta as *const RbDigestMetadataT as *mut c_void,
67
+ None,
68
+ None,
69
+ );
70
+ rb_obj_freeze(data)
71
+ }
66
72
  }
@@ -9,7 +9,7 @@ use std::ffi::{c_int, c_uchar, c_void};
9
9
  use std::mem::MaybeUninit;
10
10
  use std::os::raw::c_char;
11
11
 
12
- use bindings::{rb_digest_make_metadata, RbDigestMetadataT, RUBY_DIGEST_API_VERSION};
12
+ use bindings::{RUBY_DIGEST_API_VERSION, RbDigestMetadataT, rb_digest_make_metadata};
13
13
 
14
14
  #[repr(C)]
15
15
  #[derive(Debug, Default)]
@@ -66,26 +66,30 @@ impl Blake3 {
66
66
 
67
67
  /// # Safety
68
68
  /// This function is called by Ruby, so it must be safe.
69
- #[no_mangle]
69
+ #[unsafe(no_mangle)]
70
70
  pub unsafe extern "C" fn Init_blake3_ext() {
71
- rb_require("digest\0".as_ptr() as *const c_char);
72
- let digest_module = rb_const_get(rb_cObject, rb_intern("Digest\0".as_ptr() as *const c_char));
73
- let digest_base = rb_const_get(digest_module, rb_intern("Base\0".as_ptr() as *const c_char));
74
- let klass = rb_define_class_under(
75
- digest_module,
76
- "Blake3\0".as_ptr() as *const c_char,
77
- digest_base,
78
- );
79
- let meta = rb_digest_make_metadata(Blake3::digest_metadata());
80
- let metadata_id = rb_intern("metadata\0".as_ptr() as *const c_char);
81
- rb_ivar_set(klass, metadata_id, meta);
71
+ unsafe {
72
+ rb_require("digest\0".as_ptr() as *const c_char);
73
+ let digest_module =
74
+ rb_const_get(rb_cObject, rb_intern("Digest\0".as_ptr() as *const c_char));
75
+ let digest_base =
76
+ rb_const_get(digest_module, rb_intern("Base\0".as_ptr() as *const c_char));
77
+ let klass = rb_define_class_under(
78
+ digest_module,
79
+ "Blake3\0".as_ptr() as *const c_char,
80
+ digest_base,
81
+ );
82
+ let meta = rb_digest_make_metadata(Blake3::digest_metadata());
83
+ let metadata_id = rb_intern("metadata\0".as_ptr() as *const c_char);
84
+ rb_ivar_set(klass, metadata_id, meta);
85
+ }
82
86
  }
83
87
 
84
88
  #[cfg(test)]
85
89
  mod tests {
86
90
  use rb_sys::{
87
- rb_cObject, rb_const_get, rb_enc_set_index, rb_funcallv_public, rb_intern, rb_str_new,
88
- rb_utf8_encindex, RSTRING_LEN, RSTRING_PTR,
91
+ RSTRING_LEN, RSTRING_PTR, rb_cObject, rb_const_get, rb_enc_set_index, rb_funcallv_public,
92
+ rb_intern, rb_str_new, rb_utf8_encindex,
89
93
  };
90
94
  use rb_sys_test_helpers::{protect, ruby_test};
91
95
 
@@ -126,12 +130,12 @@ mod tests {
126
130
  }
127
131
 
128
132
  fn gen_random_bytes(max_len: usize) -> Vec<u8> {
129
- let size = rand::random::<usize>() % max_len;
133
+ let size = rand::random_range(0..max_len);
130
134
  (0..size).map(|_| rand::random::<u8>()).collect()
131
135
  }
132
136
 
133
137
  fn gen_random_string(max_len: usize) -> String {
134
- let size = rand::random::<usize>() % max_len;
138
+ let size = rand::random_range(0..max_len);
135
139
  (0..size)
136
140
  .map(|_| rand::random::<char>())
137
141
  .collect::<String>()
data/lib/digest/blake3.rb CHANGED
@@ -12,5 +12,9 @@ begin
12
12
  RUBY_VERSION =~ /(\d+\.\d+)/
13
13
  require "digest/blake3/#{Regexp.last_match(1)}/blake3_ext"
14
14
  rescue LoadError
15
- require_relative "blake3/blake3_ext"
15
+ begin
16
+ require_relative "blake3/blake3_ext"
17
+ rescue LoadError
18
+ require "digest/blake3/blake3_ext"
19
+ end
16
20
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blake3-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.6.rc1
4
+ version: 1.8.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ian Ker-Seymer
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2026-01-22 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: rb_sys
@@ -16,16 +15,15 @@ dependencies:
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: '0.9'
18
+ version: 0.9.124
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
- version: '0.9'
25
+ version: 0.9.124
27
26
  description: Provides native bindings to the Blake3 hash function for Ruby.
28
- email:
29
27
  executables: []
30
28
  extensions:
31
29
  - ext/digest/blake3_ext/extconf.rb
@@ -49,7 +47,6 @@ metadata:
49
47
  allowed_push_host: https://rubygems.org
50
48
  homepage_uri: https://github.com/Shopify/blake3-ruby
51
49
  source_code_uri: https://github.com/Shopify/blake3-ruby
52
- post_install_message:
53
50
  rdoc_options: []
54
51
  require_paths:
55
52
  - lib
@@ -60,12 +57,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
60
57
  version: 3.2.0
61
58
  required_rubygems_version: !ruby/object:Gem::Requirement
62
59
  requirements:
63
- - - ">"
60
+ - - ">="
64
61
  - !ruby/object:Gem::Version
65
- version: 1.3.1
62
+ version: '0'
66
63
  requirements: []
67
- rubygems_version: 3.4.19
68
- signing_key:
64
+ rubygems_version: 3.6.9
69
65
  specification_version: 4
70
66
  summary: Blake3 hash function bindings for Ruby.
71
67
  test_files: []