trainingsample 0.3.0__tar.gz → 0.3.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 (46) hide show
  1. trainingsample-0.3.1/BENCHMARKS.md +102 -0
  2. {trainingsample-0.3.0 → trainingsample-0.3.1}/Cargo.lock +109 -91
  3. {trainingsample-0.3.0 → trainingsample-0.3.1}/Cargo.toml +1 -1
  4. {trainingsample-0.3.0 → trainingsample-0.3.1}/PKG-INFO +1 -1
  5. trainingsample-0.3.1/README.md +137 -0
  6. trainingsample-0.3.1/docs/API_COMPAT_CV2.md +162 -0
  7. trainingsample-0.3.1/docs/BUILDING_STATIC_OPENCV.md +125 -0
  8. {trainingsample-0.3.0 → trainingsample-0.3.1}/pyproject.toml +1 -1
  9. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/cv_compat.rs +88 -0
  10. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/tests.rs +49 -0
  11. {trainingsample-0.3.0 → trainingsample-0.3.1}/tests/test_python_bindings.py +18 -0
  12. trainingsample-0.3.0/BENCHMARKS.md +0 -137
  13. trainingsample-0.3.0/README.md +0 -180
  14. trainingsample-0.3.0/docs/API_COMPAT_CV2.md +0 -216
  15. trainingsample-0.3.0/docs/BUILDING_STATIC_OPENCV.md +0 -198
  16. {trainingsample-0.3.0 → trainingsample-0.3.1}/.cargo/config.toml +0 -0
  17. {trainingsample-0.3.0 → trainingsample-0.3.1}/.envrc +0 -0
  18. {trainingsample-0.3.0 → trainingsample-0.3.1}/.github/workflows/ci.yml +0 -0
  19. {trainingsample-0.3.0 → trainingsample-0.3.1}/.github/workflows/publish.yml +0 -0
  20. {trainingsample-0.3.0 → trainingsample-0.3.1}/.gitignore +0 -0
  21. {trainingsample-0.3.0 → trainingsample-0.3.1}/.pre-commit-config.yaml +0 -0
  22. {trainingsample-0.3.0 → trainingsample-0.3.1}/.rustfmt.toml +0 -0
  23. {trainingsample-0.3.0 → trainingsample-0.3.1}/Dockerfile +0 -0
  24. {trainingsample-0.3.0 → trainingsample-0.3.1}/LICENSE +0 -0
  25. {trainingsample-0.3.0 → trainingsample-0.3.1}/clippy.toml +0 -0
  26. {trainingsample-0.3.0 → trainingsample-0.3.1}/rust-toolchain.toml +0 -0
  27. {trainingsample-0.3.0 → trainingsample-0.3.1}/scripts/build-opencv-static.sh +0 -0
  28. {trainingsample-0.3.0 → trainingsample-0.3.1}/scripts/repair-wheel.sh +0 -0
  29. {trainingsample-0.3.0 → trainingsample-0.3.1}/scripts/run_competitive_benchmarks.sh +0 -0
  30. {trainingsample-0.3.0 → trainingsample-0.3.1}/setup-env.sh +0 -0
  31. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/core.rs +0 -0
  32. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/cropping.rs +0 -0
  33. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/cv_batch_ops.rs +0 -0
  34. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/cv_batch_ops_optimized.rs +0 -0
  35. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/format_conversion_simd.rs +0 -0
  36. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/lib.rs +0 -0
  37. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/loading.rs +0 -0
  38. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/luminance.rs +0 -0
  39. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/luminance_simd.rs +0 -0
  40. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/opencv_ops.rs +0 -0
  41. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/python_bindings.rs +0 -0
  42. {trainingsample-0.3.0 → trainingsample-0.3.1}/src/true_batch_ops.rs +0 -0
  43. {trainingsample-0.3.0 → trainingsample-0.3.1}/tests/__init__.py +0 -0
  44. {trainingsample-0.3.0 → trainingsample-0.3.1}/tests/comprehensive_tests.rs +0 -0
  45. {trainingsample-0.3.0 → trainingsample-0.3.1}/tests/test_comprehensive.py +0 -0
  46. {trainingsample-0.3.0 → trainingsample-0.3.1}/tests/test_performance_benchmarks.py +0 -0
@@ -0,0 +1,102 @@
1
+ # Benchmarks
2
+
3
+ ## Commands
4
+
5
+ Build the current checkout before measuring:
6
+
7
+ ```bash
8
+ python -m venv .venv
9
+ .venv/bin/python -m pip install -e '.[dev]'
10
+ .venv/bin/maturin develop --release
11
+ ```
12
+
13
+ Run the performance suite:
14
+
15
+ ```bash
16
+ .venv/bin/python -m pytest tests/test_performance_benchmarks.py -q -s
17
+ ```
18
+
19
+ Run pytest-benchmark cases only:
20
+
21
+ ```bash
22
+ .venv/bin/python -m pytest \
23
+ tests/test_performance_benchmarks.py::TestDetailedBenchmarks \
24
+ --benchmark-only
25
+ ```
26
+
27
+ Save machine-readable results:
28
+
29
+ ```bash
30
+ .venv/bin/python -m pytest \
31
+ tests/test_performance_benchmarks.py::TestDetailedBenchmarks \
32
+ --benchmark-only \
33
+ --benchmark-json benchmark.json
34
+ ```
35
+
36
+ ## Measured operations
37
+
38
+ | Case | TrainingSample call | Reference |
39
+ |---|---|---|
40
+ | Crop | `batch_crop_images` | NumPy slicing |
41
+ | Resize | `batch_resize_images` | direct `cv2.resize(..., INTER_LINEAR)` loop |
42
+ | Luminance | `batch_calculate_luminance` | `cv2.cvtColor(..., COLOR_RGB2GRAY)` plus `numpy.mean` |
43
+ | Pipeline | resize, then luminance | equivalent OpenCV loop |
44
+ | Video resize | `batch_resize_videos` | no external baseline |
45
+ | Center crop | `batch_center_crop_images` | no external baseline |
46
+
47
+ ## Comparison constraints
48
+
49
+ | Topic | Constraint |
50
+ |---|---|
51
+ | Crop ownership | TrainingSample returns owned arrays; plain NumPy slicing returns views |
52
+ | Resize color order | Resize is applied directly to the same RGB byte arrays; no RGB/BGR conversion is included |
53
+ | Resize interpolation | Both resize paths use linear interpolation |
54
+ | Luminance input | Both paths interpret the input as RGB |
55
+ | Batch shape | Mixed-shape inputs are processed one image at a time by the OpenCV reference loop |
56
+ | Build mode | Measure release builds only |
57
+
58
+ NumPy view-returning crop timings do not measure the cost of producing owned,
59
+ contiguous output. Use `.copy()` when owned-output cost is the subject of the
60
+ comparison.
61
+
62
+ ## Result metadata
63
+
64
+ Record these fields with timing results:
65
+
66
+ ```text
67
+ git commit
68
+ operating system and architecture
69
+ CPU model
70
+ Python version
71
+ NumPy version
72
+ TrainingSample version
73
+ Rust OpenCV version and link mode
74
+ Python cv2 version
75
+ OpenCV thread count
76
+ input shapes and dtypes
77
+ batch size
78
+ target sizes
79
+ warm-up count
80
+ sample count
81
+ median and dispersion
82
+ ```
83
+
84
+ ## Test behavior
85
+
86
+ The performance file contains both benchmarks and assertions.
87
+
88
+ | Assertion type | Examples |
89
+ |---|---|
90
+ | Correctness | output count, shape, dtype, pixel equality, luminance tolerance |
91
+ | Resource behavior | repeated calls, concurrent calls, memory cleanup |
92
+ | Broad timing guard | completion limits and scaling bounds intended for CI |
93
+ | Statistical timing | pytest-benchmark cases in `TestDetailedBenchmarks` |
94
+
95
+ Single-run `time.perf_counter` output is diagnostic. It is not a stable result
96
+ across hosts or OpenCV builds.
97
+
98
+ ## Published numbers
99
+
100
+ This repository does not currently store benchmark artifacts keyed by commit,
101
+ host, and OpenCV configuration. Fixed timing tables are therefore not included
102
+ in this document.
@@ -26,9 +26,9 @@ checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
26
26
 
27
27
  [[package]]
28
28
  name = "aho-corasick"
29
- version = "1.1.4"
29
+ version = "1.1.5"
30
30
  source = "registry+https://github.com/rust-lang/crates.io-index"
31
- checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301"
31
+ checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba"
32
32
  dependencies = [
33
33
  "memchr",
34
34
  ]
@@ -65,9 +65,9 @@ checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000"
65
65
 
66
66
  [[package]]
67
67
  name = "anyhow"
68
- version = "1.0.103"
68
+ version = "1.0.104"
69
69
  source = "registry+https://github.com/rust-lang/crates.io-index"
70
- checksum = "2a4385e2e34eb35d6b3efe798b9eb88096925d87726c0798709bf56d9ed84af3"
70
+ checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470"
71
71
 
72
72
  [[package]]
73
73
  name = "approx"
@@ -92,7 +92,7 @@ checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea"
92
92
  dependencies = [
93
93
  "proc-macro2",
94
94
  "quote",
95
- "syn",
95
+ "syn 2.0.119",
96
96
  ]
97
97
 
98
98
  [[package]]
@@ -206,9 +206,9 @@ checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649"
206
206
 
207
207
  [[package]]
208
208
  name = "bytemuck"
209
- version = "1.25.1"
209
+ version = "1.25.2"
210
210
  source = "registry+https://github.com/rust-lang/crates.io-index"
211
- checksum = "d6aedf8ae72766347502cf3cb4f41cf5e9cc37d28bee90f1fdaaae15f9cf9424"
211
+ checksum = "95832e849adfb21180ccb6826a99da14e5d266ae5c2e668e1602cf234f153797"
212
212
 
213
213
  [[package]]
214
214
  name = "byteorder-lite"
@@ -224,9 +224,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
224
224
 
225
225
  [[package]]
226
226
  name = "cc"
227
- version = "1.2.67"
227
+ version = "1.4.2"
228
228
  source = "registry+https://github.com/rust-lang/crates.io-index"
229
- checksum = "e17dd265a7d0f31ef544e1b20e03add05d3b45b491b633b10d67145d2acc1a38"
229
+ checksum = "5d262e149917187838d5b42777c8253bcb64500067342904e7d429499a6f277e"
230
230
  dependencies = [
231
231
  "find-msvc-tools",
232
232
  "jobserver",
@@ -269,9 +269,9 @@ dependencies = [
269
269
 
270
270
  [[package]]
271
271
  name = "clang"
272
- version = "2.0.0"
272
+ version = "2.1.0"
273
273
  source = "registry+https://github.com/rust-lang/crates.io-index"
274
- checksum = "84c044c781163c001b913cd018fc95a628c50d0d2dfea8bca77dad71edb16e37"
274
+ checksum = "b2ed30b30e1e17966b55ddd0b9dd2758fd824f0a6da6875c8abb17e6aba47c28"
275
275
  dependencies = [
276
276
  "clang-sys",
277
277
  "libc",
@@ -279,9 +279,9 @@ dependencies = [
279
279
 
280
280
  [[package]]
281
281
  name = "clang-sys"
282
- version = "1.8.1"
282
+ version = "1.9.1"
283
283
  source = "registry+https://github.com/rust-lang/crates.io-index"
284
- checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4"
284
+ checksum = "157a8ba7b480713b56f4c09fd13fc3e0a22a5dfab8097ba61cbc5feef950788a"
285
285
  dependencies = [
286
286
  "glob",
287
287
  "libc",
@@ -290,18 +290,18 @@ dependencies = [
290
290
 
291
291
  [[package]]
292
292
  name = "clap"
293
- version = "4.6.2"
293
+ version = "4.6.6"
294
294
  source = "registry+https://github.com/rust-lang/crates.io-index"
295
- checksum = "dd059f9da4f5c36b3787f65d38ccaab1cc315f07b01f89abc8359ee6a8205011"
295
+ checksum = "473c7e07f409a8d772161724aa8db6a765a2532a70f9667eeb7b49d3d02fbdca"
296
296
  dependencies = [
297
297
  "clap_builder",
298
298
  ]
299
299
 
300
300
  [[package]]
301
301
  name = "clap_builder"
302
- version = "4.6.2"
302
+ version = "4.6.6"
303
303
  source = "registry+https://github.com/rust-lang/crates.io-index"
304
- checksum = "f09628afdcc538b57f3c6341e9c8e9970f18e4a481690a64974d7023bd33548b"
304
+ checksum = "7b48fea5a88e9ae728a2dcbedbfc0e730f7d60da42e1cb049a83c9fb8b789889"
305
305
  dependencies = [
306
306
  "anstyle",
307
307
  "clap_lex",
@@ -430,9 +430,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813"
430
430
 
431
431
  [[package]]
432
432
  name = "either"
433
- version = "1.16.0"
433
+ version = "1.17.0"
434
434
  source = "registry+https://github.com/rust-lang/crates.io-index"
435
- checksum = "91622ff5e7162018101f2fea40d6ebf4a78bbe5a49736a2020649edf9693679e"
435
+ checksum = "9e5e8f6c15a24b9a3ee5efec809ccd006d3b30e8b3bb63c39af737c7f87daa1d"
436
436
 
437
437
  [[package]]
438
438
  name = "equator"
@@ -451,7 +451,7 @@ checksum = "44f23cf4b44bfce11a86ace86f8a73ffdec849c9fd00a386a53d278bd9e81fb3"
451
451
  dependencies = [
452
452
  "proc-macro2",
453
453
  "quote",
454
- "syn",
454
+ "syn 2.0.119",
455
455
  ]
456
456
 
457
457
  [[package]]
@@ -483,9 +483,9 @@ dependencies = [
483
483
 
484
484
  [[package]]
485
485
  name = "fastrand"
486
- version = "2.4.1"
486
+ version = "2.5.0"
487
487
  source = "registry+https://github.com/rust-lang/crates.io-index"
488
- checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6"
488
+ checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223"
489
489
 
490
490
  [[package]]
491
491
  name = "fax"
@@ -504,9 +504,9 @@ dependencies = [
504
504
 
505
505
  [[package]]
506
506
  name = "find-msvc-tools"
507
- version = "0.1.9"
507
+ version = "0.1.10"
508
508
  source = "registry+https://github.com/rust-lang/crates.io-index"
509
- checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
509
+ checksum = "26b73573e6edcd2af0cdf47bd6cb58f0b3839491263c314eaad1ccf24430e1de"
510
510
 
511
511
  [[package]]
512
512
  name = "flate2"
@@ -530,13 +530,13 @@ dependencies = [
530
530
 
531
531
  [[package]]
532
532
  name = "foreign-types-macros"
533
- version = "0.2.3"
533
+ version = "0.2.4"
534
534
  source = "registry+https://github.com/rust-lang/crates.io-index"
535
- checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
535
+ checksum = "ea5190182e6915eb873ddbc16e23b711b6eb1f9c00a0d0a3a91b5f6228475225"
536
536
  dependencies = [
537
537
  "proc-macro2",
538
538
  "quote",
539
- "syn",
539
+ "syn 3.0.3",
540
540
  ]
541
541
 
542
542
  [[package]]
@@ -547,21 +547,21 @@ checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
547
547
 
548
548
  [[package]]
549
549
  name = "futures-core"
550
- version = "0.3.32"
550
+ version = "0.3.33"
551
551
  source = "registry+https://github.com/rust-lang/crates.io-index"
552
- checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d"
552
+ checksum = "2cd50c473c80f6d7c3670a752354b8e569b1a7cbfdc0419ec88e5edad85e0dc7"
553
553
 
554
554
  [[package]]
555
555
  name = "futures-task"
556
- version = "0.3.32"
556
+ version = "0.3.33"
557
557
  source = "registry+https://github.com/rust-lang/crates.io-index"
558
- checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393"
558
+ checksum = "b231ed28831efb4a61a08580c4bc233ec56bc009f4cd8f52da2c3cb97df0c109"
559
559
 
560
560
  [[package]]
561
561
  name = "futures-util"
562
- version = "0.3.32"
562
+ version = "0.3.33"
563
563
  source = "registry+https://github.com/rust-lang/crates.io-index"
564
- checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6"
564
+ checksum = "a77a90a256fce34da66415271e30f94ee91c57b04b8a2c042d9cf3220179deaa"
565
565
  dependencies = [
566
566
  "futures-core",
567
567
  "futures-task",
@@ -617,9 +617,9 @@ dependencies = [
617
617
 
618
618
  [[package]]
619
619
  name = "glob"
620
- version = "0.3.3"
620
+ version = "0.3.4"
621
621
  source = "registry+https://github.com/rust-lang/crates.io-index"
622
- checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280"
622
+ checksum = "e4eba85ea1d0a966a983acd07deee566e67395d2d96b6fb39e62b5a833f1eb0b"
623
623
 
624
624
  [[package]]
625
625
  name = "half"
@@ -719,7 +719,7 @@ checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60"
719
719
  dependencies = [
720
720
  "proc-macro2",
721
721
  "quote",
722
- "syn",
722
+ "syn 2.0.119",
723
723
  ]
724
724
 
725
725
  [[package]]
@@ -778,9 +778,9 @@ dependencies = [
778
778
 
779
779
  [[package]]
780
780
  name = "js-sys"
781
- version = "0.3.103"
781
+ version = "0.3.104"
782
782
  source = "registry+https://github.com/rust-lang/crates.io-index"
783
- checksum = "53b44bfcdb3f8d5837a46dae1ca9660a837176eee74a28b229bc626816589102"
783
+ checksum = "0e0c1080212aad755ea003d18543e8768dd432c48819efd73a7bf1e39b7a5a3a"
784
784
  dependencies = [
785
785
  "cfg-if",
786
786
  "futures-util",
@@ -795,9 +795,9 @@ checksum = "7a79a3332a6609480d7d0c9eab957bca6b455b91bb84e66d19f5ff66294b85b8"
795
795
 
796
796
  [[package]]
797
797
  name = "libc"
798
- version = "0.2.186"
798
+ version = "0.2.189"
799
799
  source = "registry+https://github.com/rust-lang/crates.io-index"
800
- checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66"
800
+ checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
801
801
 
802
802
  [[package]]
803
803
  name = "libfuzzer-sys"
@@ -1027,7 +1027,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
1027
1027
  dependencies = [
1028
1028
  "proc-macro2",
1029
1029
  "quote",
1030
- "syn",
1030
+ "syn 2.0.119",
1031
1031
  ]
1032
1032
 
1033
1033
  [[package]]
@@ -1128,9 +1128,9 @@ checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e"
1128
1128
 
1129
1129
  [[package]]
1130
1130
  name = "opencv"
1131
- version = "0.99.0"
1131
+ version = "0.99.1"
1132
1132
  source = "registry+https://github.com/rust-lang/crates.io-index"
1133
- checksum = "e64a4ee03d2ec18c19d62b7fa4f570840c424853343ac085a9e3cedc60d88c4b"
1133
+ checksum = "4da218a3f75062a3980b33f8e31545d3bde91f935cae18b80c0617c0f3a59a65"
1134
1134
  dependencies = [
1135
1135
  "cc",
1136
1136
  "dunce",
@@ -1143,13 +1143,14 @@ dependencies = [
1143
1143
  "shlex",
1144
1144
  "vcpkg",
1145
1145
  "windows",
1146
+ "winsplit",
1146
1147
  ]
1147
1148
 
1148
1149
  [[package]]
1149
1150
  name = "opencv-binding-generator"
1150
- version = "0.102.0"
1151
+ version = "0.103.0"
1151
1152
  source = "registry+https://github.com/rust-lang/crates.io-index"
1152
- checksum = "d6df5c8a6b61606e5581388ce115393f14691d9bbb1756a364c559d94a466405"
1153
+ checksum = "310ef27c6e0c01710b3242a87b22f0673059c5a749db8b9df6bda4b20053f2d5"
1153
1154
  dependencies = [
1154
1155
  "clang",
1155
1156
  "clang-sys",
@@ -1242,9 +1243,9 @@ dependencies = [
1242
1243
 
1243
1244
  [[package]]
1244
1245
  name = "portable-atomic"
1245
- version = "1.14.0"
1246
+ version = "1.15.0"
1246
1247
  source = "registry+https://github.com/rust-lang/crates.io-index"
1247
- checksum = "3d20d5497ef88037a52ff98267d066e7f11fcc5e99bbfbd58a42336193aacec3"
1248
+ checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85"
1248
1249
 
1249
1250
  [[package]]
1250
1251
  name = "portable-atomic-util"
@@ -1266,9 +1267,9 @@ dependencies = [
1266
1267
 
1267
1268
  [[package]]
1268
1269
  name = "proc-macro2"
1269
- version = "1.0.106"
1270
+ version = "1.0.107"
1270
1271
  source = "registry+https://github.com/rust-lang/crates.io-index"
1271
- checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
1272
+ checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
1272
1273
  dependencies = [
1273
1274
  "unicode-ident",
1274
1275
  ]
@@ -1289,7 +1290,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1289
1290
  checksum = "4488a4a36b9a4ba6b9334a32a39971f77c1436ec82c38707bce707699cc3bbcb"
1290
1291
  dependencies = [
1291
1292
  "quote",
1292
- "syn",
1293
+ "syn 2.0.119",
1293
1294
  ]
1294
1295
 
1295
1296
  [[package]]
@@ -1368,7 +1369,7 @@ dependencies = [
1368
1369
  "proc-macro2",
1369
1370
  "pyo3-macros-backend",
1370
1371
  "quote",
1371
- "syn",
1372
+ "syn 2.0.119",
1372
1373
  ]
1373
1374
 
1374
1375
  [[package]]
@@ -1381,7 +1382,7 @@ dependencies = [
1381
1382
  "proc-macro2",
1382
1383
  "pyo3-build-config",
1383
1384
  "quote",
1384
- "syn",
1385
+ "syn 2.0.119",
1385
1386
  ]
1386
1387
 
1387
1388
  [[package]]
@@ -1401,9 +1402,9 @@ checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3"
1401
1402
 
1402
1403
  [[package]]
1403
1404
  name = "quote"
1404
- version = "1.0.46"
1405
+ version = "1.0.47"
1405
1406
  source = "registry+https://github.com/rust-lang/crates.io-index"
1406
- checksum = "dfbc457d0c7a0759a614551b11a6409e5951f6c7537be1f1b7682b9ae9230368"
1407
+ checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
1407
1408
  dependencies = [
1408
1409
  "proc-macro2",
1409
1410
  ]
@@ -1594,9 +1595,9 @@ dependencies = [
1594
1595
 
1595
1596
  [[package]]
1596
1597
  name = "regex-automata"
1597
- version = "0.4.16"
1598
+ version = "0.4.18"
1598
1599
  source = "registry+https://github.com/rust-lang/crates.io-index"
1599
- checksum = "8fcfdb36bda0c880c5931cdc7a2bcdc8ba4556847b9d912bca70bc94708711ad"
1600
+ checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2"
1600
1601
  dependencies = [
1601
1602
  "aho-corasick",
1602
1603
  "memchr",
@@ -1666,9 +1667,9 @@ checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd"
1666
1667
 
1667
1668
  [[package]]
1668
1669
  name = "serde"
1669
- version = "1.0.228"
1670
+ version = "1.0.229"
1670
1671
  source = "registry+https://github.com/rust-lang/crates.io-index"
1671
- checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
1672
+ checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba"
1672
1673
  dependencies = [
1673
1674
  "serde_core",
1674
1675
  "serde_derive",
@@ -1676,29 +1677,29 @@ dependencies = [
1676
1677
 
1677
1678
  [[package]]
1678
1679
  name = "serde_core"
1679
- version = "1.0.228"
1680
+ version = "1.0.229"
1680
1681
  source = "registry+https://github.com/rust-lang/crates.io-index"
1681
- checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
1682
+ checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48"
1682
1683
  dependencies = [
1683
1684
  "serde_derive",
1684
1685
  ]
1685
1686
 
1686
1687
  [[package]]
1687
1688
  name = "serde_derive"
1688
- version = "1.0.228"
1689
+ version = "1.0.229"
1689
1690
  source = "registry+https://github.com/rust-lang/crates.io-index"
1690
- checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
1691
+ checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"
1691
1692
  dependencies = [
1692
1693
  "proc-macro2",
1693
1694
  "quote",
1694
- "syn",
1695
+ "syn 3.0.3",
1695
1696
  ]
1696
1697
 
1697
1698
  [[package]]
1698
1699
  name = "serde_json"
1699
- version = "1.0.150"
1700
+ version = "1.0.151"
1700
1701
  source = "registry+https://github.com/rust-lang/crates.io-index"
1701
- checksum = "e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9"
1702
+ checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14"
1702
1703
  dependencies = [
1703
1704
  "itoa",
1704
1705
  "memchr",
@@ -1770,6 +1771,17 @@ dependencies = [
1770
1771
  "unicode-ident",
1771
1772
  ]
1772
1773
 
1774
+ [[package]]
1775
+ name = "syn"
1776
+ version = "3.0.3"
1777
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1778
+ checksum = "53e9bae58849f64dfa4f5d5ae372c8341f7305f82a3868709269343628b659a3"
1779
+ dependencies = [
1780
+ "proc-macro2",
1781
+ "quote",
1782
+ "unicode-ident",
1783
+ ]
1784
+
1773
1785
  [[package]]
1774
1786
  name = "target-lexicon"
1775
1787
  version = "0.12.16"
@@ -1791,22 +1803,22 @@ dependencies = [
1791
1803
 
1792
1804
  [[package]]
1793
1805
  name = "thiserror"
1794
- version = "2.0.18"
1806
+ version = "2.0.20"
1795
1807
  source = "registry+https://github.com/rust-lang/crates.io-index"
1796
- checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4"
1808
+ checksum = "ec86235f5fcc2a73650310756d2ac5b138a5780bbbdfae3eeccec992c435ba4f"
1797
1809
  dependencies = [
1798
1810
  "thiserror-impl",
1799
1811
  ]
1800
1812
 
1801
1813
  [[package]]
1802
1814
  name = "thiserror-impl"
1803
- version = "2.0.18"
1815
+ version = "2.0.20"
1804
1816
  source = "registry+https://github.com/rust-lang/crates.io-index"
1805
- checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5"
1817
+ checksum = "bc04cd3e1236dd4a98afca4569f2deb3f120e5422a4023be2cb683f8486292af"
1806
1818
  dependencies = [
1807
1819
  "proc-macro2",
1808
1820
  "quote",
1809
- "syn",
1821
+ "syn 3.0.3",
1810
1822
  ]
1811
1823
 
1812
1824
  [[package]]
@@ -1835,7 +1847,7 @@ dependencies = [
1835
1847
 
1836
1848
  [[package]]
1837
1849
  name = "trainingsample"
1838
- version = "0.3.0"
1850
+ version = "0.3.1"
1839
1851
  dependencies = [
1840
1852
  "anyhow",
1841
1853
  "criterion",
@@ -1928,9 +1940,9 @@ dependencies = [
1928
1940
 
1929
1941
  [[package]]
1930
1942
  name = "wasm-bindgen"
1931
- version = "0.2.126"
1943
+ version = "0.2.127"
1932
1944
  source = "registry+https://github.com/rust-lang/crates.io-index"
1933
- checksum = "4b067c0c11094aef6b7a801c1e34a26affafdf3d051dba08456b868789aaf9a4"
1945
+ checksum = "1b70935747edd64d89de3efa29d73789b806c15798f8e7dca4d8ac356b50ce70"
1934
1946
  dependencies = [
1935
1947
  "cfg-if",
1936
1948
  "once_cell",
@@ -1941,9 +1953,9 @@ dependencies = [
1941
1953
 
1942
1954
  [[package]]
1943
1955
  name = "wasm-bindgen-macro"
1944
- version = "0.2.126"
1956
+ version = "0.2.127"
1945
1957
  source = "registry+https://github.com/rust-lang/crates.io-index"
1946
- checksum = "167ce5e579f6bcf889c4f7175a8a5a585de84e8ff93976ce393efa5f2837aab1"
1958
+ checksum = "77775f8f3f7217702089053b94958f8f54061a3f663417df76e19cbdcca29bc1"
1947
1959
  dependencies = [
1948
1960
  "quote",
1949
1961
  "wasm-bindgen-macro-support",
@@ -1951,31 +1963,31 @@ dependencies = [
1951
1963
 
1952
1964
  [[package]]
1953
1965
  name = "wasm-bindgen-macro-support"
1954
- version = "0.2.126"
1966
+ version = "0.2.127"
1955
1967
  source = "registry+https://github.com/rust-lang/crates.io-index"
1956
- checksum = "f3997c7839262f4ef12cf90b818d6340c18e80f263f1a94bf157d0ec4420380e"
1968
+ checksum = "e11d33f857dc2fb11b8bc75aee111aa9cbeb12cd9f25efd3d4c2a3dd4e235284"
1957
1969
  dependencies = [
1958
1970
  "bumpalo",
1959
1971
  "proc-macro2",
1960
1972
  "quote",
1961
- "syn",
1973
+ "syn 2.0.119",
1962
1974
  "wasm-bindgen-shared",
1963
1975
  ]
1964
1976
 
1965
1977
  [[package]]
1966
1978
  name = "wasm-bindgen-shared"
1967
- version = "0.2.126"
1979
+ version = "0.2.127"
1968
1980
  source = "registry+https://github.com/rust-lang/crates.io-index"
1969
- checksum = "dc1b4cb0cc549fcf58d7dfc081778139b3d283a081644e833e84682ad71cea24"
1981
+ checksum = "7ef64dbcc55df09c7e5a46182d181c2cfa3e925f3da937ea764728b4bbb9dcbf"
1970
1982
  dependencies = [
1971
1983
  "unicode-ident",
1972
1984
  ]
1973
1985
 
1974
1986
  [[package]]
1975
1987
  name = "web-sys"
1976
- version = "0.3.103"
1988
+ version = "0.3.104"
1977
1989
  source = "registry+https://github.com/rust-lang/crates.io-index"
1978
- checksum = "8622dcb61c0bcc9fffa6938bed81210af2da9a7e4a1a834b2e37a59b6dfb6141"
1990
+ checksum = "c435338968042f4f59a557f690a253676d47ce13ceb55d70100e7facf6620a30"
1979
1991
  dependencies = [
1980
1992
  "js-sys",
1981
1993
  "wasm-bindgen",
@@ -2059,7 +2071,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf"
2059
2071
  dependencies = [
2060
2072
  "proc-macro2",
2061
2073
  "quote",
2062
- "syn",
2074
+ "syn 2.0.119",
2063
2075
  ]
2064
2076
 
2065
2077
  [[package]]
@@ -2070,7 +2082,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358"
2070
2082
  dependencies = [
2071
2083
  "proc-macro2",
2072
2084
  "quote",
2073
- "syn",
2085
+ "syn 2.0.119",
2074
2086
  ]
2075
2087
 
2076
2088
  [[package]]
@@ -2125,6 +2137,12 @@ dependencies = [
2125
2137
  "windows-link",
2126
2138
  ]
2127
2139
 
2140
+ [[package]]
2141
+ name = "winsplit"
2142
+ version = "0.1.0"
2143
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2144
+ checksum = "3ab703352da6a72f35c39a533526393725640575bb211f61987a2748323ad956"
2145
+
2128
2146
  [[package]]
2129
2147
  name = "wit-bindgen"
2130
2148
  version = "0.57.1"
@@ -2139,22 +2157,22 @@ checksum = "7a5a4b21e1a62b67a2970e6831bc091d7b87e119e7f9791aef9702e3bef04448"
2139
2157
 
2140
2158
  [[package]]
2141
2159
  name = "zerocopy"
2142
- version = "0.8.54"
2160
+ version = "0.8.56"
2143
2161
  source = "registry+https://github.com/rust-lang/crates.io-index"
2144
- checksum = "b7cbbc0a705a0fd05cc3676525980d2bf5a9bc4adac6d6475209a7887cf59d19"
2162
+ checksum = "556764e583adb45a9f8d413c2a147fa7e8d821e48e12b14fd560b607998b75eb"
2145
2163
  dependencies = [
2146
2164
  "zerocopy-derive",
2147
2165
  ]
2148
2166
 
2149
2167
  [[package]]
2150
2168
  name = "zerocopy-derive"
2151
- version = "0.8.54"
2169
+ version = "0.8.56"
2152
2170
  source = "registry+https://github.com/rust-lang/crates.io-index"
2153
- checksum = "e2e817b7b52d0c7358d3246da9d69935ebb18116b2b102b4230dac079b4862f5"
2171
+ checksum = "f2ab42fc20575779bd240faa45f94a74256f755c0fa9e89f0ede20d91d0cdfc1"
2154
2172
  dependencies = [
2155
2173
  "proc-macro2",
2156
2174
  "quote",
2157
- "syn",
2175
+ "syn 2.0.119",
2158
2176
  ]
2159
2177
 
2160
2178
  [[package]]
@@ -2165,9 +2183,9 @@ checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b"
2165
2183
 
2166
2184
  [[package]]
2167
2185
  name = "zune-core"
2168
- version = "0.5.1"
2186
+ version = "0.5.3"
2169
2187
  source = "registry+https://github.com/rust-lang/crates.io-index"
2170
- checksum = "cb8a0807f7c01457d0379ba880ba6322660448ddebc890ce29bb64da71fb40f9"
2188
+ checksum = "d56377fd46368984a170bc5aac5567e52ca5da874caa60bea39fcbca78fb658b"
2171
2189
 
2172
2190
  [[package]]
2173
2191
  name = "zune-inflate"
@@ -39,7 +39,7 @@ description = "High-performance Rust reimplementation of GIL-blocking video/imag
39
39
  edition = "2021"
40
40
  license = "MIT"
41
41
  name = "trainingsample"
42
- version = "0.3.0"
42
+ version = "0.3.1"
43
43
  readme = "README.md"
44
44
 
45
45
  [profile.release]