phimaker 0.2.2__tar.gz → 0.3.0__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 (33) hide show
  1. {phimaker-0.2.2 → phimaker-0.3.0}/Cargo.lock +95 -160
  2. phimaker-0.3.0/Cargo.toml +24 -0
  3. {phimaker-0.2.2 → phimaker-0.3.0}/PKG-INFO +3 -3
  4. {phimaker-0.2.2 → phimaker-0.3.0}/pyproject.toml +3 -3
  5. {phimaker-0.2.2 → phimaker-0.3.0}/src/builders.rs +12 -12
  6. {phimaker-0.2.2 → phimaker-0.3.0}/src/cylinder.rs +7 -4
  7. {phimaker-0.2.2 → phimaker-0.3.0}/src/diagrams.rs +64 -54
  8. {phimaker-0.2.2 → phimaker-0.3.0}/src/ensemble.rs +82 -59
  9. {phimaker-0.2.2 → phimaker-0.3.0}/src/indexing.rs +4 -4
  10. {phimaker-0.2.2 → phimaker-0.3.0}/src/lib.rs +41 -42
  11. {phimaker-0.2.2 → phimaker-0.3.0}/src/overlap.rs +5 -6
  12. {phimaker-0.2.2 → phimaker-0.3.0}/src/utils.rs +9 -9
  13. phimaker-0.2.2/Cargo.toml +0 -24
  14. {phimaker-0.2.2 → phimaker-0.3.0}/.cargo/config.toml +0 -0
  15. {phimaker-0.2.2 → phimaker-0.3.0}/.github/workflows/python.yml +0 -0
  16. {phimaker-0.2.2 → phimaker-0.3.0}/.gitignore +0 -0
  17. {phimaker-0.2.2 → phimaker-0.3.0}/.gitmodules +0 -0
  18. {phimaker-0.2.2 → phimaker-0.3.0}/README.md +0 -0
  19. {phimaker-0.2.2 → phimaker-0.3.0}/examples/big_test.py +0 -0
  20. {phimaker-0.2.2 → phimaker-0.3.0}/examples/cylinder_test.py +0 -0
  21. {phimaker-0.2.2 → phimaker-0.3.0}/examples/test.py +0 -0
  22. {phimaker-0.2.2 → phimaker-0.3.0}/examples/test_annotated.mat +0 -0
  23. {phimaker-0.2.2 → phimaker-0.3.0}/examples/timing_test.py +0 -0
  24. {phimaker-0.2.2 → phimaker-0.3.0}/examples/torus_test.py +0 -0
  25. {phimaker-0.2.2 → phimaker-0.3.0}/examples/washboard_test.py +0 -0
  26. {phimaker-0.2.2 → phimaker-0.3.0}/fig/5pack.png +0 -0
  27. {phimaker-0.2.2 → phimaker-0.3.0}/fig/5pack_torus.png +0 -0
  28. {phimaker-0.2.2 → phimaker-0.3.0}/fig/pointcloud.png +0 -0
  29. {phimaker-0.2.2 → phimaker-0.3.0}/fig/pointcloud_torus.png +0 -0
  30. {phimaker-0.2.2 → phimaker-0.3.0}/pylock.toml +0 -0
  31. {phimaker-0.2.2 → phimaker-0.3.0}/python/phimaker/__init__.py +0 -0
  32. {phimaker-0.2.2 → phimaker-0.3.0}/python/phimaker/_washboard_interface.py +0 -0
  33. {phimaker-0.2.2 → phimaker-0.3.0}/uv.lock +0 -0
@@ -2,18 +2,6 @@
2
2
  # It is not intended for manual editing.
3
3
  version = 4
4
4
 
5
- [[package]]
6
- name = "ahash"
7
- version = "0.8.11"
8
- source = "registry+https://github.com/rust-lang/crates.io-index"
9
- checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
10
- dependencies = [
11
- "cfg-if",
12
- "once_cell",
13
- "version_check",
14
- "zerocopy",
15
- ]
16
-
17
5
  [[package]]
18
6
  name = "arc-swap"
19
7
  version = "1.7.1"
@@ -43,18 +31,18 @@ dependencies = [
43
31
 
44
32
  [[package]]
45
33
  name = "bit-set"
46
- version = "0.5.3"
34
+ version = "0.8.0"
47
35
  source = "registry+https://github.com/rust-lang/crates.io-index"
48
- checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
36
+ checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3"
49
37
  dependencies = [
50
38
  "bit-vec",
51
39
  ]
52
40
 
53
41
  [[package]]
54
42
  name = "bit-vec"
55
- version = "0.6.3"
43
+ version = "0.8.0"
56
44
  source = "registry+https://github.com/rust-lang/crates.io-index"
57
- checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
45
+ checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7"
58
46
 
59
47
  [[package]]
60
48
  name = "bitflags"
@@ -138,9 +126,9 @@ checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
138
126
 
139
127
  [[package]]
140
128
  name = "errno"
141
- version = "0.3.9"
129
+ version = "0.3.13"
142
130
  source = "registry+https://github.com/rust-lang/crates.io-index"
143
- checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
131
+ checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad"
144
132
  dependencies = [
145
133
  "libc",
146
134
  "windows-sys",
@@ -148,31 +136,39 @@ dependencies = [
148
136
 
149
137
  [[package]]
150
138
  name = "fastrand"
151
- version = "2.1.0"
139
+ version = "2.3.0"
152
140
  source = "registry+https://github.com/rust-lang/crates.io-index"
153
- checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
141
+ checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
154
142
 
155
143
  [[package]]
156
- name = "hashbrown"
157
- version = "0.13.2"
144
+ name = "getrandom"
145
+ version = "0.3.3"
158
146
  source = "registry+https://github.com/rust-lang/crates.io-index"
159
- checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
147
+ checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4"
160
148
  dependencies = [
161
- "ahash",
162
- "rayon",
149
+ "cfg-if",
150
+ "libc",
151
+ "r-efi",
152
+ "wasi",
163
153
  ]
164
154
 
155
+ [[package]]
156
+ name = "heck"
157
+ version = "0.5.0"
158
+ source = "registry+https://github.com/rust-lang/crates.io-index"
159
+ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
160
+
165
161
  [[package]]
166
162
  name = "indoc"
167
- version = "1.0.9"
163
+ version = "2.0.6"
168
164
  source = "registry+https://github.com/rust-lang/crates.io-index"
169
- checksum = "bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306"
165
+ checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd"
170
166
 
171
167
  [[package]]
172
168
  name = "itertools"
173
- version = "0.10.5"
169
+ version = "0.14.0"
174
170
  source = "registry+https://github.com/rust-lang/crates.io-index"
175
- checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
171
+ checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285"
176
172
  dependencies = [
177
173
  "either",
178
174
  ]
@@ -185,41 +181,29 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
185
181
 
186
182
  [[package]]
187
183
  name = "libc"
188
- version = "0.2.155"
184
+ version = "0.2.174"
189
185
  source = "registry+https://github.com/rust-lang/crates.io-index"
190
- checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
186
+ checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776"
191
187
 
192
188
  [[package]]
193
189
  name = "linux-raw-sys"
194
- version = "0.4.14"
190
+ version = "0.9.4"
195
191
  source = "registry+https://github.com/rust-lang/crates.io-index"
196
- checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
197
-
198
- [[package]]
199
- name = "lock_api"
200
- version = "0.4.12"
201
- source = "registry+https://github.com/rust-lang/crates.io-index"
202
- checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
203
- dependencies = [
204
- "autocfg",
205
- "scopeguard",
206
- ]
192
+ checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12"
207
193
 
208
194
  [[package]]
209
195
  name = "log"
210
- version = "0.4.22"
196
+ version = "0.4.27"
211
197
  source = "registry+https://github.com/rust-lang/crates.io-index"
212
- checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
198
+ checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94"
213
199
 
214
200
  [[package]]
215
201
  name = "lophat"
216
- version = "0.9.2"
202
+ version = "0.11.0"
217
203
  source = "registry+https://github.com/rust-lang/crates.io-index"
218
- checksum = "dfdd2cba94e95876018d4a9761274f57821e158ac8b23685e1d9279618ccf2a6"
204
+ checksum = "187085c3bbdd12ed9d3c52045bcb615fe8b8e1b3214ef6454237a2fde5528699"
219
205
  dependencies = [
220
206
  "bit-set",
221
- "crossbeam",
222
- "hashbrown",
223
207
  "pinboard",
224
208
  "pyo3",
225
209
  "rayon",
@@ -234,9 +218,9 @@ checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
234
218
 
235
219
  [[package]]
236
220
  name = "memoffset"
237
- version = "0.8.0"
221
+ version = "0.9.1"
238
222
  source = "registry+https://github.com/rust-lang/crates.io-index"
239
- checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1"
223
+ checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
240
224
  dependencies = [
241
225
  "autocfg",
242
226
  ]
@@ -247,32 +231,9 @@ version = "1.19.0"
247
231
  source = "registry+https://github.com/rust-lang/crates.io-index"
248
232
  checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
249
233
 
250
- [[package]]
251
- name = "parking_lot"
252
- version = "0.12.3"
253
- source = "registry+https://github.com/rust-lang/crates.io-index"
254
- checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"
255
- dependencies = [
256
- "lock_api",
257
- "parking_lot_core",
258
- ]
259
-
260
- [[package]]
261
- name = "parking_lot_core"
262
- version = "0.9.10"
263
- source = "registry+https://github.com/rust-lang/crates.io-index"
264
- checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
265
- dependencies = [
266
- "cfg-if",
267
- "libc",
268
- "redox_syscall",
269
- "smallvec",
270
- "windows-targets",
271
- ]
272
-
273
234
  [[package]]
274
235
  name = "phimaker"
275
- version = "0.2.2"
236
+ version = "0.3.0"
276
237
  dependencies = [
277
238
  "atomic_refcell",
278
239
  "bincode",
@@ -298,6 +259,12 @@ dependencies = [
298
259
  "crossbeam-epoch",
299
260
  ]
300
261
 
262
+ [[package]]
263
+ name = "portable-atomic"
264
+ version = "1.11.1"
265
+ source = "registry+https://github.com/rust-lang/crates.io-index"
266
+ checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483"
267
+
301
268
  [[package]]
302
269
  name = "proc-macro2"
303
270
  version = "1.0.86"
@@ -309,16 +276,15 @@ dependencies = [
309
276
 
310
277
  [[package]]
311
278
  name = "pyo3"
312
- version = "0.18.3"
279
+ version = "0.25.1"
313
280
  source = "registry+https://github.com/rust-lang/crates.io-index"
314
- checksum = "e3b1ac5b3731ba34fdaa9785f8d74d17448cd18f30cf19e0c7e7b1fdb5272109"
281
+ checksum = "8970a78afe0628a3e3430376fc5fd76b6b45c4d43360ffd6cdd40bdde72b682a"
315
282
  dependencies = [
316
- "cfg-if",
317
- "hashbrown",
318
283
  "indoc",
319
284
  "libc",
320
285
  "memoffset",
321
- "parking_lot",
286
+ "once_cell",
287
+ "portable-atomic",
322
288
  "pyo3-build-config",
323
289
  "pyo3-ffi",
324
290
  "pyo3-macros",
@@ -327,9 +293,9 @@ dependencies = [
327
293
 
328
294
  [[package]]
329
295
  name = "pyo3-build-config"
330
- version = "0.18.3"
296
+ version = "0.25.1"
331
297
  source = "registry+https://github.com/rust-lang/crates.io-index"
332
- checksum = "9cb946f5ac61bb61a5014924910d936ebd2b23b705f7a4a3c40b05c720b079a3"
298
+ checksum = "458eb0c55e7ece017adeba38f2248ff3ac615e53660d7c71a238d7d2a01c7598"
333
299
  dependencies = [
334
300
  "once_cell",
335
301
  "target-lexicon",
@@ -337,9 +303,9 @@ dependencies = [
337
303
 
338
304
  [[package]]
339
305
  name = "pyo3-ffi"
340
- version = "0.18.3"
306
+ version = "0.25.1"
341
307
  source = "registry+https://github.com/rust-lang/crates.io-index"
342
- checksum = "fd4d7c5337821916ea2a1d21d1092e8443cf34879e53a0ac653fbb98f44ff65c"
308
+ checksum = "7114fe5457c61b276ab77c5055f206295b812608083644a5c5b2640c3102565c"
343
309
  dependencies = [
344
310
  "libc",
345
311
  "pyo3-build-config",
@@ -347,9 +313,9 @@ dependencies = [
347
313
 
348
314
  [[package]]
349
315
  name = "pyo3-log"
350
- version = "0.8.4"
316
+ version = "0.12.4"
351
317
  source = "registry+https://github.com/rust-lang/crates.io-index"
352
- checksum = "c09c2b349b6538d8a73d436ca606dab6ce0aaab4dad9e6b7bdd57a4f556c3bc3"
318
+ checksum = "45192e5e4a4d2505587e27806c7b710c231c40c56f3bfc19535d0bb25df52264"
353
319
  dependencies = [
354
320
  "arc-swap",
355
321
  "log",
@@ -358,25 +324,27 @@ dependencies = [
358
324
 
359
325
  [[package]]
360
326
  name = "pyo3-macros"
361
- version = "0.18.3"
327
+ version = "0.25.1"
362
328
  source = "registry+https://github.com/rust-lang/crates.io-index"
363
- checksum = "a9d39c55dab3fc5a4b25bbd1ac10a2da452c4aca13bb450f22818a002e29648d"
329
+ checksum = "a8725c0a622b374d6cb051d11a0983786448f7785336139c3c94f5aa6bef7e50"
364
330
  dependencies = [
365
331
  "proc-macro2",
366
332
  "pyo3-macros-backend",
367
333
  "quote",
368
- "syn 1.0.109",
334
+ "syn",
369
335
  ]
370
336
 
371
337
  [[package]]
372
338
  name = "pyo3-macros-backend"
373
- version = "0.18.3"
339
+ version = "0.25.1"
374
340
  source = "registry+https://github.com/rust-lang/crates.io-index"
375
- checksum = "97daff08a4c48320587b5224cc98d609e3c27b6d437315bd40b605c98eeb5918"
341
+ checksum = "4109984c22491085343c05b0dbc54ddc405c3cf7b4374fc533f5c3313a572ccc"
376
342
  dependencies = [
343
+ "heck",
377
344
  "proc-macro2",
345
+ "pyo3-build-config",
378
346
  "quote",
379
- "syn 1.0.109",
347
+ "syn",
380
348
  ]
381
349
 
382
350
  [[package]]
@@ -388,6 +356,12 @@ dependencies = [
388
356
  "proc-macro2",
389
357
  ]
390
358
 
359
+ [[package]]
360
+ name = "r-efi"
361
+ version = "5.3.0"
362
+ source = "registry+https://github.com/rust-lang/crates.io-index"
363
+ checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f"
364
+
391
365
  [[package]]
392
366
  name = "rayon"
393
367
  version = "1.10.0"
@@ -408,20 +382,11 @@ dependencies = [
408
382
  "crossbeam-utils",
409
383
  ]
410
384
 
411
- [[package]]
412
- name = "redox_syscall"
413
- version = "0.5.3"
414
- source = "registry+https://github.com/rust-lang/crates.io-index"
415
- checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4"
416
- dependencies = [
417
- "bitflags",
418
- ]
419
-
420
385
  [[package]]
421
386
  name = "rustix"
422
- version = "0.38.34"
387
+ version = "1.0.7"
423
388
  source = "registry+https://github.com/rust-lang/crates.io-index"
424
- checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
389
+ checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266"
425
390
  dependencies = [
426
391
  "bitflags",
427
392
  "errno",
@@ -436,37 +401,31 @@ version = "1.0.18"
436
401
  source = "registry+https://github.com/rust-lang/crates.io-index"
437
402
  checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
438
403
 
439
- [[package]]
440
- name = "scopeguard"
441
- version = "1.2.0"
442
- source = "registry+https://github.com/rust-lang/crates.io-index"
443
- checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
444
-
445
404
  [[package]]
446
405
  name = "serde"
447
- version = "1.0.204"
406
+ version = "1.0.219"
448
407
  source = "registry+https://github.com/rust-lang/crates.io-index"
449
- checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12"
408
+ checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6"
450
409
  dependencies = [
451
410
  "serde_derive",
452
411
  ]
453
412
 
454
413
  [[package]]
455
414
  name = "serde_derive"
456
- version = "1.0.204"
415
+ version = "1.0.219"
457
416
  source = "registry+https://github.com/rust-lang/crates.io-index"
458
- checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222"
417
+ checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00"
459
418
  dependencies = [
460
419
  "proc-macro2",
461
420
  "quote",
462
- "syn 2.0.72",
421
+ "syn",
463
422
  ]
464
423
 
465
424
  [[package]]
466
425
  name = "serde_json"
467
- version = "1.0.121"
426
+ version = "1.0.140"
468
427
  source = "registry+https://github.com/rust-lang/crates.io-index"
469
- checksum = "4ab380d7d9f22ef3f21ad3e6c1ebe8e4fc7a2000ccba2e4d71fc96f15b2cb609"
428
+ checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373"
470
429
  dependencies = [
471
430
  "itoa",
472
431
  "memchr",
@@ -474,28 +433,11 @@ dependencies = [
474
433
  "serde",
475
434
  ]
476
435
 
477
- [[package]]
478
- name = "smallvec"
479
- version = "1.13.2"
480
- source = "registry+https://github.com/rust-lang/crates.io-index"
481
- checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
482
-
483
- [[package]]
484
- name = "syn"
485
- version = "1.0.109"
486
- source = "registry+https://github.com/rust-lang/crates.io-index"
487
- checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
488
- dependencies = [
489
- "proc-macro2",
490
- "quote",
491
- "unicode-ident",
492
- ]
493
-
494
436
  [[package]]
495
437
  name = "syn"
496
- version = "2.0.72"
438
+ version = "2.0.87"
497
439
  source = "registry+https://github.com/rust-lang/crates.io-index"
498
- checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af"
440
+ checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d"
499
441
  dependencies = [
500
442
  "proc-macro2",
501
443
  "quote",
@@ -504,18 +446,19 @@ dependencies = [
504
446
 
505
447
  [[package]]
506
448
  name = "target-lexicon"
507
- version = "0.12.15"
449
+ version = "0.13.2"
508
450
  source = "registry+https://github.com/rust-lang/crates.io-index"
509
- checksum = "4873307b7c257eddcb50c9bedf158eb669578359fb28428bef438fec8e6ba7c2"
451
+ checksum = "e502f78cdbb8ba4718f566c418c52bc729126ffd16baee5baa718cf25dd5a69a"
510
452
 
511
453
  [[package]]
512
454
  name = "tempfile"
513
- version = "3.10.1"
455
+ version = "3.20.0"
514
456
  source = "registry+https://github.com/rust-lang/crates.io-index"
515
- checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
457
+ checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1"
516
458
  dependencies = [
517
- "cfg-if",
518
459
  "fastrand",
460
+ "getrandom",
461
+ "once_cell",
519
462
  "rustix",
520
463
  "windows-sys",
521
464
  ]
@@ -528,15 +471,18 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
528
471
 
529
472
  [[package]]
530
473
  name = "unindent"
531
- version = "0.1.11"
474
+ version = "0.2.4"
532
475
  source = "registry+https://github.com/rust-lang/crates.io-index"
533
- checksum = "e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c"
476
+ checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3"
534
477
 
535
478
  [[package]]
536
- name = "version_check"
537
- version = "0.9.5"
479
+ name = "wasi"
480
+ version = "0.14.2+wasi-0.2.4"
538
481
  source = "registry+https://github.com/rust-lang/crates.io-index"
539
- checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
482
+ checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3"
483
+ dependencies = [
484
+ "wit-bindgen-rt",
485
+ ]
540
486
 
541
487
  [[package]]
542
488
  name = "windows-sys"
@@ -612,21 +558,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
612
558
  checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
613
559
 
614
560
  [[package]]
615
- name = "zerocopy"
616
- version = "0.7.35"
617
- source = "registry+https://github.com/rust-lang/crates.io-index"
618
- checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0"
619
- dependencies = [
620
- "zerocopy-derive",
621
- ]
622
-
623
- [[package]]
624
- name = "zerocopy-derive"
625
- version = "0.7.35"
561
+ name = "wit-bindgen-rt"
562
+ version = "0.39.0"
626
563
  source = "registry+https://github.com/rust-lang/crates.io-index"
627
- checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
564
+ checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1"
628
565
  dependencies = [
629
- "proc-macro2",
630
- "quote",
631
- "syn 2.0.72",
566
+ "bitflags",
632
567
  ]
@@ -0,0 +1,24 @@
1
+ [package]
2
+ name = "phimaker"
3
+ version = "0.3.0"
4
+ edition = "2021"
5
+
6
+ # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
7
+ [lib]
8
+ name = "phimaker"
9
+ crate-type = ["cdylib"]
10
+
11
+ [dependencies]
12
+ atomic_refcell = "0.1.13"
13
+ bincode = "1.3.3"
14
+ crossbeam = "0.8.4"
15
+ disjoint-sets = "0.4.2"
16
+ itertools = "0.14.0" # check
17
+ log = "0.4.27"
18
+ lophat = "0.11.0"
19
+ pyo3 = { version = "0.25.1", features = ["extension-module"] }
20
+ pyo3-log = "0.12.4"
21
+ rayon = "1.10.0"
22
+ serde = "1.0.219"
23
+ serde_json = "1.0.140"
24
+ tempfile = "3.20.0"
@@ -1,10 +1,10 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.1
2
2
  Name: phimaker
3
- Version: 0.2.2
3
+ Version: 0.3.0
4
4
  Classifier: Programming Language :: Rust
5
5
  Classifier: Programming Language :: Python :: Implementation :: CPython
6
6
  Classifier: Programming Language :: Python :: Implementation :: PyPy
7
- Requires-Python: >=3.7
7
+ Requires-Python: >=3.10
8
8
  Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
9
9
 
10
10
  <div align="center">
@@ -1,11 +1,11 @@
1
1
  [build-system]
2
- requires = ["maturin>=1.0,<2.0"]
2
+ requires = ["maturin~=1.0"]
3
3
  build-backend = "maturin"
4
4
 
5
5
  [project]
6
6
  name = "phimaker"
7
- requires-python = ">=3.7"
8
- version = "0.2.2"
7
+ requires-python = ">=3.10"
8
+ version = "0.3.0"
9
9
  classifiers = [
10
10
  "Programming Language :: Rust",
11
11
  "Programming Language :: Python :: Implementation :: CPython",
@@ -1,13 +1,13 @@
1
1
  use lophat::{
2
- algorithms::RVDecomposition,
2
+ algorithms::Decomposition,
3
3
  columns::{Column, VecColumn},
4
4
  };
5
5
 
6
6
  use crate::indexing::{IndexMapping, ReordorableColumn, VectorMapping};
7
7
 
8
8
  pub fn extract_columns<'a>(
9
- matrix: &'a Vec<VecColumn>,
10
- extract: &'a Vec<bool>,
9
+ matrix: &'a [VecColumn],
10
+ extract: &'a [bool],
11
11
  ) -> impl Iterator<Item = VecColumn> + 'a {
12
12
  matrix
13
13
  .iter()
@@ -18,8 +18,8 @@ pub fn extract_columns<'a>(
18
18
  }
19
19
 
20
20
  pub fn build_dg<'a>(
21
- df: &'a Vec<VecColumn>,
22
- g_elements: &'a Vec<bool>,
21
+ df: &'a [VecColumn],
22
+ g_elements: &'a [bool],
23
23
  l_first_mapping: &'a VectorMapping,
24
24
  ) -> impl Iterator<Item = VecColumn> + 'a {
25
25
  extract_columns(df, g_elements).map(|mut col| {
@@ -29,7 +29,7 @@ pub fn build_dg<'a>(
29
29
  }
30
30
 
31
31
  pub fn build_dim<'a>(
32
- df: &'a Vec<VecColumn>,
32
+ df: &'a [VecColumn],
33
33
  mapping: &'a impl IndexMapping,
34
34
  ) -> impl Iterator<Item = VecColumn> + 'a {
35
35
  df.iter().cloned().map(|mut col| {
@@ -43,8 +43,8 @@ pub fn build_dim<'a>(
43
43
  // This makes it easier to map the boundary
44
44
  // Also inherits assumption from build_rel_mapping
45
45
  pub fn build_drel<'a>(
46
- df: &'a Vec<VecColumn>,
47
- g_elements: &'a Vec<bool>,
46
+ df: &'a [VecColumn],
47
+ g_elements: &'a [bool],
48
48
  rel_mapping: &'a VectorMapping,
49
49
  l_index: usize,
50
50
  ) -> impl Iterator<Item = VecColumn> + 'a {
@@ -62,7 +62,7 @@ pub fn build_drel<'a>(
62
62
  })
63
63
  }
64
64
 
65
- pub fn build_dker<'a, Algo: RVDecomposition<VecColumn>>(
65
+ pub fn build_dker<'a, Algo: Decomposition<VecColumn>>(
66
66
  dim_decomposition: &'a Algo,
67
67
  mapping: &'a impl IndexMapping,
68
68
  ) -> impl Iterator<Item = VecColumn> + 'a {
@@ -86,10 +86,10 @@ pub fn build_dker<'a, Algo: RVDecomposition<VecColumn>>(
86
86
  })
87
87
  }
88
88
 
89
- pub fn build_dcok<'a, Algo: RVDecomposition<VecColumn>>(
90
- df: &'a Vec<VecColumn>,
89
+ pub fn build_dcok<'a, Algo: Decomposition<VecColumn>>(
90
+ df: &'a [VecColumn],
91
91
  dg_decomposition: &'a Algo,
92
- g_elements: &'a Vec<bool>,
92
+ g_elements: &'a [bool],
93
93
  mapping: &'a impl IndexMapping,
94
94
  ) -> impl Iterator<Item = VecColumn> + 'a {
95
95
  (0..df.len()).map(|col_idx| {
@@ -1,6 +1,6 @@
1
+ use log::debug;
1
2
  use lophat::columns::{Column, VecColumn};
2
3
  use pyo3::prelude::*;
3
- use log::debug;
4
4
 
5
5
  use std::cmp::Ordering;
6
6
 
@@ -182,7 +182,10 @@ pub fn build_cylinder(
182
182
  codomain: codomain_idxs,
183
183
  domain_shift: domain_shift_idxs,
184
184
  };
185
- debug!("Built mapping cylinder with {} simplices.", cylinder_matrix.len());
185
+ debug!(
186
+ "Built mapping cylinder with {} simplices.",
187
+ cylinder_matrix.len()
188
+ );
186
189
  (cylinder_matrix, metadata)
187
190
  }
188
191
 
@@ -247,13 +250,13 @@ mod tests {
247
250
  .collect();
248
251
  let (cyl_matrix, metadata) = build_cylinder(domain_matrix, codomain_matrix, map);
249
252
  for (idx, (col, t)) in cyl_matrix.iter().zip(metadata.times.iter()).enumerate() {
250
- println!("{}:{} -> {:?}", idx, t, col);
253
+ println!("{idx}:{t} -> {col:?}");
251
254
  }
252
255
  let ensemble =
253
256
  all_decompositions::<LockFreeAlgorithm<VecColumn>>(cyl_matrix, 0).all_diagrams();
254
257
  let pairings: Vec<_> = ensemble.ker.paired.iter().collect();
255
258
  for pairing in &pairings {
256
- println!("{:?}", pairing);
259
+ println!("{pairing:?}");
257
260
  }
258
261
  assert_eq!(pairings.len(), 1);
259
262
  let first_pairing = pairings[0];