imprimatur 0.1.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.
Files changed (98) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +8 -0
  3. data/Cargo.lock +835 -0
  4. data/Cargo.toml +44 -0
  5. data/LICENSE.txt +29 -0
  6. data/README.md +314 -0
  7. data/ext/imprimatur_native/cli/Cargo.toml +30 -0
  8. data/ext/imprimatur_native/cli/src/app.rs +183 -0
  9. data/ext/imprimatur_native/cli/src/cli/completion.rs +26 -0
  10. data/ext/imprimatur_native/cli/src/cli/grep.rs +359 -0
  11. data/ext/imprimatur_native/cli/src/cli/images.rs +137 -0
  12. data/ext/imprimatur_native/cli/src/cli/limits.rs +49 -0
  13. data/ext/imprimatur_native/cli/src/cli/markdown.rs +128 -0
  14. data/ext/imprimatur_native/cli/src/cli.rs +71 -0
  15. data/ext/imprimatur_native/cli/src/main.rs +15 -0
  16. data/ext/imprimatur_native/core/Cargo.toml +33 -0
  17. data/ext/imprimatur_native/core/LICENSE +29 -0
  18. data/ext/imprimatur_native/core/README.md +105 -0
  19. data/ext/imprimatur_native/core/src/doc/paragraph.rs +112 -0
  20. data/ext/imprimatur_native/core/src/doc/table.rs +41 -0
  21. data/ext/imprimatur_native/core/src/doc.rs +210 -0
  22. data/ext/imprimatur_native/core/src/docx.rs +343 -0
  23. data/ext/imprimatur_native/core/src/error.rs +113 -0
  24. data/ext/imprimatur_native/core/src/lib.rs +38 -0
  25. data/ext/imprimatur_native/core/src/opc.rs +51 -0
  26. data/ext/imprimatur_native/core/src/pdf/font.rs +96 -0
  27. data/ext/imprimatur_native/core/src/pdf/layout/wrap.rs +161 -0
  28. data/ext/imprimatur_native/core/src/pdf/layout.rs +280 -0
  29. data/ext/imprimatur_native/core/src/pdf/metrics.rs +139 -0
  30. data/ext/imprimatur_native/core/src/pdf/objects.rs +141 -0
  31. data/ext/imprimatur_native/core/src/pdf.rs +84 -0
  32. data/ext/imprimatur_native/core/src/read/budget.rs +140 -0
  33. data/ext/imprimatur_native/core/src/read/content.rs +266 -0
  34. data/ext/imprimatur_native/core/src/read/docx/styles.rs +118 -0
  35. data/ext/imprimatur_native/core/src/read/docx.rs +336 -0
  36. data/ext/imprimatur_native/core/src/read/image/dimensions.rs +215 -0
  37. data/ext/imprimatur_native/core/src/read/image.rs +233 -0
  38. data/ext/imprimatur_native/core/src/read/inflate.rs +44 -0
  39. data/ext/imprimatur_native/core/src/read/json.rs +172 -0
  40. data/ext/imprimatur_native/core/src/read/markdown.rs +254 -0
  41. data/ext/imprimatur_native/core/src/read/package.rs +191 -0
  42. data/ext/imprimatur_native/core/src/read/pdf/cmap.rs +216 -0
  43. data/ext/imprimatur_native/core/src/read/pdf/content/geometry.rs +79 -0
  44. data/ext/imprimatur_native/core/src/read/pdf/content/operands.rs +156 -0
  45. data/ext/imprimatur_native/core/src/read/pdf/content.rs +439 -0
  46. data/ext/imprimatur_native/core/src/read/pdf/crypt.rs +256 -0
  47. data/ext/imprimatur_native/core/src/read/pdf/document.rs +420 -0
  48. data/ext/imprimatur_native/core/src/read/pdf/filter.rs +258 -0
  49. data/ext/imprimatur_native/core/src/read/pdf/font.rs +315 -0
  50. data/ext/imprimatur_native/core/src/read/pdf/glyphs.rs +179 -0
  51. data/ext/imprimatur_native/core/src/read/pdf/glyphs.txt +6298 -0
  52. data/ext/imprimatur_native/core/src/read/pdf/images.rs +365 -0
  53. data/ext/imprimatur_native/core/src/read/pdf/layout.rs +451 -0
  54. data/ext/imprimatur_native/core/src/read/pdf/lexer.rs +255 -0
  55. data/ext/imprimatur_native/core/src/read/pdf/object/name.rs +44 -0
  56. data/ext/imprimatur_native/core/src/read/pdf/object.rs +261 -0
  57. data/ext/imprimatur_native/core/src/read/pdf/xref.rs +346 -0
  58. data/ext/imprimatur_native/core/src/read/pdf.rs +53 -0
  59. data/ext/imprimatur_native/core/src/read/span.rs +22 -0
  60. data/ext/imprimatur_native/core/src/read/xlsx/numbers.rs +155 -0
  61. data/ext/imprimatur_native/core/src/read/xlsx.rs +340 -0
  62. data/ext/imprimatur_native/core/src/read.rs +145 -0
  63. data/ext/imprimatur_native/core/src/style.rs +82 -0
  64. data/ext/imprimatur_native/core/src/test_support.rs +163 -0
  65. data/ext/imprimatur_native/core/src/xlsx/cell.rs +112 -0
  66. data/ext/imprimatur_native/core/src/xlsx/comment.rs +256 -0
  67. data/ext/imprimatur_native/core/src/xlsx/date.rs +173 -0
  68. data/ext/imprimatur_native/core/src/xlsx/format.rs +226 -0
  69. data/ext/imprimatur_native/core/src/xlsx/package.rs +268 -0
  70. data/ext/imprimatur_native/core/src/xlsx/range.rs +124 -0
  71. data/ext/imprimatur_native/core/src/xlsx/styles.rs +240 -0
  72. data/ext/imprimatur_native/core/src/xlsx/text.rs +122 -0
  73. data/ext/imprimatur_native/core/src/xlsx/validation.rs +258 -0
  74. data/ext/imprimatur_native/core/src/xlsx/worksheet.rs +350 -0
  75. data/ext/imprimatur_native/core/src/xlsx.rs +120 -0
  76. data/ext/imprimatur_native/core/src/xml/reader.rs +238 -0
  77. data/ext/imprimatur_native/core/src/xml.rs +95 -0
  78. data/ext/imprimatur_native/core/src/zip/reader.rs +144 -0
  79. data/ext/imprimatur_native/core/src/zip.rs +161 -0
  80. data/ext/imprimatur_native/extconf.rb +45 -0
  81. data/ext/imprimatur_native/ffi/Cargo.toml +21 -0
  82. data/ext/imprimatur_native/ffi/src/convert.rs +132 -0
  83. data/ext/imprimatur_native/ffi/src/document.rs +138 -0
  84. data/ext/imprimatur_native/ffi/src/lib.rs +301 -0
  85. data/ext/imprimatur_native/ffi/src/read.rs +182 -0
  86. data/ext/imprimatur_native/ffi/src/style.rs +85 -0
  87. data/ext/imprimatur_native/ffi/src/validation.rs +56 -0
  88. data/lib/imprimatur/document.rb +127 -0
  89. data/lib/imprimatur/error.rb +22 -0
  90. data/lib/imprimatur/formula.rb +13 -0
  91. data/lib/imprimatur/native.rb +17 -0
  92. data/lib/imprimatur/reader.rb +59 -0
  93. data/lib/imprimatur/style.rb +31 -0
  94. data/lib/imprimatur/validation.rb +35 -0
  95. data/lib/imprimatur/version.rb +5 -0
  96. data/lib/imprimatur/xlsx.rb +183 -0
  97. data/lib/imprimatur.rb +111 -0
  98. metadata +157 -0
data/Cargo.lock ADDED
@@ -0,0 +1,835 @@
1
+ # This file is automatically @generated by Cargo.
2
+ # It is not intended for manual editing.
3
+ version = 4
4
+
5
+ [[package]]
6
+ name = "adler2"
7
+ version = "2.0.1"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
10
+
11
+ [[package]]
12
+ name = "aes"
13
+ version = "0.9.3"
14
+ source = "registry+https://github.com/rust-lang/crates.io-index"
15
+ checksum = "35f0f96ce78e38c3dc6d8948aa8163d06385be74000f3c7a95bf1eef35d3ea32"
16
+ dependencies = [
17
+ "cipher",
18
+ "cpubits",
19
+ "cpufeatures",
20
+ ]
21
+
22
+ [[package]]
23
+ name = "aho-corasick"
24
+ version = "1.1.5"
25
+ source = "registry+https://github.com/rust-lang/crates.io-index"
26
+ checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba"
27
+ dependencies = [
28
+ "memchr",
29
+ ]
30
+
31
+ [[package]]
32
+ name = "autocfg"
33
+ version = "1.5.1"
34
+ source = "registry+https://github.com/rust-lang/crates.io-index"
35
+ checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53"
36
+
37
+ [[package]]
38
+ name = "bindgen"
39
+ version = "0.72.1"
40
+ source = "registry+https://github.com/rust-lang/crates.io-index"
41
+ checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895"
42
+ dependencies = [
43
+ "bitflags",
44
+ "cexpr",
45
+ "clang-sys",
46
+ "itertools 0.13.0",
47
+ "proc-macro2",
48
+ "quote",
49
+ "regex",
50
+ "rustc-hash",
51
+ "shlex",
52
+ "syn 2.0.119",
53
+ ]
54
+
55
+ [[package]]
56
+ name = "bitflags"
57
+ version = "2.13.2"
58
+ source = "registry+https://github.com/rust-lang/crates.io-index"
59
+ checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06"
60
+
61
+ [[package]]
62
+ name = "block-buffer"
63
+ version = "0.12.1"
64
+ source = "registry+https://github.com/rust-lang/crates.io-index"
65
+ checksum = "d2f6c7dbe95a6ed67ad9f18e57daf93a2f034c524b99fd2b76d18fdfeb6660aa"
66
+ dependencies = [
67
+ "hybrid-array",
68
+ ]
69
+
70
+ [[package]]
71
+ name = "cexpr"
72
+ version = "0.6.0"
73
+ source = "registry+https://github.com/rust-lang/crates.io-index"
74
+ checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
75
+ dependencies = [
76
+ "nom",
77
+ ]
78
+
79
+ [[package]]
80
+ name = "cfg-if"
81
+ version = "1.0.5"
82
+ source = "registry+https://github.com/rust-lang/crates.io-index"
83
+ checksum = "4e7648175b45a9a48536d676f68d918270699102aa8dab5496df06904c914600"
84
+
85
+ [[package]]
86
+ name = "cfg_aliases"
87
+ version = "0.2.2"
88
+ source = "registry+https://github.com/rust-lang/crates.io-index"
89
+ checksum = "f079e83a288787bcd14a6aea84cee5c87a67c5a3e660c30f557a3d24761b3527"
90
+
91
+ [[package]]
92
+ name = "cipher"
93
+ version = "0.5.2"
94
+ source = "registry+https://github.com/rust-lang/crates.io-index"
95
+ checksum = "e8cf2a2c93cd704877c0858356ed03480ff301ee950b43f1cbe4573b088bfa6c"
96
+ dependencies = [
97
+ "crypto-common",
98
+ "inout",
99
+ ]
100
+
101
+ [[package]]
102
+ name = "clang-sys"
103
+ version = "1.9.1"
104
+ source = "registry+https://github.com/rust-lang/crates.io-index"
105
+ checksum = "157a8ba7b480713b56f4c09fd13fc3e0a22a5dfab8097ba61cbc5feef950788a"
106
+ dependencies = [
107
+ "glob",
108
+ "libc",
109
+ "libloading",
110
+ ]
111
+
112
+ [[package]]
113
+ name = "const-oid"
114
+ version = "0.10.2"
115
+ source = "registry+https://github.com/rust-lang/crates.io-index"
116
+ checksum = "a6ef517f0926dd24a1582492c791b6a4818a4d94e789a334894aa15b0d12f55c"
117
+
118
+ [[package]]
119
+ name = "cpubits"
120
+ version = "0.1.1"
121
+ source = "registry+https://github.com/rust-lang/crates.io-index"
122
+ checksum = "15b85f9c39137c3a891689859392b1bd49812121d0d61c9caf00d46ed5ce06ae"
123
+
124
+ [[package]]
125
+ name = "cpufeatures"
126
+ version = "0.3.1"
127
+ source = "registry+https://github.com/rust-lang/crates.io-index"
128
+ checksum = "5ca28b0ae3115b884660db4118d803791fd6756b6e88f39c0f3f7859060d7566"
129
+ dependencies = [
130
+ "libc",
131
+ ]
132
+
133
+ [[package]]
134
+ name = "crc32fast"
135
+ version = "1.5.2"
136
+ source = "registry+https://github.com/rust-lang/crates.io-index"
137
+ checksum = "01a7799fd6b852db0e61728dde9a204c423b44d689dbd432522543614b490e78"
138
+ dependencies = [
139
+ "cfg-if",
140
+ ]
141
+
142
+ [[package]]
143
+ name = "crypto-common"
144
+ version = "0.2.2"
145
+ source = "registry+https://github.com/rust-lang/crates.io-index"
146
+ checksum = "ce6e4c961d6cd6c9a86db418387425e8bdeaf05b3c8bc1411e6dca4c252f1453"
147
+ dependencies = [
148
+ "hybrid-array",
149
+ ]
150
+
151
+ [[package]]
152
+ name = "digest"
153
+ version = "0.11.3"
154
+ source = "registry+https://github.com/rust-lang/crates.io-index"
155
+ checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2"
156
+ dependencies = [
157
+ "block-buffer",
158
+ "const-oid",
159
+ "crypto-common",
160
+ ]
161
+
162
+ [[package]]
163
+ name = "either"
164
+ version = "1.19.0"
165
+ source = "registry+https://github.com/rust-lang/crates.io-index"
166
+ checksum = "0e9c71c2167ca323c882b99918929403426e2373ea17242ff5653e0d5e1058be"
167
+
168
+ [[package]]
169
+ name = "equivalent"
170
+ version = "1.0.3"
171
+ source = "registry+https://github.com/rust-lang/crates.io-index"
172
+ checksum = "00d174d5400e5e8fd687ad1049e2f578285fa914201b1af7e8b112a4546bd826"
173
+
174
+ [[package]]
175
+ name = "errno"
176
+ version = "0.3.14"
177
+ source = "registry+https://github.com/rust-lang/crates.io-index"
178
+ checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
179
+ dependencies = [
180
+ "libc",
181
+ "windows-sys",
182
+ ]
183
+
184
+ [[package]]
185
+ name = "fastrand"
186
+ version = "2.5.0"
187
+ source = "registry+https://github.com/rust-lang/crates.io-index"
188
+ checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223"
189
+
190
+ [[package]]
191
+ name = "flate2"
192
+ version = "1.1.10"
193
+ source = "registry+https://github.com/rust-lang/crates.io-index"
194
+ checksum = "6e634e2e0ebac1ee034020da1ca582e17ffe4e0f5e985823721e168928136dcb"
195
+ dependencies = [
196
+ "zlib-rs",
197
+ ]
198
+
199
+ [[package]]
200
+ name = "getrandom"
201
+ version = "0.4.3"
202
+ source = "registry+https://github.com/rust-lang/crates.io-index"
203
+ checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099"
204
+ dependencies = [
205
+ "cfg-if",
206
+ "libc",
207
+ "r-efi",
208
+ ]
209
+
210
+ [[package]]
211
+ name = "glob"
212
+ version = "0.3.4"
213
+ source = "registry+https://github.com/rust-lang/crates.io-index"
214
+ checksum = "e4eba85ea1d0a966a983acd07deee566e67395d2d96b6fb39e62b5a833f1eb0b"
215
+
216
+ [[package]]
217
+ name = "hashbrown"
218
+ version = "0.17.1"
219
+ source = "registry+https://github.com/rust-lang/crates.io-index"
220
+ checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a"
221
+
222
+ [[package]]
223
+ name = "hybrid-array"
224
+ version = "0.4.15"
225
+ source = "registry+https://github.com/rust-lang/crates.io-index"
226
+ checksum = "27f864f10dfb56725ce5ce5472bc52252c8f93a4ab86327122cebf62c5f59a17"
227
+ dependencies = [
228
+ "typenum",
229
+ ]
230
+
231
+ [[package]]
232
+ name = "imprimatur"
233
+ version = "0.1.0"
234
+ dependencies = [
235
+ "aes",
236
+ "crc32fast",
237
+ "md-5",
238
+ "miniz_oxide",
239
+ "serde_json",
240
+ "sha2",
241
+ "thiserror",
242
+ "zip",
243
+ ]
244
+
245
+ [[package]]
246
+ name = "imprimatur-cli"
247
+ version = "0.1.0"
248
+ dependencies = [
249
+ "imprimatur",
250
+ "regex",
251
+ "serde_json",
252
+ "tempfile",
253
+ "usage-lib",
254
+ "usage-rs",
255
+ ]
256
+
257
+ [[package]]
258
+ name = "imprimatur_native"
259
+ version = "0.1.0"
260
+ dependencies = [
261
+ "imprimatur",
262
+ "magnus",
263
+ "rb-sys",
264
+ "serde_json",
265
+ ]
266
+
267
+ [[package]]
268
+ name = "indexmap"
269
+ version = "2.14.2"
270
+ source = "registry+https://github.com/rust-lang/crates.io-index"
271
+ checksum = "cc4e190f5d26ca7051642629da2c52fc03bde85a03197c99408dcd291734c855"
272
+ dependencies = [
273
+ "equivalent",
274
+ "hashbrown",
275
+ "serde",
276
+ "serde_core",
277
+ ]
278
+
279
+ [[package]]
280
+ name = "inout"
281
+ version = "0.2.3"
282
+ source = "registry+https://github.com/rust-lang/crates.io-index"
283
+ checksum = "d8c0d789294fb457b791f7797a04478704788f30b407e5d0b01deaa846572d9f"
284
+ dependencies = [
285
+ "hybrid-array",
286
+ ]
287
+
288
+ [[package]]
289
+ name = "itertools"
290
+ version = "0.13.0"
291
+ source = "registry+https://github.com/rust-lang/crates.io-index"
292
+ checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
293
+ dependencies = [
294
+ "either",
295
+ ]
296
+
297
+ [[package]]
298
+ name = "itertools"
299
+ version = "0.15.0"
300
+ source = "registry+https://github.com/rust-lang/crates.io-index"
301
+ checksum = "8b4baf93f58d4425749ca49a51c50ebab072c5df6994d08fed93541c331481dc"
302
+ dependencies = [
303
+ "either",
304
+ ]
305
+
306
+ [[package]]
307
+ name = "itoa"
308
+ version = "1.0.18"
309
+ source = "registry+https://github.com/rust-lang/crates.io-index"
310
+ checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
311
+
312
+ [[package]]
313
+ name = "lazy_static"
314
+ version = "1.5.1"
315
+ source = "registry+https://github.com/rust-lang/crates.io-index"
316
+ checksum = "20870f649af7073d53e38067b2a84312175d56ea15217e1b15bc83506ec50afb"
317
+
318
+ [[package]]
319
+ name = "libc"
320
+ version = "0.2.190"
321
+ source = "registry+https://github.com/rust-lang/crates.io-index"
322
+ checksum = "ce5d3ddc6d3fa000eb1536d85e147bfe31aacaba692ed6a876f95cb7c855be78"
323
+
324
+ [[package]]
325
+ name = "libloading"
326
+ version = "0.8.9"
327
+ source = "registry+https://github.com/rust-lang/crates.io-index"
328
+ checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55"
329
+ dependencies = [
330
+ "cfg-if",
331
+ "windows-link",
332
+ ]
333
+
334
+ [[package]]
335
+ name = "linux-raw-sys"
336
+ version = "0.12.1"
337
+ source = "registry+https://github.com/rust-lang/crates.io-index"
338
+ checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53"
339
+
340
+ [[package]]
341
+ name = "log"
342
+ version = "0.4.34"
343
+ source = "registry+https://github.com/rust-lang/crates.io-index"
344
+ checksum = "f9f8bd3e56ce4dfc153cf470fffbfa98c7620958b312ca5c3a4b8d5181fd13c6"
345
+
346
+ [[package]]
347
+ name = "magnus"
348
+ version = "0.9.2"
349
+ source = "registry+https://github.com/rust-lang/crates.io-index"
350
+ checksum = "b9068710e00d21be762edca59b9c4c8946dbdb29820d4f76ad559afea07982c9"
351
+ dependencies = [
352
+ "magnus-macros",
353
+ "rb-sys",
354
+ "rb-sys-env",
355
+ "seq-macro",
356
+ ]
357
+
358
+ [[package]]
359
+ name = "magnus-macros"
360
+ version = "0.9.1"
361
+ source = "registry+https://github.com/rust-lang/crates.io-index"
362
+ checksum = "9dafde2eeb66f090e0f326112323eb8324b12cb32b5d1210e541d3df6b0ce77e"
363
+ dependencies = [
364
+ "proc-macro2",
365
+ "quote",
366
+ "syn 2.0.119",
367
+ ]
368
+
369
+ [[package]]
370
+ name = "md-5"
371
+ version = "0.11.0"
372
+ source = "registry+https://github.com/rust-lang/crates.io-index"
373
+ checksum = "69b6441f590336821bb897fb28fc622898ccceb1d6cea3fde5ea86b090c4de98"
374
+ dependencies = [
375
+ "cfg-if",
376
+ "digest",
377
+ ]
378
+
379
+ [[package]]
380
+ name = "memchr"
381
+ version = "2.8.3"
382
+ source = "registry+https://github.com/rust-lang/crates.io-index"
383
+ checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98"
384
+
385
+ [[package]]
386
+ name = "minimal-lexical"
387
+ version = "0.2.1"
388
+ source = "registry+https://github.com/rust-lang/crates.io-index"
389
+ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
390
+
391
+ [[package]]
392
+ name = "miniz_oxide"
393
+ version = "0.9.1"
394
+ source = "registry+https://github.com/rust-lang/crates.io-index"
395
+ checksum = "b63fbc4a50860e98e7b2aa7804ded1db5cbc3aff9193adaff57a6931bf7c4b4c"
396
+ dependencies = [
397
+ "adler2",
398
+ ]
399
+
400
+ [[package]]
401
+ name = "nix"
402
+ version = "0.31.3"
403
+ source = "registry+https://github.com/rust-lang/crates.io-index"
404
+ checksum = "cf20d2fde8ff38632c426f1165ed7436270b44f199fc55284c38276f9db47c3d"
405
+ dependencies = [
406
+ "bitflags",
407
+ "cfg-if",
408
+ "cfg_aliases",
409
+ "libc",
410
+ ]
411
+
412
+ [[package]]
413
+ name = "nom"
414
+ version = "7.1.3"
415
+ source = "registry+https://github.com/rust-lang/crates.io-index"
416
+ checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
417
+ dependencies = [
418
+ "memchr",
419
+ "minimal-lexical",
420
+ ]
421
+
422
+ [[package]]
423
+ name = "num-traits"
424
+ version = "0.2.19"
425
+ source = "registry+https://github.com/rust-lang/crates.io-index"
426
+ checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
427
+ dependencies = [
428
+ "autocfg",
429
+ ]
430
+
431
+ [[package]]
432
+ name = "once_cell"
433
+ version = "1.21.4"
434
+ source = "registry+https://github.com/rust-lang/crates.io-index"
435
+ checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
436
+
437
+ [[package]]
438
+ name = "proc-macro2"
439
+ version = "1.0.107"
440
+ source = "registry+https://github.com/rust-lang/crates.io-index"
441
+ checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
442
+ dependencies = [
443
+ "unicode-ident",
444
+ ]
445
+
446
+ [[package]]
447
+ name = "pulldown-cmark"
448
+ version = "0.13.4"
449
+ source = "registry+https://github.com/rust-lang/crates.io-index"
450
+ checksum = "e9f068eba8e7071c5f9511831b44f32c740d5adf574e990f946ddb53db2f314e"
451
+ dependencies = [
452
+ "bitflags",
453
+ "memchr",
454
+ "unicase",
455
+ ]
456
+
457
+ [[package]]
458
+ name = "quote"
459
+ version = "1.0.47"
460
+ source = "registry+https://github.com/rust-lang/crates.io-index"
461
+ checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
462
+ dependencies = [
463
+ "proc-macro2",
464
+ ]
465
+
466
+ [[package]]
467
+ name = "r-efi"
468
+ version = "6.0.0"
469
+ source = "registry+https://github.com/rust-lang/crates.io-index"
470
+ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf"
471
+
472
+ [[package]]
473
+ name = "rb-sys"
474
+ version = "0.9.130"
475
+ source = "registry+https://github.com/rust-lang/crates.io-index"
476
+ checksum = "02faf625bb10ba893e3ae620f19c9fb1b5f8fcae0fe4eb86bb3f2230fad75edb"
477
+ dependencies = [
478
+ "rb-sys-build",
479
+ ]
480
+
481
+ [[package]]
482
+ name = "rb-sys-build"
483
+ version = "0.9.130"
484
+ source = "registry+https://github.com/rust-lang/crates.io-index"
485
+ checksum = "05be6f9c86fe5482808162826f6c047d093b3670582296c770de1d94f8066694"
486
+ dependencies = [
487
+ "bindgen",
488
+ "lazy_static",
489
+ "proc-macro2",
490
+ "quote",
491
+ "regex",
492
+ "shell-words",
493
+ "syn 2.0.119",
494
+ ]
495
+
496
+ [[package]]
497
+ name = "rb-sys-env"
498
+ version = "0.2.3"
499
+ source = "registry+https://github.com/rust-lang/crates.io-index"
500
+ checksum = "cca7ad6a7e21e72151d56fe2495a259b5670e204c3adac41ee7ef676ea08117a"
501
+
502
+ [[package]]
503
+ name = "regex"
504
+ version = "1.13.1"
505
+ source = "registry+https://github.com/rust-lang/crates.io-index"
506
+ checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d"
507
+ dependencies = [
508
+ "aho-corasick",
509
+ "memchr",
510
+ "regex-automata",
511
+ "regex-syntax",
512
+ ]
513
+
514
+ [[package]]
515
+ name = "regex-automata"
516
+ version = "0.4.18"
517
+ source = "registry+https://github.com/rust-lang/crates.io-index"
518
+ checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2"
519
+ dependencies = [
520
+ "aho-corasick",
521
+ "memchr",
522
+ "regex-syntax",
523
+ ]
524
+
525
+ [[package]]
526
+ name = "regex-syntax"
527
+ version = "0.8.11"
528
+ source = "registry+https://github.com/rust-lang/crates.io-index"
529
+ checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4"
530
+
531
+ [[package]]
532
+ name = "roff"
533
+ version = "1.1.1"
534
+ source = "registry+https://github.com/rust-lang/crates.io-index"
535
+ checksum = "323c417e1d9665a65b263ec744ba09030cfb277e9daa0b018a4ab62e57bc8189"
536
+
537
+ [[package]]
538
+ name = "rustc-hash"
539
+ version = "2.1.3"
540
+ source = "registry+https://github.com/rust-lang/crates.io-index"
541
+ checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d"
542
+
543
+ [[package]]
544
+ name = "rustix"
545
+ version = "1.1.5"
546
+ source = "registry+https://github.com/rust-lang/crates.io-index"
547
+ checksum = "891efababe418670775f199f0d233d84843c227a0949a883ce15b37c78d6629d"
548
+ dependencies = [
549
+ "bitflags",
550
+ "errno",
551
+ "libc",
552
+ "linux-raw-sys",
553
+ "windows-sys",
554
+ ]
555
+
556
+ [[package]]
557
+ name = "semver"
558
+ version = "1.0.28"
559
+ source = "registry+https://github.com/rust-lang/crates.io-index"
560
+ checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd"
561
+
562
+ [[package]]
563
+ name = "seq-macro"
564
+ version = "0.3.6"
565
+ source = "registry+https://github.com/rust-lang/crates.io-index"
566
+ checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc"
567
+
568
+ [[package]]
569
+ name = "serde"
570
+ version = "1.0.229"
571
+ source = "registry+https://github.com/rust-lang/crates.io-index"
572
+ checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba"
573
+ dependencies = [
574
+ "serde_core",
575
+ "serde_derive",
576
+ ]
577
+
578
+ [[package]]
579
+ name = "serde_core"
580
+ version = "1.0.229"
581
+ source = "registry+https://github.com/rust-lang/crates.io-index"
582
+ checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48"
583
+ dependencies = [
584
+ "serde_derive",
585
+ ]
586
+
587
+ [[package]]
588
+ name = "serde_derive"
589
+ version = "1.0.229"
590
+ source = "registry+https://github.com/rust-lang/crates.io-index"
591
+ checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"
592
+ dependencies = [
593
+ "proc-macro2",
594
+ "quote",
595
+ "syn 3.0.9",
596
+ ]
597
+
598
+ [[package]]
599
+ name = "serde_json"
600
+ version = "1.0.154"
601
+ source = "registry+https://github.com/rust-lang/crates.io-index"
602
+ checksum = "e7e9cc8b1b85264074fbcc02a88680c4096b1e47df8f739dceb03bf482f04bd6"
603
+ dependencies = [
604
+ "itoa",
605
+ "memchr",
606
+ "serde",
607
+ "serde_core",
608
+ "zmij",
609
+ ]
610
+
611
+ [[package]]
612
+ name = "sha2"
613
+ version = "0.11.1"
614
+ source = "registry+https://github.com/rust-lang/crates.io-index"
615
+ checksum = "47d7069beb7d6ac7b9acd1039986e73443f24234f41074da099d6f994ac9ad19"
616
+ dependencies = [
617
+ "cfg-if",
618
+ "cpufeatures",
619
+ "digest",
620
+ ]
621
+
622
+ [[package]]
623
+ name = "shell-words"
624
+ version = "1.1.1"
625
+ source = "registry+https://github.com/rust-lang/crates.io-index"
626
+ checksum = "dc6fe69c597f9c37bfeeeeeb33da3530379845f10be461a66d16d03eca2ded77"
627
+
628
+ [[package]]
629
+ name = "shlex"
630
+ version = "1.3.0"
631
+ source = "registry+https://github.com/rust-lang/crates.io-index"
632
+ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
633
+
634
+ [[package]]
635
+ name = "syn"
636
+ version = "2.0.119"
637
+ source = "registry+https://github.com/rust-lang/crates.io-index"
638
+ checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"
639
+ dependencies = [
640
+ "proc-macro2",
641
+ "quote",
642
+ "unicode-ident",
643
+ ]
644
+
645
+ [[package]]
646
+ name = "syn"
647
+ version = "3.0.9"
648
+ source = "registry+https://github.com/rust-lang/crates.io-index"
649
+ checksum = "d78c8dee4c7bf0e14673097256fed6142ce9d3b85a408189d07482442145823b"
650
+ dependencies = [
651
+ "proc-macro2",
652
+ "quote",
653
+ "unicode-ident",
654
+ ]
655
+
656
+ [[package]]
657
+ name = "tempfile"
658
+ version = "3.27.0"
659
+ source = "registry+https://github.com/rust-lang/crates.io-index"
660
+ checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd"
661
+ dependencies = [
662
+ "fastrand",
663
+ "getrandom",
664
+ "once_cell",
665
+ "rustix",
666
+ "windows-sys",
667
+ ]
668
+
669
+ [[package]]
670
+ name = "tera"
671
+ version = "2.4.0"
672
+ source = "registry+https://github.com/rust-lang/crates.io-index"
673
+ checksum = "61e0cadeeb54426080b4c5395d59769ce8293f542cc25511c167c742b2175809"
674
+ dependencies = [
675
+ "serde",
676
+ ]
677
+
678
+ [[package]]
679
+ name = "thiserror"
680
+ version = "2.0.21"
681
+ source = "registry+https://github.com/rust-lang/crates.io-index"
682
+ checksum = "09e52cb86a36cede5cb101bf8908837b3e4c6e5e59fe7fd85c23fb56200d189e"
683
+ dependencies = [
684
+ "thiserror-impl",
685
+ ]
686
+
687
+ [[package]]
688
+ name = "thiserror-impl"
689
+ version = "2.0.21"
690
+ source = "registry+https://github.com/rust-lang/crates.io-index"
691
+ checksum = "fe5197923287db20a58125f0bc85c062f7f2c892de97b18c356f9efb14b28524"
692
+ dependencies = [
693
+ "proc-macro2",
694
+ "quote",
695
+ "syn 3.0.9",
696
+ ]
697
+
698
+ [[package]]
699
+ name = "typed-path"
700
+ version = "0.12.3"
701
+ source = "registry+https://github.com/rust-lang/crates.io-index"
702
+ checksum = "8e28f89b80c87b8fb0cf04ab448d5dd0dd0ade2f8891bae878de66a75a28600e"
703
+
704
+ [[package]]
705
+ name = "typenum"
706
+ version = "1.20.1"
707
+ source = "registry+https://github.com/rust-lang/crates.io-index"
708
+ checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20"
709
+
710
+ [[package]]
711
+ name = "unicase"
712
+ version = "2.10.0"
713
+ source = "registry+https://github.com/rust-lang/crates.io-index"
714
+ checksum = "357cc3acc6a036009fd6c973ed009037c732d60d0b4f6c673e9041497482a28f"
715
+
716
+ [[package]]
717
+ name = "unicode-ident"
718
+ version = "1.0.27"
719
+ source = "registry+https://github.com/rust-lang/crates.io-index"
720
+ checksum = "a2c754d6c33795a1c324727428e5a7dedb5b06195f9890bdbcba760d3e246563"
721
+
722
+ [[package]]
723
+ name = "unicode-width"
724
+ version = "0.2.2"
725
+ source = "registry+https://github.com/rust-lang/crates.io-index"
726
+ checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254"
727
+
728
+ [[package]]
729
+ name = "usage-argv"
730
+ version = "7.0.1"
731
+ source = "registry+https://github.com/rust-lang/crates.io-index"
732
+ checksum = "abb8c23c513e4d5d7d382ac237fcd3dd155bc6c2059c8d85f48b02e8626d4e26"
733
+
734
+ [[package]]
735
+ name = "usage-derive"
736
+ version = "7.0.1"
737
+ source = "registry+https://github.com/rust-lang/crates.io-index"
738
+ checksum = "e2ea142f48bb8f0ec2a44d029c07792f3784eb909307fc9c2341369830e9408f"
739
+ dependencies = [
740
+ "proc-macro2",
741
+ "quote",
742
+ "syn 3.0.9",
743
+ ]
744
+
745
+ [[package]]
746
+ name = "usage-lib"
747
+ version = "7.0.1"
748
+ source = "registry+https://github.com/rust-lang/crates.io-index"
749
+ checksum = "2626dbb6491c6a81e9e9ac00281160c8633b8b4920cac576aac0b43e1864cb4c"
750
+ dependencies = [
751
+ "indexmap",
752
+ "itertools 0.15.0",
753
+ "log",
754
+ "num-traits",
755
+ "pulldown-cmark",
756
+ "regex",
757
+ "roff",
758
+ "semver",
759
+ "serde",
760
+ "tera",
761
+ "thiserror",
762
+ "unicode-width",
763
+ "usage-argv",
764
+ "winnow",
765
+ ]
766
+
767
+ [[package]]
768
+ name = "usage-rs"
769
+ version = "7.0.1"
770
+ source = "registry+https://github.com/rust-lang/crates.io-index"
771
+ checksum = "039e2ccde153e2cbdf4d7cd20ec6af84b12f6622a0a8ba2f4419f6f6aad491db"
772
+ dependencies = [
773
+ "usage-argv",
774
+ "usage-derive",
775
+ "usage-test",
776
+ ]
777
+
778
+ [[package]]
779
+ name = "usage-test"
780
+ version = "7.0.1"
781
+ source = "registry+https://github.com/rust-lang/crates.io-index"
782
+ checksum = "516d3aa137d647f8a24575bc707b7dd18c23f59bbf5e9ce04227a465d2aebc97"
783
+ dependencies = [
784
+ "usage-argv",
785
+ ]
786
+
787
+ [[package]]
788
+ name = "windows-link"
789
+ version = "0.2.1"
790
+ source = "registry+https://github.com/rust-lang/crates.io-index"
791
+ checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
792
+
793
+ [[package]]
794
+ name = "windows-sys"
795
+ version = "0.61.2"
796
+ source = "registry+https://github.com/rust-lang/crates.io-index"
797
+ checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"
798
+ dependencies = [
799
+ "windows-link",
800
+ ]
801
+
802
+ [[package]]
803
+ name = "winnow"
804
+ version = "1.0.4"
805
+ source = "registry+https://github.com/rust-lang/crates.io-index"
806
+ checksum = "23b97319f7b8343df12cc98938e5c3eb436064524c8d2b4e30a1d3a36eecdf81"
807
+ dependencies = [
808
+ "memchr",
809
+ ]
810
+
811
+ [[package]]
812
+ name = "zip"
813
+ version = "9.0.3"
814
+ source = "registry+https://github.com/rust-lang/crates.io-index"
815
+ checksum = "c2d98561b612a84ae525331a7a094429ef8a5772514ed507ff6db5f54badc971"
816
+ dependencies = [
817
+ "crc32fast",
818
+ "flate2",
819
+ "indexmap",
820
+ "memchr",
821
+ "nix",
822
+ "typed-path",
823
+ ]
824
+
825
+ [[package]]
826
+ name = "zlib-rs"
827
+ version = "0.6.8"
828
+ source = "registry+https://github.com/rust-lang/crates.io-index"
829
+ checksum = "b268e58e7c693d7c271f93ffc4ba3b380412554231c85bf61ca7af91042a4112"
830
+
831
+ [[package]]
832
+ name = "zmij"
833
+ version = "1.0.23"
834
+ source = "registry+https://github.com/rust-lang/crates.io-index"
835
+ checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b"