pyvegh 0.5.0__tar.gz → 0.7.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.
- pyvegh-0.7.0/.github/workflows/rust-clippy.yml +55 -0
- {pyvegh-0.5.0 → pyvegh-0.7.0}/.gitignore +2 -2
- {pyvegh-0.5.0 → pyvegh-0.7.0}/Cargo.lock +183 -26
- pyvegh-0.7.0/Cargo.toml +37 -0
- pyvegh-0.5.0/README.md → pyvegh-0.7.0/PKG-INFO +75 -11
- pyvegh-0.5.0/PKG-INFO → pyvegh-0.7.0/README.md +46 -26
- pyvegh-0.7.0/pyproject.toml +44 -0
- pyvegh-0.7.0/python/vegh/__init__.py +24 -0
- {pyvegh-0.5.0 → pyvegh-0.7.0}/python/vegh/analytics.py +291 -92
- pyvegh-0.7.0/python/vegh/cli.py +1588 -0
- pyvegh-0.7.0/src/core.rs +586 -0
- pyvegh-0.7.0/src/hash.rs +108 -0
- pyvegh-0.7.0/src/lib.rs +555 -0
- pyvegh-0.7.0/src/storage.rs +288 -0
- {pyvegh-0.5.0 → pyvegh-0.7.0}/tests/test_smoke.py +7 -5
- pyvegh-0.7.0/uv.lock +250 -0
- pyvegh-0.5.0/Cargo.toml +0 -29
- pyvegh-0.5.0/pyproject.toml +0 -28
- pyvegh-0.5.0/python/vegh/__init__.py +0 -24
- pyvegh-0.5.0/python/vegh/cli.py +0 -959
- pyvegh-0.5.0/src/lib.rs +0 -485
- {pyvegh-0.5.0 → pyvegh-0.7.0}/.github/workflows/ci.yml +0 -0
- {pyvegh-0.5.0 → pyvegh-0.7.0}/.github/workflows/release.yml +0 -0
- {pyvegh-0.5.0 → pyvegh-0.7.0}/LICENSE +0 -0
- {pyvegh-0.5.0 → pyvegh-0.7.0}/tests/integration_test.sh +0 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# This workflow uses actions that are not certified by GitHub.
|
|
2
|
+
# They are provided by a third-party and are governed by
|
|
3
|
+
# separate terms of service, privacy policy, and support
|
|
4
|
+
# documentation.
|
|
5
|
+
# rust-clippy is a tool that runs a bunch of lints to catch common
|
|
6
|
+
# mistakes in your Rust code and help improve your Rust code.
|
|
7
|
+
# More details at https://github.com/rust-lang/rust-clippy
|
|
8
|
+
# and https://rust-lang.github.io/rust-clippy/
|
|
9
|
+
|
|
10
|
+
name: rust-clippy analyze
|
|
11
|
+
|
|
12
|
+
on:
|
|
13
|
+
push:
|
|
14
|
+
branches: [ "main" ]
|
|
15
|
+
pull_request:
|
|
16
|
+
# The branches below must be a subset of the branches above
|
|
17
|
+
branches: [ "main" ]
|
|
18
|
+
schedule:
|
|
19
|
+
- cron: '32 11 * * 4'
|
|
20
|
+
|
|
21
|
+
jobs:
|
|
22
|
+
rust-clippy-analyze:
|
|
23
|
+
name: Run rust-clippy analyzing
|
|
24
|
+
runs-on: ubuntu-latest
|
|
25
|
+
permissions:
|
|
26
|
+
contents: read
|
|
27
|
+
security-events: write
|
|
28
|
+
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
|
|
29
|
+
steps:
|
|
30
|
+
- name: Checkout code
|
|
31
|
+
uses: actions/checkout@v4
|
|
32
|
+
|
|
33
|
+
- name: Install Rust toolchain
|
|
34
|
+
uses: actions-rs/toolchain@16499b5e05bf2e26879000db0c1d13f7e13fa3af #@v1
|
|
35
|
+
with:
|
|
36
|
+
profile: minimal
|
|
37
|
+
toolchain: stable
|
|
38
|
+
components: clippy
|
|
39
|
+
override: true
|
|
40
|
+
|
|
41
|
+
- name: Install required cargo
|
|
42
|
+
run: cargo install clippy-sarif sarif-fmt
|
|
43
|
+
|
|
44
|
+
- name: Run rust-clippy
|
|
45
|
+
run:
|
|
46
|
+
cargo clippy
|
|
47
|
+
--all-features
|
|
48
|
+
--message-format=json | clippy-sarif | tee rust-clippy-results.sarif | sarif-fmt
|
|
49
|
+
continue-on-error: true
|
|
50
|
+
|
|
51
|
+
- name: Upload analysis results to GitHub
|
|
52
|
+
uses: github/codeql-action/upload-sarif@v3
|
|
53
|
+
with:
|
|
54
|
+
sarif_file: rust-clippy-results.sarif
|
|
55
|
+
wait-for-processing: true
|
|
@@ -44,6 +44,15 @@ version = "1.5.0"
|
|
|
44
44
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
45
45
|
checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8"
|
|
46
46
|
|
|
47
|
+
[[package]]
|
|
48
|
+
name = "bincode"
|
|
49
|
+
version = "1.3.3"
|
|
50
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
51
|
+
checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
|
|
52
|
+
dependencies = [
|
|
53
|
+
"serde",
|
|
54
|
+
]
|
|
55
|
+
|
|
47
56
|
[[package]]
|
|
48
57
|
name = "bitflags"
|
|
49
58
|
version = "2.10.0"
|
|
@@ -83,9 +92,9 @@ checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510"
|
|
|
83
92
|
|
|
84
93
|
[[package]]
|
|
85
94
|
name = "cc"
|
|
86
|
-
version = "1.2.
|
|
95
|
+
version = "1.2.51"
|
|
87
96
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
88
|
-
checksum = "
|
|
97
|
+
checksum = "7a0aeaff4ff1a90589618835a598e545176939b97874f7abc7851caa0618f203"
|
|
89
98
|
dependencies = [
|
|
90
99
|
"find-msvc-tools",
|
|
91
100
|
"jobserver",
|
|
@@ -108,10 +117,24 @@ dependencies = [
|
|
|
108
117
|
"iana-time-zone",
|
|
109
118
|
"js-sys",
|
|
110
119
|
"num-traits",
|
|
120
|
+
"serde",
|
|
111
121
|
"wasm-bindgen",
|
|
112
122
|
"windows-link",
|
|
113
123
|
]
|
|
114
124
|
|
|
125
|
+
[[package]]
|
|
126
|
+
name = "console"
|
|
127
|
+
version = "0.16.2"
|
|
128
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
129
|
+
checksum = "03e45a4a8926227e4197636ba97a9fc9b00477e9f4bd711395687c5f0734bec4"
|
|
130
|
+
dependencies = [
|
|
131
|
+
"encode_unicode",
|
|
132
|
+
"libc",
|
|
133
|
+
"once_cell",
|
|
134
|
+
"unicode-width",
|
|
135
|
+
"windows-sys 0.61.2",
|
|
136
|
+
]
|
|
137
|
+
|
|
115
138
|
[[package]]
|
|
116
139
|
name = "constant_time_eq"
|
|
117
140
|
version = "0.3.1"
|
|
@@ -124,6 +147,15 @@ version = "0.8.7"
|
|
|
124
147
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
125
148
|
checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
|
|
126
149
|
|
|
150
|
+
[[package]]
|
|
151
|
+
name = "crossbeam-channel"
|
|
152
|
+
version = "0.5.15"
|
|
153
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
154
|
+
checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2"
|
|
155
|
+
dependencies = [
|
|
156
|
+
"crossbeam-utils",
|
|
157
|
+
]
|
|
158
|
+
|
|
127
159
|
[[package]]
|
|
128
160
|
name = "crossbeam-deque"
|
|
129
161
|
version = "0.8.6"
|
|
@@ -149,6 +181,26 @@ version = "0.8.21"
|
|
|
149
181
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
150
182
|
checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
|
|
151
183
|
|
|
184
|
+
[[package]]
|
|
185
|
+
name = "dashmap"
|
|
186
|
+
version = "6.1.0"
|
|
187
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
188
|
+
checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf"
|
|
189
|
+
dependencies = [
|
|
190
|
+
"cfg-if",
|
|
191
|
+
"crossbeam-utils",
|
|
192
|
+
"hashbrown",
|
|
193
|
+
"lock_api",
|
|
194
|
+
"once_cell",
|
|
195
|
+
"parking_lot_core",
|
|
196
|
+
]
|
|
197
|
+
|
|
198
|
+
[[package]]
|
|
199
|
+
name = "encode_unicode"
|
|
200
|
+
version = "1.0.0"
|
|
201
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
202
|
+
checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0"
|
|
203
|
+
|
|
152
204
|
[[package]]
|
|
153
205
|
name = "errno"
|
|
154
206
|
version = "0.3.14"
|
|
@@ -159,6 +211,12 @@ dependencies = [
|
|
|
159
211
|
"windows-sys 0.61.2",
|
|
160
212
|
]
|
|
161
213
|
|
|
214
|
+
[[package]]
|
|
215
|
+
name = "fastcdc"
|
|
216
|
+
version = "3.2.1"
|
|
217
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
218
|
+
checksum = "bf51ceb43e96afbfe4dd5c6f6082af5dfd60e220820b8123792d61963f2ce6bc"
|
|
219
|
+
|
|
162
220
|
[[package]]
|
|
163
221
|
name = "filetime"
|
|
164
222
|
version = "0.2.26"
|
|
@@ -173,9 +231,9 @@ dependencies = [
|
|
|
173
231
|
|
|
174
232
|
[[package]]
|
|
175
233
|
name = "find-msvc-tools"
|
|
176
|
-
version = "0.1.
|
|
234
|
+
version = "0.1.6"
|
|
177
235
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
178
|
-
checksum = "
|
|
236
|
+
checksum = "645cbb3a84e60b7531617d5ae4e57f7e27308f6445f5abf653209ea76dec8dff"
|
|
179
237
|
|
|
180
238
|
[[package]]
|
|
181
239
|
name = "getrandom"
|
|
@@ -202,6 +260,12 @@ dependencies = [
|
|
|
202
260
|
"regex-syntax",
|
|
203
261
|
]
|
|
204
262
|
|
|
263
|
+
[[package]]
|
|
264
|
+
name = "hashbrown"
|
|
265
|
+
version = "0.14.5"
|
|
266
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
267
|
+
checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
|
|
268
|
+
|
|
205
269
|
[[package]]
|
|
206
270
|
name = "heck"
|
|
207
271
|
version = "0.5.0"
|
|
@@ -254,6 +318,19 @@ dependencies = [
|
|
|
254
318
|
"winapi-util",
|
|
255
319
|
]
|
|
256
320
|
|
|
321
|
+
[[package]]
|
|
322
|
+
name = "indicatif"
|
|
323
|
+
version = "0.18.3"
|
|
324
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
325
|
+
checksum = "9375e112e4b463ec1b1c6c011953545c65a30164fbab5b581df32b3abf0dcb88"
|
|
326
|
+
dependencies = [
|
|
327
|
+
"console",
|
|
328
|
+
"portable-atomic",
|
|
329
|
+
"unicode-width",
|
|
330
|
+
"unit-prefix",
|
|
331
|
+
"web-time",
|
|
332
|
+
]
|
|
333
|
+
|
|
257
334
|
[[package]]
|
|
258
335
|
name = "indoc"
|
|
259
336
|
version = "2.0.7"
|
|
@@ -265,9 +342,9 @@ dependencies = [
|
|
|
265
342
|
|
|
266
343
|
[[package]]
|
|
267
344
|
name = "itoa"
|
|
268
|
-
version = "1.0.
|
|
345
|
+
version = "1.0.17"
|
|
269
346
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
270
|
-
checksum = "
|
|
347
|
+
checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2"
|
|
271
348
|
|
|
272
349
|
[[package]]
|
|
273
350
|
name = "jobserver"
|
|
@@ -291,19 +368,19 @@ dependencies = [
|
|
|
291
368
|
|
|
292
369
|
[[package]]
|
|
293
370
|
name = "libc"
|
|
294
|
-
version = "0.2.
|
|
371
|
+
version = "0.2.179"
|
|
295
372
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
296
|
-
checksum = "
|
|
373
|
+
checksum = "c5a2d376baa530d1238d133232d15e239abad80d05838b4b59354e5268af431f"
|
|
297
374
|
|
|
298
375
|
[[package]]
|
|
299
376
|
name = "libredox"
|
|
300
|
-
version = "0.1.
|
|
377
|
+
version = "0.1.12"
|
|
301
378
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
302
|
-
checksum = "
|
|
379
|
+
checksum = "3d0b95e02c851351f877147b7deea7b1afb1df71b63aa5f8270716e0c5720616"
|
|
303
380
|
dependencies = [
|
|
304
381
|
"bitflags",
|
|
305
382
|
"libc",
|
|
306
|
-
"redox_syscall",
|
|
383
|
+
"redox_syscall 0.7.0",
|
|
307
384
|
]
|
|
308
385
|
|
|
309
386
|
[[package]]
|
|
@@ -312,6 +389,15 @@ version = "0.11.0"
|
|
|
312
389
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
313
390
|
checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039"
|
|
314
391
|
|
|
392
|
+
[[package]]
|
|
393
|
+
name = "lock_api"
|
|
394
|
+
version = "0.4.14"
|
|
395
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
396
|
+
checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965"
|
|
397
|
+
dependencies = [
|
|
398
|
+
"scopeguard",
|
|
399
|
+
]
|
|
400
|
+
|
|
315
401
|
[[package]]
|
|
316
402
|
name = "log"
|
|
317
403
|
version = "0.4.29"
|
|
@@ -357,6 +443,19 @@ version = "1.21.3"
|
|
|
357
443
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
358
444
|
checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
|
|
359
445
|
|
|
446
|
+
[[package]]
|
|
447
|
+
name = "parking_lot_core"
|
|
448
|
+
version = "0.9.12"
|
|
449
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
450
|
+
checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1"
|
|
451
|
+
dependencies = [
|
|
452
|
+
"cfg-if",
|
|
453
|
+
"libc",
|
|
454
|
+
"redox_syscall 0.5.18",
|
|
455
|
+
"smallvec",
|
|
456
|
+
"windows-link",
|
|
457
|
+
]
|
|
458
|
+
|
|
360
459
|
[[package]]
|
|
361
460
|
name = "pkg-config"
|
|
362
461
|
version = "0.3.32"
|
|
@@ -365,15 +464,15 @@ checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c"
|
|
|
365
464
|
|
|
366
465
|
[[package]]
|
|
367
466
|
name = "portable-atomic"
|
|
368
|
-
version = "1.
|
|
467
|
+
version = "1.13.0"
|
|
369
468
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
370
|
-
checksum = "
|
|
469
|
+
checksum = "f89776e4d69bb58bc6993e99ffa1d11f228b839984854c7daeb5d37f87cbe950"
|
|
371
470
|
|
|
372
471
|
[[package]]
|
|
373
472
|
name = "proc-macro2"
|
|
374
|
-
version = "1.0.
|
|
473
|
+
version = "1.0.105"
|
|
375
474
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
376
|
-
checksum = "
|
|
475
|
+
checksum = "535d180e0ecab6268a3e718bb9fd44db66bbbc256257165fc699dadf70d16fe7"
|
|
377
476
|
dependencies = [
|
|
378
477
|
"unicode-ident",
|
|
379
478
|
]
|
|
@@ -441,15 +540,21 @@ dependencies = [
|
|
|
441
540
|
|
|
442
541
|
[[package]]
|
|
443
542
|
name = "pyvegh"
|
|
444
|
-
version = "0.
|
|
543
|
+
version = "0.7.0"
|
|
445
544
|
dependencies = [
|
|
446
545
|
"anyhow",
|
|
546
|
+
"bincode",
|
|
447
547
|
"blake3",
|
|
448
548
|
"chrono",
|
|
549
|
+
"crossbeam-channel",
|
|
550
|
+
"dashmap",
|
|
551
|
+
"fastcdc",
|
|
449
552
|
"hex",
|
|
450
553
|
"ignore",
|
|
554
|
+
"indicatif",
|
|
451
555
|
"memmap2",
|
|
452
556
|
"pyo3",
|
|
557
|
+
"redb",
|
|
453
558
|
"serde",
|
|
454
559
|
"serde_json",
|
|
455
560
|
"tar",
|
|
@@ -458,9 +563,9 @@ dependencies = [
|
|
|
458
563
|
|
|
459
564
|
[[package]]
|
|
460
565
|
name = "quote"
|
|
461
|
-
version = "1.0.
|
|
566
|
+
version = "1.0.43"
|
|
462
567
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
463
|
-
checksum = "
|
|
568
|
+
checksum = "dc74d9a594b72ae6656596548f56f667211f8a97b3d4c3d467150794690dc40a"
|
|
464
569
|
dependencies = [
|
|
465
570
|
"proc-macro2",
|
|
466
571
|
]
|
|
@@ -481,11 +586,29 @@ dependencies = [
|
|
|
481
586
|
"crossbeam-utils",
|
|
482
587
|
]
|
|
483
588
|
|
|
589
|
+
[[package]]
|
|
590
|
+
name = "redb"
|
|
591
|
+
version = "3.1.0"
|
|
592
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
593
|
+
checksum = "ae323eb086579a3769daa2c753bb96deb95993c534711e0dbe881b5192906a06"
|
|
594
|
+
dependencies = [
|
|
595
|
+
"libc",
|
|
596
|
+
]
|
|
597
|
+
|
|
598
|
+
[[package]]
|
|
599
|
+
name = "redox_syscall"
|
|
600
|
+
version = "0.5.18"
|
|
601
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
602
|
+
checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d"
|
|
603
|
+
dependencies = [
|
|
604
|
+
"bitflags",
|
|
605
|
+
]
|
|
606
|
+
|
|
484
607
|
[[package]]
|
|
485
608
|
name = "redox_syscall"
|
|
486
|
-
version = "0.
|
|
609
|
+
version = "0.7.0"
|
|
487
610
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
488
|
-
checksum = "
|
|
611
|
+
checksum = "49f3fe0889e69e2ae9e41f4d6c4c0181701d00e4697b356fb1f74173a5e0ee27"
|
|
489
612
|
dependencies = [
|
|
490
613
|
"bitflags",
|
|
491
614
|
]
|
|
@@ -535,6 +658,12 @@ dependencies = [
|
|
|
535
658
|
"winapi-util",
|
|
536
659
|
]
|
|
537
660
|
|
|
661
|
+
[[package]]
|
|
662
|
+
name = "scopeguard"
|
|
663
|
+
version = "1.2.0"
|
|
664
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
665
|
+
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
|
|
666
|
+
|
|
538
667
|
[[package]]
|
|
539
668
|
name = "serde"
|
|
540
669
|
version = "1.0.228"
|
|
@@ -567,9 +696,9 @@ dependencies = [
|
|
|
567
696
|
|
|
568
697
|
[[package]]
|
|
569
698
|
name = "serde_json"
|
|
570
|
-
version = "1.0.
|
|
699
|
+
version = "1.0.149"
|
|
571
700
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
572
|
-
checksum = "
|
|
701
|
+
checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86"
|
|
573
702
|
dependencies = [
|
|
574
703
|
"itoa",
|
|
575
704
|
"memchr",
|
|
@@ -584,11 +713,17 @@ version = "1.3.0"
|
|
|
584
713
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
585
714
|
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
|
|
586
715
|
|
|
716
|
+
[[package]]
|
|
717
|
+
name = "smallvec"
|
|
718
|
+
version = "1.15.1"
|
|
719
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
720
|
+
checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03"
|
|
721
|
+
|
|
587
722
|
[[package]]
|
|
588
723
|
name = "syn"
|
|
589
|
-
version = "2.0.
|
|
724
|
+
version = "2.0.114"
|
|
590
725
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
591
|
-
checksum = "
|
|
726
|
+
checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a"
|
|
592
727
|
dependencies = [
|
|
593
728
|
"proc-macro2",
|
|
594
729
|
"quote",
|
|
@@ -618,12 +753,24 @@ version = "1.0.22"
|
|
|
618
753
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
619
754
|
checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5"
|
|
620
755
|
|
|
756
|
+
[[package]]
|
|
757
|
+
name = "unicode-width"
|
|
758
|
+
version = "0.2.2"
|
|
759
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
760
|
+
checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254"
|
|
761
|
+
|
|
621
762
|
[[package]]
|
|
622
763
|
name = "unindent"
|
|
623
764
|
version = "0.2.4"
|
|
624
765
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
625
766
|
checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3"
|
|
626
767
|
|
|
768
|
+
[[package]]
|
|
769
|
+
name = "unit-prefix"
|
|
770
|
+
version = "0.5.2"
|
|
771
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
772
|
+
checksum = "81e544489bf3d8ef66c953931f56617f423cd4b5494be343d9b9d3dda037b9a3"
|
|
773
|
+
|
|
627
774
|
[[package]]
|
|
628
775
|
name = "walkdir"
|
|
629
776
|
version = "2.5.0"
|
|
@@ -688,6 +835,16 @@ dependencies = [
|
|
|
688
835
|
"unicode-ident",
|
|
689
836
|
]
|
|
690
837
|
|
|
838
|
+
[[package]]
|
|
839
|
+
name = "web-time"
|
|
840
|
+
version = "1.1.0"
|
|
841
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
842
|
+
checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
|
|
843
|
+
dependencies = [
|
|
844
|
+
"js-sys",
|
|
845
|
+
"wasm-bindgen",
|
|
846
|
+
]
|
|
847
|
+
|
|
691
848
|
[[package]]
|
|
692
849
|
name = "winapi-util"
|
|
693
850
|
version = "0.1.11"
|
|
@@ -857,9 +1014,9 @@ dependencies = [
|
|
|
857
1014
|
|
|
858
1015
|
[[package]]
|
|
859
1016
|
name = "zmij"
|
|
860
|
-
version = "0.
|
|
1017
|
+
version = "1.0.12"
|
|
861
1018
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
862
|
-
checksum = "
|
|
1019
|
+
checksum = "2fc5a66a20078bf1251bde995aa2fdcc4b800c70b5d92dd2c62abc5c60f679f8"
|
|
863
1020
|
|
|
864
1021
|
[[package]]
|
|
865
1022
|
name = "zstd"
|
pyvegh-0.7.0/Cargo.toml
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
[package]
|
|
2
|
+
name = "pyvegh"
|
|
3
|
+
version = "0.7.0"
|
|
4
|
+
edition = "2024"
|
|
5
|
+
authors = ["CodeTease"]
|
|
6
|
+
readme = "README.md"
|
|
7
|
+
|
|
8
|
+
[lib]
|
|
9
|
+
name = "pyvegh_core"
|
|
10
|
+
crate-type = ["cdylib"]
|
|
11
|
+
|
|
12
|
+
[dependencies]
|
|
13
|
+
pyo3 = { version = "0.27", features = ["extension-module", "abi3-py310"] }
|
|
14
|
+
|
|
15
|
+
# Core Logic Deps (Synced from Vegh 0.4.0)
|
|
16
|
+
tar = "0.4"
|
|
17
|
+
zstd = { version = "0.13", features = ["zstdmt"] }
|
|
18
|
+
ignore = "0.4"
|
|
19
|
+
|
|
20
|
+
# Hashing & CDC
|
|
21
|
+
blake3 = { version = "1.8", features = ["rayon", "mmap"] }
|
|
22
|
+
hex = "0.4"
|
|
23
|
+
memmap2 = "0.9"
|
|
24
|
+
fastcdc = "3.2.1" # Added for CDC support
|
|
25
|
+
|
|
26
|
+
# Storage & Cache
|
|
27
|
+
redb = "3.1.0" # Migrated from JSON cache to Embedded DB
|
|
28
|
+
bincode = "1.3" # Struct serialization
|
|
29
|
+
dashmap = "6.1.0" # Concurrent Map for Deduplication
|
|
30
|
+
|
|
31
|
+
# Utilities
|
|
32
|
+
anyhow = "1.0"
|
|
33
|
+
serde = { version = "1.0", features = ["derive"] }
|
|
34
|
+
serde_json = "1.0"
|
|
35
|
+
chrono = { version = "0.4", features = ["serde"] }
|
|
36
|
+
crossbeam-channel = "0.5" # Pipeline messaging
|
|
37
|
+
indicatif = "0.18"
|
|
@@ -1,3 +1,31 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: pyvegh
|
|
3
|
+
Version: 0.7.0
|
|
4
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
5
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
6
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
7
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.15
|
|
10
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
11
|
+
Classifier: Programming Language :: Rust
|
|
12
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
13
|
+
Classifier: Operating System :: OS Independent
|
|
14
|
+
Classifier: Topic :: Software Development :: Libraries
|
|
15
|
+
Classifier: Topic :: Utilities
|
|
16
|
+
Classifier: Intended Audience :: Developers
|
|
17
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
18
|
+
Requires-Dist: typer>=0.20.0
|
|
19
|
+
Requires-Dist: rich>=14.2.0
|
|
20
|
+
Requires-Dist: shellingham>=1.5.4
|
|
21
|
+
Requires-Dist: requests>=2.32.5
|
|
22
|
+
License-File: LICENSE
|
|
23
|
+
Summary: Python bindings for Vegh - The Snapshot Tool.
|
|
24
|
+
Keywords: snapshot,backup,rust,binding,loc,analytics
|
|
25
|
+
Author: CodeTease
|
|
26
|
+
Requires-Python: >=3.10
|
|
27
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
28
|
+
|
|
1
29
|
# 🥬 PyVegh
|
|
2
30
|
|
|
3
31
|
**PyVegh** is the official Python binding for the Vegh snapshot engine, developed by **CodeTease**.
|
|
@@ -9,7 +37,8 @@ It delivers the raw performance of Rust (Zstd multithreaded compression, Tar arc
|
|
|
9
37
|
## Features
|
|
10
38
|
|
|
11
39
|
* **Blazing Fast:** Core logic is implemented in Rust using PyO3, utilizing **Zstd Multithreading** and the next-gen **Blake3** hashing algorithm.
|
|
12
|
-
* **
|
|
40
|
+
* **AI-Ready Context:** Generate clean, token-optimized XML prompts for ChatGPT/Claude in milliseconds.
|
|
41
|
+
* **Analytics Dashboard:** Instantly visualize your project's Lines of Code (LOC) with a beautiful terminal dashboard, no extraction required.
|
|
13
42
|
* **Dry-Run Mode:** Simulate snapshot creation to check file sizes and detect sensitive data risks before packing.
|
|
14
43
|
* **Integrity v2:** Verify data integrity at lightning speed with **Blake3** and inspect metadata (author, timestamp, tool version) without unpacking.
|
|
15
44
|
* **Smart Upload:** Built-in `send` command supporting concurrent **Chunked Uploads** for large files.
|
|
@@ -22,7 +51,7 @@ It delivers the raw performance of Rust (Zstd multithreaded compression, Tar arc
|
|
|
22
51
|
Install directly from PyPI:
|
|
23
52
|
```bash
|
|
24
53
|
pip install pyvegh
|
|
25
|
-
|
|
54
|
+
```
|
|
26
55
|
|
|
27
56
|
Or build from source (requires Rust):
|
|
28
57
|
|
|
@@ -62,15 +91,49 @@ vegh snap ./my-project --output backup.vegh
|
|
|
62
91
|
vegh snap ./my-project --dry-run
|
|
63
92
|
```
|
|
64
93
|
|
|
65
|
-
### 3\.
|
|
94
|
+
### 3\. LOC
|
|
66
95
|
|
|
67
|
-
View the
|
|
96
|
+
View the Analytics Dashboard to break down your project by language and lines of code.
|
|
68
97
|
|
|
69
98
|
```bash
|
|
70
99
|
vegh loc backup.vegh
|
|
100
|
+
|
|
101
|
+
# Show Source Lines of Code (SLOC) instead of total LOC
|
|
102
|
+
# Excludes blank lines and comments
|
|
103
|
+
vegh loc backup.vegh --sloc
|
|
71
104
|
```
|
|
72
105
|
|
|
73
|
-
### 4\.
|
|
106
|
+
### 4\. Prompt
|
|
107
|
+
|
|
108
|
+
Generate a structured XML context of your codebase to feed directly into ChatGPT, Claude, or Gemini.
|
|
109
|
+
```bash
|
|
110
|
+
# Generate XML context to stdout
|
|
111
|
+
vegh prompt .
|
|
112
|
+
|
|
113
|
+
# Clean Mode (Recommended):
|
|
114
|
+
# Removes lock files (package-lock.json, Cargo.lock), logs, secrets and other unnecessary files.
|
|
115
|
+
vegh prompt . --clean
|
|
116
|
+
|
|
117
|
+
# Copy to Clipboard (One-shot):
|
|
118
|
+
vegh prompt . --clean --copy
|
|
119
|
+
|
|
120
|
+
# Save to file
|
|
121
|
+
vegh prompt . --clean --output context.xml
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### 5\. Prune
|
|
125
|
+
|
|
126
|
+
Clean up old snapshots to free disk space.
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
# Keep only the 5 most recent snapshots in the current directory
|
|
130
|
+
vegh prune --keep 5
|
|
131
|
+
|
|
132
|
+
# Force clean without confirmation (useful for CI/CD)
|
|
133
|
+
vegh prune --keep 1 --force
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### 6\. Check
|
|
74
137
|
|
|
75
138
|
Check file integrity (Blake3) and view embedded metadata.
|
|
76
139
|
|
|
@@ -78,7 +141,7 @@ Check file integrity (Blake3) and view embedded metadata.
|
|
|
78
141
|
vegh check backup.vegh
|
|
79
142
|
```
|
|
80
143
|
|
|
81
|
-
###
|
|
144
|
+
### 7\. Restore
|
|
82
145
|
|
|
83
146
|
Restore the snapshot to a target directory. Supports **Partial Restore**.
|
|
84
147
|
|
|
@@ -93,7 +156,7 @@ vegh restore backup.vegh ./restored-folder --path src/main.rs --path config/
|
|
|
93
156
|
vegh restore backup.vegh ./restored-folder --flatten
|
|
94
157
|
```
|
|
95
158
|
|
|
96
|
-
###
|
|
159
|
+
### 8\. Cat & Diff
|
|
97
160
|
|
|
98
161
|
Inspect content without extracting.
|
|
99
162
|
|
|
@@ -108,16 +171,16 @@ vegh cat backup.vegh image.png --raw > extracted_image.png
|
|
|
108
171
|
vegh diff backup.vegh ./current-project
|
|
109
172
|
```
|
|
110
173
|
|
|
111
|
-
###
|
|
174
|
+
### 9\. Send
|
|
112
175
|
|
|
113
|
-
Send the snapshot to a remote server.
|
|
176
|
+
Send the snapshot to a remote server. Supports **Chunked Uploads** for reliability.
|
|
114
177
|
|
|
115
178
|
```bash
|
|
116
179
|
# Auto-detects if chunking is needed, or force it:
|
|
117
180
|
vegh send backup.vegh --force-chunk
|
|
118
181
|
```
|
|
119
182
|
|
|
120
|
-
###
|
|
183
|
+
### 10\. Doctor
|
|
121
184
|
|
|
122
185
|
Check your environment and installation health.
|
|
123
186
|
|
|
@@ -125,7 +188,7 @@ Check your environment and installation health.
|
|
|
125
188
|
vegh doctor
|
|
126
189
|
```
|
|
127
190
|
|
|
128
|
-
###
|
|
191
|
+
### 11\. Hooks example
|
|
129
192
|
|
|
130
193
|
Create a `.veghhooks.json` in your workspace.
|
|
131
194
|
|
|
@@ -175,3 +238,4 @@ restore_snap("backup.vegh", "dest_folder")
|
|
|
175
238
|
## License
|
|
176
239
|
|
|
177
240
|
This project is under the **MIT License**.
|
|
241
|
+
|