umber 0.0.1__tar.gz

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 (60) hide show
  1. umber-0.0.1/Cargo.lock +818 -0
  2. umber-0.0.1/Cargo.toml +18 -0
  3. umber-0.0.1/LICENSE-APACHE +202 -0
  4. umber-0.0.1/LICENSE-MIT +21 -0
  5. umber-0.0.1/PKG-INFO +47 -0
  6. umber-0.0.1/README-ZH.md +19 -0
  7. umber-0.0.1/README.md +19 -0
  8. umber-0.0.1/THIRD-PARTY-LICENSES.txt +1088 -0
  9. umber-0.0.1/crates/umber-core/Cargo.toml +36 -0
  10. umber-0.0.1/crates/umber-core/LICENSE-APACHE +202 -0
  11. umber-0.0.1/crates/umber-core/LICENSE-MIT +21 -0
  12. umber-0.0.1/crates/umber-core/README.md +13 -0
  13. umber-0.0.1/crates/umber-core/fonts/Geist-Regular.ttf +0 -0
  14. umber-0.0.1/crates/umber-core/fonts/Geist-SemiBold.ttf +0 -0
  15. umber-0.0.1/crates/umber-core/fonts/IBMPlexSans-Regular.ttf +0 -0
  16. umber-0.0.1/crates/umber-core/fonts/IBMPlexSans-SemiBold.ttf +0 -0
  17. umber-0.0.1/crates/umber-core/fonts/Inter-Regular.ttf +0 -0
  18. umber-0.0.1/crates/umber-core/fonts/Inter-SemiBold.ttf +0 -0
  19. umber-0.0.1/crates/umber-core/fonts/JetBrainsMono-Regular.ttf +0 -0
  20. umber-0.0.1/crates/umber-core/fonts/JetBrainsMono-SemiBold.ttf +0 -0
  21. umber-0.0.1/crates/umber-core/fonts/LICENSES/Geist-OFL.txt +93 -0
  22. umber-0.0.1/crates/umber-core/fonts/LICENSES/IBMPlexSans-OFL.txt +93 -0
  23. umber-0.0.1/crates/umber-core/fonts/LICENSES/Inter-OFL.txt +92 -0
  24. umber-0.0.1/crates/umber-core/fonts/LICENSES/JetBrainsMono-OFL.txt +93 -0
  25. umber-0.0.1/crates/umber-core/fonts/LICENSES/SourceSerif4-OFL.txt +93 -0
  26. umber-0.0.1/crates/umber-core/fonts/MANIFEST.md +88 -0
  27. umber-0.0.1/crates/umber-core/fonts/SourceSerif4-Regular.ttf +0 -0
  28. umber-0.0.1/crates/umber-core/fonts/SourceSerif4-SemiBold.ttf +0 -0
  29. umber-0.0.1/crates/umber-core/src/color.rs +637 -0
  30. umber-0.0.1/crates/umber-core/src/downsample.rs +338 -0
  31. umber-0.0.1/crates/umber-core/src/draw.rs +3237 -0
  32. umber-0.0.1/crates/umber-core/src/error.rs +90 -0
  33. umber-0.0.1/crates/umber-core/src/exact.rs +271 -0
  34. umber-0.0.1/crates/umber-core/src/figure.rs +1293 -0
  35. umber-0.0.1/crates/umber-core/src/fonts.rs +364 -0
  36. umber-0.0.1/crates/umber-core/src/geometry.rs +436 -0
  37. umber-0.0.1/crates/umber-core/src/layout.rs +815 -0
  38. umber-0.0.1/crates/umber-core/src/lib.rs +58 -0
  39. umber-0.0.1/crates/umber-core/src/render/mod.rs +39 -0
  40. umber-0.0.1/crates/umber-core/src/render/normalize.rs +578 -0
  41. umber-0.0.1/crates/umber-core/src/render/png.rs +1810 -0
  42. umber-0.0.1/crates/umber-core/src/render/snapshots/umber_core__render__svg__tests__fill_stroke_and_markers_snapshot.snap +27 -0
  43. umber-0.0.1/crates/umber-core/src/render/svg.rs +1112 -0
  44. umber-0.0.1/crates/umber-core/src/resolve.rs +500 -0
  45. umber-0.0.1/crates/umber-core/src/scale.rs +1612 -0
  46. umber-0.0.1/crates/umber-core/src/scene.rs +528 -0
  47. umber-0.0.1/crates/umber-core/src/snapshots/umber_core__draw__tests__chrome_snapshot.snap +28 -0
  48. umber-0.0.1/crates/umber-core/src/text/marks.rs +362 -0
  49. umber-0.0.1/crates/umber-core/src/text/system.rs +940 -0
  50. umber-0.0.1/crates/umber-core/src/text.rs +3203 -0
  51. umber-0.0.1/crates/umber-core/src/theme.rs +1620 -0
  52. umber-0.0.1/crates/umber-core/src/ticks.rs +501 -0
  53. umber-0.0.1/crates/umber-core/tests/fixtures/fallback-only.ttf +0 -0
  54. umber-0.0.1/crates/umber-py/Cargo.toml +19 -0
  55. umber-0.0.1/crates/umber-py/src/lib.rs +10 -0
  56. umber-0.0.1/pyproject.toml +83 -0
  57. umber-0.0.1/python/umber/__init__.py +12 -0
  58. umber-0.0.1/python/umber/_errors.py +64 -0
  59. umber-0.0.1/python/umber/_umber.pyi +5 -0
  60. umber-0.0.1/python/umber/py.typed +0 -0
umber-0.0.1/Cargo.lock ADDED
@@ -0,0 +1,818 @@
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 = "arrayref"
13
+ version = "0.3.9"
14
+ source = "registry+https://github.com/rust-lang/crates.io-index"
15
+ checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
16
+
17
+ [[package]]
18
+ name = "arrayvec"
19
+ version = "0.7.8"
20
+ source = "registry+https://github.com/rust-lang/crates.io-index"
21
+ checksum = "d3fb67a6e08acf24fdeccbac2cb6ac4305825bd1f117462e0e6f2f193345ad56"
22
+
23
+ [[package]]
24
+ name = "autocfg"
25
+ version = "1.5.1"
26
+ source = "registry+https://github.com/rust-lang/crates.io-index"
27
+ checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53"
28
+
29
+ [[package]]
30
+ name = "bit-set"
31
+ version = "0.8.0"
32
+ source = "registry+https://github.com/rust-lang/crates.io-index"
33
+ checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3"
34
+ dependencies = [
35
+ "bit-vec",
36
+ ]
37
+
38
+ [[package]]
39
+ name = "bit-vec"
40
+ version = "0.8.0"
41
+ source = "registry+https://github.com/rust-lang/crates.io-index"
42
+ checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7"
43
+
44
+ [[package]]
45
+ name = "bitflags"
46
+ version = "2.13.2"
47
+ source = "registry+https://github.com/rust-lang/crates.io-index"
48
+ checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06"
49
+
50
+ [[package]]
51
+ name = "bytemuck"
52
+ version = "1.25.2"
53
+ source = "registry+https://github.com/rust-lang/crates.io-index"
54
+ checksum = "95832e849adfb21180ccb6826a99da14e5d266ae5c2e668e1602cf234f153797"
55
+ dependencies = [
56
+ "bytemuck_derive",
57
+ ]
58
+
59
+ [[package]]
60
+ name = "bytemuck_derive"
61
+ version = "1.12.1"
62
+ source = "registry+https://github.com/rust-lang/crates.io-index"
63
+ checksum = "6a1f896587b6f2c069c73d2f0913e2d590c3990285cd2f0b6aa02b786b4c679c"
64
+ dependencies = [
65
+ "proc-macro2",
66
+ "quote",
67
+ "syn 3.0.6",
68
+ ]
69
+
70
+ [[package]]
71
+ name = "cfg-if"
72
+ version = "1.0.5"
73
+ source = "registry+https://github.com/rust-lang/crates.io-index"
74
+ checksum = "4e7648175b45a9a48536d676f68d918270699102aa8dab5496df06904c914600"
75
+
76
+ [[package]]
77
+ name = "console"
78
+ version = "0.16.6"
79
+ source = "registry+https://github.com/rust-lang/crates.io-index"
80
+ checksum = "e96a4956774c13c126a8b5af4daa79384f4d826534c95a02d76afb39e2ab64e3"
81
+ dependencies = [
82
+ "encode_unicode",
83
+ "libc",
84
+ "windows-sys",
85
+ ]
86
+
87
+ [[package]]
88
+ name = "crc32fast"
89
+ version = "1.5.2"
90
+ source = "registry+https://github.com/rust-lang/crates.io-index"
91
+ checksum = "01a7799fd6b852db0e61728dde9a204c423b44d689dbd432522543614b490e78"
92
+ dependencies = [
93
+ "cfg-if",
94
+ ]
95
+
96
+ [[package]]
97
+ name = "encode_unicode"
98
+ version = "1.0.0"
99
+ source = "registry+https://github.com/rust-lang/crates.io-index"
100
+ checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0"
101
+
102
+ [[package]]
103
+ name = "errno"
104
+ version = "0.3.14"
105
+ source = "registry+https://github.com/rust-lang/crates.io-index"
106
+ checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
107
+ dependencies = [
108
+ "libc",
109
+ "windows-sys",
110
+ ]
111
+
112
+ [[package]]
113
+ name = "fastrand"
114
+ version = "2.5.0"
115
+ source = "registry+https://github.com/rust-lang/crates.io-index"
116
+ checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223"
117
+
118
+ [[package]]
119
+ name = "fdeflate"
120
+ version = "0.3.7"
121
+ source = "registry+https://github.com/rust-lang/crates.io-index"
122
+ checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c"
123
+ dependencies = [
124
+ "simd-adler32",
125
+ ]
126
+
127
+ [[package]]
128
+ name = "flate2"
129
+ version = "1.1.10"
130
+ source = "registry+https://github.com/rust-lang/crates.io-index"
131
+ checksum = "6e634e2e0ebac1ee034020da1ca582e17ffe4e0f5e985823721e168928136dcb"
132
+ dependencies = [
133
+ "crc32fast",
134
+ "miniz_oxide 0.9.1",
135
+ "zlib-rs",
136
+ ]
137
+
138
+ [[package]]
139
+ name = "fnv"
140
+ version = "1.0.7"
141
+ source = "registry+https://github.com/rust-lang/crates.io-index"
142
+ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
143
+
144
+ [[package]]
145
+ name = "font-types"
146
+ version = "0.12.6"
147
+ source = "registry+https://github.com/rust-lang/crates.io-index"
148
+ checksum = "6c92d9081c7ab3bd83ef1eecdfad090f3d966e3ce74106779664114cfe1a6274"
149
+ dependencies = [
150
+ "bytemuck",
151
+ ]
152
+
153
+ [[package]]
154
+ name = "fontconfig-parser"
155
+ version = "0.5.8"
156
+ source = "registry+https://github.com/rust-lang/crates.io-index"
157
+ checksum = "bbc773e24e02d4ddd8395fd30dc147524273a83e54e0f312d986ea30de5f5646"
158
+ dependencies = [
159
+ "roxmltree",
160
+ ]
161
+
162
+ [[package]]
163
+ name = "fontdb"
164
+ version = "0.24.0"
165
+ source = "registry+https://github.com/rust-lang/crates.io-index"
166
+ checksum = "2660c5e9157bf76d2db1294e4a9feba604ef610819a3b591088d0d8392a3290f"
167
+ dependencies = [
168
+ "fontconfig-parser",
169
+ "log",
170
+ "memmap2",
171
+ "slotmap",
172
+ "tinyvec",
173
+ ]
174
+
175
+ [[package]]
176
+ name = "getrandom"
177
+ version = "0.3.4"
178
+ source = "registry+https://github.com/rust-lang/crates.io-index"
179
+ checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd"
180
+ dependencies = [
181
+ "cfg-if",
182
+ "libc",
183
+ "r-efi 5.3.0",
184
+ "wasip2",
185
+ ]
186
+
187
+ [[package]]
188
+ name = "getrandom"
189
+ version = "0.4.3"
190
+ source = "registry+https://github.com/rust-lang/crates.io-index"
191
+ checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099"
192
+ dependencies = [
193
+ "cfg-if",
194
+ "libc",
195
+ "r-efi 6.0.0",
196
+ ]
197
+
198
+ [[package]]
199
+ name = "harfrust"
200
+ version = "0.14.0"
201
+ source = "registry+https://github.com/rust-lang/crates.io-index"
202
+ checksum = "86aa776d6d32b072119e1f1650f4db843ff4382a4aaa6a2c9c4e35703cd377cb"
203
+ dependencies = [
204
+ "bitflags",
205
+ "bytemuck",
206
+ "read-fonts",
207
+ "smallvec",
208
+ ]
209
+
210
+ [[package]]
211
+ name = "heck"
212
+ version = "0.5.0"
213
+ source = "registry+https://github.com/rust-lang/crates.io-index"
214
+ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
215
+
216
+ [[package]]
217
+ name = "insta"
218
+ version = "1.49.0"
219
+ source = "registry+https://github.com/rust-lang/crates.io-index"
220
+ checksum = "b67d3d2e287e4b86c10b3f3b641033d1f89b74bdb39d05f34952e2b9a6fe21cd"
221
+ dependencies = [
222
+ "console",
223
+ "once_cell",
224
+ "similar",
225
+ "tempfile",
226
+ ]
227
+
228
+ [[package]]
229
+ name = "libc"
230
+ version = "0.2.190"
231
+ source = "registry+https://github.com/rust-lang/crates.io-index"
232
+ checksum = "ce5d3ddc6d3fa000eb1536d85e147bfe31aacaba692ed6a876f95cb7c855be78"
233
+
234
+ [[package]]
235
+ name = "linux-raw-sys"
236
+ version = "0.12.1"
237
+ source = "registry+https://github.com/rust-lang/crates.io-index"
238
+ checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53"
239
+
240
+ [[package]]
241
+ name = "log"
242
+ version = "0.4.34"
243
+ source = "registry+https://github.com/rust-lang/crates.io-index"
244
+ checksum = "f9f8bd3e56ce4dfc153cf470fffbfa98c7620958b312ca5c3a4b8d5181fd13c6"
245
+
246
+ [[package]]
247
+ name = "memmap2"
248
+ version = "0.9.11"
249
+ source = "registry+https://github.com/rust-lang/crates.io-index"
250
+ checksum = "d1219ed1b7f229ee7104d281dd01d6802fe28bb6e95d292942c4daacdeb798c0"
251
+ dependencies = [
252
+ "libc",
253
+ ]
254
+
255
+ [[package]]
256
+ name = "miniz_oxide"
257
+ version = "0.8.9"
258
+ source = "registry+https://github.com/rust-lang/crates.io-index"
259
+ checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316"
260
+ dependencies = [
261
+ "adler2",
262
+ "simd-adler32",
263
+ ]
264
+
265
+ [[package]]
266
+ name = "miniz_oxide"
267
+ version = "0.9.1"
268
+ source = "registry+https://github.com/rust-lang/crates.io-index"
269
+ checksum = "b63fbc4a50860e98e7b2aa7804ded1db5cbc3aff9193adaff57a6931bf7c4b4c"
270
+ dependencies = [
271
+ "adler2",
272
+ "simd-adler32",
273
+ ]
274
+
275
+ [[package]]
276
+ name = "num-traits"
277
+ version = "0.2.19"
278
+ source = "registry+https://github.com/rust-lang/crates.io-index"
279
+ checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
280
+ dependencies = [
281
+ "autocfg",
282
+ ]
283
+
284
+ [[package]]
285
+ name = "once_cell"
286
+ version = "1.21.4"
287
+ source = "registry+https://github.com/rust-lang/crates.io-index"
288
+ checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
289
+
290
+ [[package]]
291
+ name = "png"
292
+ version = "0.18.1"
293
+ source = "registry+https://github.com/rust-lang/crates.io-index"
294
+ checksum = "60769b8b31b2a9f263dae2776c37b1b28ae246943cf719eb6946a1db05128a61"
295
+ dependencies = [
296
+ "bitflags",
297
+ "crc32fast",
298
+ "fdeflate",
299
+ "flate2",
300
+ "miniz_oxide 0.8.9",
301
+ ]
302
+
303
+ [[package]]
304
+ name = "portable-atomic"
305
+ version = "1.15.0"
306
+ source = "registry+https://github.com/rust-lang/crates.io-index"
307
+ checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85"
308
+
309
+ [[package]]
310
+ name = "ppv-lite86"
311
+ version = "0.2.21"
312
+ source = "registry+https://github.com/rust-lang/crates.io-index"
313
+ checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9"
314
+ dependencies = [
315
+ "zerocopy",
316
+ ]
317
+
318
+ [[package]]
319
+ name = "proc-macro2"
320
+ version = "1.0.107"
321
+ source = "registry+https://github.com/rust-lang/crates.io-index"
322
+ checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
323
+ dependencies = [
324
+ "unicode-ident",
325
+ ]
326
+
327
+ [[package]]
328
+ name = "proptest"
329
+ version = "1.11.0"
330
+ source = "registry+https://github.com/rust-lang/crates.io-index"
331
+ checksum = "4b45fcc2344c680f5025fe57779faef368840d0bd1f42f216291f0dc4ace4744"
332
+ dependencies = [
333
+ "bit-set",
334
+ "bit-vec",
335
+ "bitflags",
336
+ "num-traits",
337
+ "rand",
338
+ "rand_chacha",
339
+ "rand_xorshift",
340
+ "regex-syntax",
341
+ "rusty-fork",
342
+ "tempfile",
343
+ "unarray",
344
+ ]
345
+
346
+ [[package]]
347
+ name = "pyo3"
348
+ version = "0.29.3"
349
+ source = "registry+https://github.com/rust-lang/crates.io-index"
350
+ checksum = "700d18fa267b73b9b521fd7e13580e2f446916f176cacee1ab63fcc8191f1655"
351
+ dependencies = [
352
+ "libc",
353
+ "once_cell",
354
+ "portable-atomic",
355
+ "pyo3-build-config",
356
+ "pyo3-ffi",
357
+ "pyo3-macros",
358
+ ]
359
+
360
+ [[package]]
361
+ name = "pyo3-build-config"
362
+ version = "0.29.3"
363
+ source = "registry+https://github.com/rust-lang/crates.io-index"
364
+ checksum = "7b3fc0c4d08f6bb10e71fe39dfb9e2f59c6eb6854e22ec8092f50c69a4499adb"
365
+ dependencies = [
366
+ "target-lexicon",
367
+ ]
368
+
369
+ [[package]]
370
+ name = "pyo3-ffi"
371
+ version = "0.29.3"
372
+ source = "registry+https://github.com/rust-lang/crates.io-index"
373
+ checksum = "dfc0b8e19df29aad7086cf977bb0c2a2f143e30567eb113e9cf72b62ca698330"
374
+ dependencies = [
375
+ "libc",
376
+ "pyo3-build-config",
377
+ ]
378
+
379
+ [[package]]
380
+ name = "pyo3-macros"
381
+ version = "0.29.3"
382
+ source = "registry+https://github.com/rust-lang/crates.io-index"
383
+ checksum = "6100e8a4b5eba53afaa5ed078364851a0b2499c553a44c31026b929049b49dc6"
384
+ dependencies = [
385
+ "proc-macro2",
386
+ "pyo3-macros-backend",
387
+ "quote",
388
+ "syn 2.0.119",
389
+ ]
390
+
391
+ [[package]]
392
+ name = "pyo3-macros-backend"
393
+ version = "0.29.3"
394
+ source = "registry+https://github.com/rust-lang/crates.io-index"
395
+ checksum = "6143877a16e82b5a727b7127ff4cd86858a24a28d745d72f43e6f227c7b1bdb3"
396
+ dependencies = [
397
+ "heck",
398
+ "proc-macro2",
399
+ "quote",
400
+ "syn 2.0.119",
401
+ ]
402
+
403
+ [[package]]
404
+ name = "quick-error"
405
+ version = "1.2.3"
406
+ source = "registry+https://github.com/rust-lang/crates.io-index"
407
+ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
408
+
409
+ [[package]]
410
+ name = "quote"
411
+ version = "1.0.47"
412
+ source = "registry+https://github.com/rust-lang/crates.io-index"
413
+ checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
414
+ dependencies = [
415
+ "proc-macro2",
416
+ ]
417
+
418
+ [[package]]
419
+ name = "r-efi"
420
+ version = "5.3.0"
421
+ source = "registry+https://github.com/rust-lang/crates.io-index"
422
+ checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f"
423
+
424
+ [[package]]
425
+ name = "r-efi"
426
+ version = "6.0.0"
427
+ source = "registry+https://github.com/rust-lang/crates.io-index"
428
+ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf"
429
+
430
+ [[package]]
431
+ name = "rand"
432
+ version = "0.9.5"
433
+ source = "registry+https://github.com/rust-lang/crates.io-index"
434
+ checksum = "b9ef1d0d795eb7d84685bca4f72f3649f064e6641543d3a8c415898726a57b41"
435
+ dependencies = [
436
+ "rand_chacha",
437
+ "rand_core",
438
+ ]
439
+
440
+ [[package]]
441
+ name = "rand_chacha"
442
+ version = "0.9.0"
443
+ source = "registry+https://github.com/rust-lang/crates.io-index"
444
+ checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb"
445
+ dependencies = [
446
+ "ppv-lite86",
447
+ "rand_core",
448
+ ]
449
+
450
+ [[package]]
451
+ name = "rand_core"
452
+ version = "0.9.5"
453
+ source = "registry+https://github.com/rust-lang/crates.io-index"
454
+ checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c"
455
+ dependencies = [
456
+ "getrandom 0.3.4",
457
+ ]
458
+
459
+ [[package]]
460
+ name = "rand_xorshift"
461
+ version = "0.4.0"
462
+ source = "registry+https://github.com/rust-lang/crates.io-index"
463
+ checksum = "513962919efc330f829edb2535844d1b912b0fbe2ca165d613e4e8788bb05a5a"
464
+ dependencies = [
465
+ "rand_core",
466
+ ]
467
+
468
+ [[package]]
469
+ name = "read-fonts"
470
+ version = "0.45.0"
471
+ source = "registry+https://github.com/rust-lang/crates.io-index"
472
+ checksum = "8a5b7bed3d16ab428d8fa533640ab805ff50e7ad8a4d00649de1259e70023282"
473
+ dependencies = [
474
+ "bytemuck",
475
+ "font-types",
476
+ "once_cell",
477
+ "yoke",
478
+ ]
479
+
480
+ [[package]]
481
+ name = "regex-syntax"
482
+ version = "0.8.11"
483
+ source = "registry+https://github.com/rust-lang/crates.io-index"
484
+ checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4"
485
+
486
+ [[package]]
487
+ name = "roxmltree"
488
+ version = "0.20.0"
489
+ source = "registry+https://github.com/rust-lang/crates.io-index"
490
+ checksum = "6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97"
491
+
492
+ [[package]]
493
+ name = "rustix"
494
+ version = "1.1.5"
495
+ source = "registry+https://github.com/rust-lang/crates.io-index"
496
+ checksum = "891efababe418670775f199f0d233d84843c227a0949a883ce15b37c78d6629d"
497
+ dependencies = [
498
+ "bitflags",
499
+ "errno",
500
+ "libc",
501
+ "linux-raw-sys",
502
+ "windows-sys",
503
+ ]
504
+
505
+ [[package]]
506
+ name = "rusty-fork"
507
+ version = "0.3.1"
508
+ source = "registry+https://github.com/rust-lang/crates.io-index"
509
+ checksum = "cc6bf79ff24e648f6da1f8d1f011e9cac26491b619e6b9280f2b47f1774e6ee2"
510
+ dependencies = [
511
+ "fnv",
512
+ "quick-error",
513
+ "tempfile",
514
+ "wait-timeout",
515
+ ]
516
+
517
+ [[package]]
518
+ name = "simd-adler32"
519
+ version = "0.3.10"
520
+ source = "registry+https://github.com/rust-lang/crates.io-index"
521
+ checksum = "3a219298ac11a56ea9a6d2120044824d6f01aeb034955e7af7bc16858527deea"
522
+
523
+ [[package]]
524
+ name = "similar"
525
+ version = "2.7.0"
526
+ source = "registry+https://github.com/rust-lang/crates.io-index"
527
+ checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa"
528
+
529
+ [[package]]
530
+ name = "skrifa"
531
+ version = "0.48.0"
532
+ source = "registry+https://github.com/rust-lang/crates.io-index"
533
+ checksum = "a5213b4825bac3587046330052d61bfac7bd3bd0d203c758d7c2ef726fcea034"
534
+ dependencies = [
535
+ "bytemuck",
536
+ "read-fonts",
537
+ ]
538
+
539
+ [[package]]
540
+ name = "slotmap"
541
+ version = "1.1.1"
542
+ source = "registry+https://github.com/rust-lang/crates.io-index"
543
+ checksum = "bdd58c3c93c3d278ca835519292445cb4b0d4dc59ccfdf7ceadaab3f8aeb4038"
544
+ dependencies = [
545
+ "version_check",
546
+ ]
547
+
548
+ [[package]]
549
+ name = "smallvec"
550
+ version = "1.16.3"
551
+ source = "registry+https://github.com/rust-lang/crates.io-index"
552
+ checksum = "5b3dc8af474f516a851ff4bd12db780f948b9250ad37211e4eec0bccea54e01b"
553
+
554
+ [[package]]
555
+ name = "stable_deref_trait"
556
+ version = "1.2.1"
557
+ source = "registry+https://github.com/rust-lang/crates.io-index"
558
+ checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596"
559
+
560
+ [[package]]
561
+ name = "strict-num"
562
+ version = "0.1.1"
563
+ source = "registry+https://github.com/rust-lang/crates.io-index"
564
+ checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731"
565
+
566
+ [[package]]
567
+ name = "syn"
568
+ version = "2.0.119"
569
+ source = "registry+https://github.com/rust-lang/crates.io-index"
570
+ checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"
571
+ dependencies = [
572
+ "proc-macro2",
573
+ "quote",
574
+ "unicode-ident",
575
+ ]
576
+
577
+ [[package]]
578
+ name = "syn"
579
+ version = "3.0.6"
580
+ source = "registry+https://github.com/rust-lang/crates.io-index"
581
+ checksum = "8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee"
582
+ dependencies = [
583
+ "proc-macro2",
584
+ "quote",
585
+ "unicode-ident",
586
+ ]
587
+
588
+ [[package]]
589
+ name = "synstructure"
590
+ version = "0.14.0"
591
+ source = "registry+https://github.com/rust-lang/crates.io-index"
592
+ checksum = "901704edd0dfe137f1987838ee4f259e4e063c31371bdb423f7ae38ec6f77f02"
593
+ dependencies = [
594
+ "proc-macro2",
595
+ "quote",
596
+ "syn 3.0.6",
597
+ ]
598
+
599
+ [[package]]
600
+ name = "target-lexicon"
601
+ version = "0.13.5"
602
+ source = "registry+https://github.com/rust-lang/crates.io-index"
603
+ checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
604
+
605
+ [[package]]
606
+ name = "tempfile"
607
+ version = "3.27.0"
608
+ source = "registry+https://github.com/rust-lang/crates.io-index"
609
+ checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd"
610
+ dependencies = [
611
+ "fastrand",
612
+ "getrandom 0.4.3",
613
+ "once_cell",
614
+ "rustix",
615
+ "windows-sys",
616
+ ]
617
+
618
+ [[package]]
619
+ name = "thiserror"
620
+ version = "2.0.21"
621
+ source = "registry+https://github.com/rust-lang/crates.io-index"
622
+ checksum = "09e52cb86a36cede5cb101bf8908837b3e4c6e5e59fe7fd85c23fb56200d189e"
623
+ dependencies = [
624
+ "thiserror-impl",
625
+ ]
626
+
627
+ [[package]]
628
+ name = "thiserror-impl"
629
+ version = "2.0.21"
630
+ source = "registry+https://github.com/rust-lang/crates.io-index"
631
+ checksum = "fe5197923287db20a58125f0bc85c062f7f2c892de97b18c356f9efb14b28524"
632
+ dependencies = [
633
+ "proc-macro2",
634
+ "quote",
635
+ "syn 3.0.6",
636
+ ]
637
+
638
+ [[package]]
639
+ name = "tiny-skia"
640
+ version = "0.12.0"
641
+ source = "registry+https://github.com/rust-lang/crates.io-index"
642
+ checksum = "47ffee5eaaf5527f630fb0e356b90ebdec84d5d18d937c5e440350f88c5a91ea"
643
+ dependencies = [
644
+ "arrayref",
645
+ "arrayvec",
646
+ "bytemuck",
647
+ "cfg-if",
648
+ "log",
649
+ "tiny-skia-path",
650
+ ]
651
+
652
+ [[package]]
653
+ name = "tiny-skia-path"
654
+ version = "0.12.0"
655
+ source = "registry+https://github.com/rust-lang/crates.io-index"
656
+ checksum = "edca365c3faccca67d06593c5980fa6c57687de727a03131735bb85f01fdeeb9"
657
+ dependencies = [
658
+ "arrayref",
659
+ "bytemuck",
660
+ "strict-num",
661
+ ]
662
+
663
+ [[package]]
664
+ name = "tinyvec"
665
+ version = "1.13.3"
666
+ source = "registry+https://github.com/rust-lang/crates.io-index"
667
+ checksum = "fd3ca314f692efd6c868f8408f53fe444634a845f96c028b97d35f6a1f79f0ee"
668
+
669
+ [[package]]
670
+ name = "umber-core"
671
+ version = "0.0.1"
672
+ dependencies = [
673
+ "fontdb",
674
+ "harfrust",
675
+ "insta",
676
+ "png",
677
+ "proptest",
678
+ "read-fonts",
679
+ "roxmltree",
680
+ "skrifa",
681
+ "thiserror",
682
+ "tiny-skia",
683
+ ]
684
+
685
+ [[package]]
686
+ name = "umber-py"
687
+ version = "0.0.1"
688
+ dependencies = [
689
+ "pyo3",
690
+ "umber-core",
691
+ ]
692
+
693
+ [[package]]
694
+ name = "unarray"
695
+ version = "0.1.4"
696
+ source = "registry+https://github.com/rust-lang/crates.io-index"
697
+ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94"
698
+
699
+ [[package]]
700
+ name = "unicode-ident"
701
+ version = "1.0.26"
702
+ source = "registry+https://github.com/rust-lang/crates.io-index"
703
+ checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954"
704
+
705
+ [[package]]
706
+ name = "version_check"
707
+ version = "0.9.5"
708
+ source = "registry+https://github.com/rust-lang/crates.io-index"
709
+ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
710
+
711
+ [[package]]
712
+ name = "wait-timeout"
713
+ version = "0.2.1"
714
+ source = "registry+https://github.com/rust-lang/crates.io-index"
715
+ checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11"
716
+ dependencies = [
717
+ "libc",
718
+ ]
719
+
720
+ [[package]]
721
+ name = "wasip2"
722
+ version = "1.0.1+wasi-0.2.4"
723
+ source = "registry+https://github.com/rust-lang/crates.io-index"
724
+ checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7"
725
+ dependencies = [
726
+ "wit-bindgen",
727
+ ]
728
+
729
+ [[package]]
730
+ name = "windows-link"
731
+ version = "0.2.1"
732
+ source = "registry+https://github.com/rust-lang/crates.io-index"
733
+ checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
734
+
735
+ [[package]]
736
+ name = "windows-sys"
737
+ version = "0.61.2"
738
+ source = "registry+https://github.com/rust-lang/crates.io-index"
739
+ checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"
740
+ dependencies = [
741
+ "windows-link",
742
+ ]
743
+
744
+ [[package]]
745
+ name = "wit-bindgen"
746
+ version = "0.46.0"
747
+ source = "registry+https://github.com/rust-lang/crates.io-index"
748
+ checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59"
749
+
750
+ [[package]]
751
+ name = "yoke"
752
+ version = "0.8.3"
753
+ source = "registry+https://github.com/rust-lang/crates.io-index"
754
+ checksum = "709fe23a0424b6a435d82152b1bd3fdfb0833487d5fa90d05d42762a9891fef5"
755
+ dependencies = [
756
+ "stable_deref_trait",
757
+ "yoke-derive",
758
+ "zerofrom",
759
+ ]
760
+
761
+ [[package]]
762
+ name = "yoke-derive"
763
+ version = "0.8.4"
764
+ source = "registry+https://github.com/rust-lang/crates.io-index"
765
+ checksum = "ec8ebde2db3681e8c9980cc27822030e68752690ddfa9473e739aeb4dbde6d71"
766
+ dependencies = [
767
+ "proc-macro2",
768
+ "quote",
769
+ "syn 3.0.6",
770
+ "synstructure",
771
+ ]
772
+
773
+ [[package]]
774
+ name = "zerocopy"
775
+ version = "0.8.62"
776
+ source = "registry+https://github.com/rust-lang/crates.io-index"
777
+ checksum = "86502bf56ac7c77571a32e2647bb2a15894565e981fb2a48d7bde2d91c965a9d"
778
+ dependencies = [
779
+ "zerocopy-derive",
780
+ ]
781
+
782
+ [[package]]
783
+ name = "zerocopy-derive"
784
+ version = "0.8.62"
785
+ source = "registry+https://github.com/rust-lang/crates.io-index"
786
+ checksum = "5457206954b06561e2608c7e19cf58b1926586d999c246eebe4502f7e2039d1a"
787
+ dependencies = [
788
+ "proc-macro2",
789
+ "quote",
790
+ "syn 2.0.119",
791
+ ]
792
+
793
+ [[package]]
794
+ name = "zerofrom"
795
+ version = "0.1.8"
796
+ source = "registry+https://github.com/rust-lang/crates.io-index"
797
+ checksum = "0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272"
798
+ dependencies = [
799
+ "zerofrom-derive",
800
+ ]
801
+
802
+ [[package]]
803
+ name = "zerofrom-derive"
804
+ version = "0.1.8"
805
+ source = "registry+https://github.com/rust-lang/crates.io-index"
806
+ checksum = "f75b4683f6c7f45248d4d64056a24298c6281e0993356d7d1b4a1a962ef10d4a"
807
+ dependencies = [
808
+ "proc-macro2",
809
+ "quote",
810
+ "syn 3.0.6",
811
+ "synstructure",
812
+ ]
813
+
814
+ [[package]]
815
+ name = "zlib-rs"
816
+ version = "0.6.8"
817
+ source = "registry+https://github.com/rust-lang/crates.io-index"
818
+ checksum = "b268e58e7c693d7c271f93ffc4ba3b380412554231c85bf61ca7af91042a4112"