linthis 0.0.1__tar.gz → 0.0.3__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 (68) hide show
  1. {linthis-0.0.1 → linthis-0.0.3}/Cargo.lock +365 -25
  2. {linthis-0.0.1 → linthis-0.0.3}/Cargo.toml +11 -1
  3. linthis-0.0.3/PKG-INFO +718 -0
  4. linthis-0.0.3/README.md +695 -0
  5. linthis-0.0.3/defaults/.clang-tidy +87 -0
  6. linthis-0.0.3/defaults/config.toml +88 -0
  7. linthis-0.0.3/dev.sh +116 -0
  8. linthis-0.0.3/docs/config-cli-design.md +499 -0
  9. linthis-0.0.3/docs/init-hooks-design.md +375 -0
  10. {linthis-0.0.1 → linthis-0.0.3}/pyproject.toml +1 -1
  11. linthis-0.0.3/src/checkers/cpp.rs +417 -0
  12. linthis-0.0.3/src/checkers/go.rs +261 -0
  13. {linthis-0.0.1 → linthis-0.0.3}/src/checkers/python.rs +13 -7
  14. linthis-0.0.3/src/checkers/rust.rs +198 -0
  15. linthis-0.0.3/src/config/cli.rs +569 -0
  16. {linthis-0.0.1 → linthis-0.0.3}/src/config/mod.rs +182 -18
  17. linthis-0.0.3/src/fixers/cpplint.rs +579 -0
  18. linthis-0.0.3/src/fixers/mod.rs +15 -0
  19. linthis-0.0.3/src/formatters/cpp.rs +316 -0
  20. {linthis-0.0.1 → linthis-0.0.3}/src/lib.rs +135 -22
  21. linthis-0.0.3/src/main.rs +3567 -0
  22. linthis-0.0.3/src/plugin/cache.rs +345 -0
  23. linthis-0.0.3/src/plugin/config_manager.rs +337 -0
  24. linthis-0.0.3/src/plugin/fetcher.rs +298 -0
  25. linthis-0.0.3/src/plugin/loader.rs +353 -0
  26. linthis-0.0.3/src/plugin/manifest.rs +228 -0
  27. linthis-0.0.3/src/plugin/mod.rs +138 -0
  28. linthis-0.0.3/src/plugin/registry.rs +158 -0
  29. {linthis-0.0.1 → linthis-0.0.3}/src/utils/mod.rs +3 -1
  30. {linthis-0.0.1 → linthis-0.0.3}/src/utils/output.rs +14 -2
  31. {linthis-0.0.1 → linthis-0.0.3}/src/utils/types.rs +12 -0
  32. linthis-0.0.3/test-plugin-check/README.md +12 -0
  33. linthis-0.0.3/test-plugin-check/linthis-plugin.toml +17 -0
  34. linthis-0.0.3/tests/fixtures/test-plugin/linthis-plugin.toml +20 -0
  35. linthis-0.0.3/tests/fixtures/test-plugin/python/ruff.toml +6 -0
  36. linthis-0.0.3/tests/fixtures/test-plugin/rust/clippy.toml +2 -0
  37. linthis-0.0.3/tests/fixtures/test-plugin/rust/rustfmt.toml +4 -0
  38. linthis-0.0.1/PKG-INFO +0 -115
  39. linthis-0.0.1/README.md +0 -92
  40. linthis-0.0.1/defaults/config.toml +0 -63
  41. linthis-0.0.1/src/checkers/cpp.rs +0 -134
  42. linthis-0.0.1/src/checkers/go.rs +0 -119
  43. linthis-0.0.1/src/checkers/rust.rs +0 -132
  44. linthis-0.0.1/src/formatters/cpp.rs +0 -105
  45. linthis-0.0.1/src/main.rs +0 -445
  46. {linthis-0.0.1 → linthis-0.0.3}/.github/workflows/release.yml +0 -0
  47. {linthis-0.0.1 → linthis-0.0.3}/.gitignore +0 -0
  48. {linthis-0.0.1 → linthis-0.0.3}/CHANGELOG.md +0 -0
  49. {linthis-0.0.1 → linthis-0.0.3}/docs/plan-ruff-integration.md +0 -0
  50. {linthis-0.0.1 → linthis-0.0.3}/docs/tasks.md +0 -0
  51. {linthis-0.0.1 → linthis-0.0.3}/src/benchmark.rs +0 -0
  52. {linthis-0.0.1 → linthis-0.0.3}/src/checkers/java.rs +0 -0
  53. {linthis-0.0.1 → linthis-0.0.3}/src/checkers/mod.rs +0 -0
  54. {linthis-0.0.1 → linthis-0.0.3}/src/checkers/traits.rs +0 -0
  55. {linthis-0.0.1 → linthis-0.0.3}/src/checkers/typescript.rs +0 -0
  56. {linthis-0.0.1 → linthis-0.0.3}/src/formatters/go.rs +0 -0
  57. {linthis-0.0.1 → linthis-0.0.3}/src/formatters/java.rs +0 -0
  58. {linthis-0.0.1 → linthis-0.0.3}/src/formatters/mod.rs +0 -0
  59. {linthis-0.0.1 → linthis-0.0.3}/src/formatters/python.rs +0 -0
  60. {linthis-0.0.1 → linthis-0.0.3}/src/formatters/rust.rs +0 -0
  61. {linthis-0.0.1 → linthis-0.0.3}/src/formatters/traits.rs +0 -0
  62. {linthis-0.0.1 → linthis-0.0.3}/src/formatters/typescript.rs +0 -0
  63. {linthis-0.0.1 → linthis-0.0.3}/src/presets/mod.rs +0 -0
  64. {linthis-0.0.1 → linthis-0.0.3}/src/utils/language.rs +0 -0
  65. {linthis-0.0.1 → linthis-0.0.3}/src/utils/walker.rs +0 -0
  66. {linthis-0.0.1 → linthis-0.0.3}/tests/fixtures/us1/good.rs +0 -0
  67. {linthis-0.0.1 → linthis-0.0.3}/tests/fixtures/us1/unformatted.rs +0 -0
  68. {linthis-0.0.1 → linthis-0.0.3}/tests/integration/mod.rs +0 -0
@@ -1,23 +1,23 @@
1
1
  # This file is automatically @generated by Cargo.
2
2
  # It is not intended for manual editing.
3
- version = 3
3
+ version = 4
4
4
 
5
5
  [[package]]
6
6
  name = "aho-corasick"
7
- version = "0.7.20"
7
+ version = "1.1.4"
8
8
  source = "registry+https://github.com/rust-lang/crates.io-index"
9
- checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
9
+ checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301"
10
10
  dependencies = [
11
11
  "memchr",
12
12
  ]
13
13
 
14
14
  [[package]]
15
- name = "aho-corasick"
16
- version = "1.1.4"
15
+ name = "android_system_properties"
16
+ version = "0.1.5"
17
17
  source = "registry+https://github.com/rust-lang/crates.io-index"
18
- checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301"
18
+ checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
19
19
  dependencies = [
20
- "memchr",
20
+ "libc",
21
21
  ]
22
22
 
23
23
  [[package]]
@@ -106,20 +106,50 @@ checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3"
106
106
 
107
107
  [[package]]
108
108
  name = "bstr"
109
- version = "1.6.0"
109
+ version = "1.12.1"
110
110
  source = "registry+https://github.com/rust-lang/crates.io-index"
111
- checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05"
111
+ checksum = "63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab"
112
112
  dependencies = [
113
113
  "memchr",
114
114
  "serde",
115
115
  ]
116
116
 
117
+ [[package]]
118
+ name = "bumpalo"
119
+ version = "3.19.1"
120
+ source = "registry+https://github.com/rust-lang/crates.io-index"
121
+ checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510"
122
+
123
+ [[package]]
124
+ name = "cc"
125
+ version = "1.2.50"
126
+ source = "registry+https://github.com/rust-lang/crates.io-index"
127
+ checksum = "9f50d563227a1c37cc0a263f64eca3334388c01c5e4c4861a9def205c614383c"
128
+ dependencies = [
129
+ "find-msvc-tools",
130
+ "shlex",
131
+ ]
132
+
117
133
  [[package]]
118
134
  name = "cfg-if"
119
135
  version = "1.0.4"
120
136
  source = "registry+https://github.com/rust-lang/crates.io-index"
121
137
  checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
122
138
 
139
+ [[package]]
140
+ name = "chrono"
141
+ version = "0.4.42"
142
+ source = "registry+https://github.com/rust-lang/crates.io-index"
143
+ checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2"
144
+ dependencies = [
145
+ "iana-time-zone",
146
+ "js-sys",
147
+ "num-traits",
148
+ "serde",
149
+ "wasm-bindgen",
150
+ "windows-link",
151
+ ]
152
+
123
153
  [[package]]
124
154
  name = "clap"
125
155
  version = "4.3.0"
@@ -179,6 +209,12 @@ dependencies = [
179
209
  "winapi",
180
210
  ]
181
211
 
212
+ [[package]]
213
+ name = "core-foundation-sys"
214
+ version = "0.8.7"
215
+ source = "registry+https://github.com/rust-lang/crates.io-index"
216
+ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
217
+
182
218
  [[package]]
183
219
  name = "crossbeam-channel"
184
220
  version = "0.5.15"
@@ -213,6 +249,27 @@ version = "0.8.21"
213
249
  source = "registry+https://github.com/rust-lang/crates.io-index"
214
250
  checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
215
251
 
252
+ [[package]]
253
+ name = "directories"
254
+ version = "5.0.1"
255
+ source = "registry+https://github.com/rust-lang/crates.io-index"
256
+ checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35"
257
+ dependencies = [
258
+ "dirs-sys",
259
+ ]
260
+
261
+ [[package]]
262
+ name = "dirs-sys"
263
+ version = "0.4.1"
264
+ source = "registry+https://github.com/rust-lang/crates.io-index"
265
+ checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c"
266
+ dependencies = [
267
+ "libc",
268
+ "option-ext",
269
+ "redox_users",
270
+ "windows-sys 0.48.0",
271
+ ]
272
+
216
273
  [[package]]
217
274
  name = "either"
218
275
  version = "1.15.0"
@@ -232,6 +289,12 @@ dependencies = [
232
289
  "termcolor",
233
290
  ]
234
291
 
292
+ [[package]]
293
+ name = "equivalent"
294
+ version = "1.0.2"
295
+ source = "registry+https://github.com/rust-lang/crates.io-index"
296
+ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
297
+
235
298
  [[package]]
236
299
  name = "errno"
237
300
  version = "0.3.14"
@@ -249,10 +312,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
249
312
  checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
250
313
 
251
314
  [[package]]
252
- name = "fnv"
253
- version = "1.0.7"
315
+ name = "find-msvc-tools"
316
+ version = "0.1.5"
317
+ source = "registry+https://github.com/rust-lang/crates.io-index"
318
+ checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844"
319
+
320
+ [[package]]
321
+ name = "fs2"
322
+ version = "0.4.3"
323
+ source = "registry+https://github.com/rust-lang/crates.io-index"
324
+ checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213"
325
+ dependencies = [
326
+ "libc",
327
+ "winapi",
328
+ ]
329
+
330
+ [[package]]
331
+ name = "getrandom"
332
+ version = "0.2.16"
254
333
  source = "registry+https://github.com/rust-lang/crates.io-index"
255
- checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
334
+ checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592"
335
+ dependencies = [
336
+ "cfg-if",
337
+ "libc",
338
+ "wasi",
339
+ ]
256
340
 
257
341
  [[package]]
258
342
  name = "getrandom"
@@ -268,15 +352,15 @@ dependencies = [
268
352
 
269
353
  [[package]]
270
354
  name = "globset"
271
- version = "0.4.10"
355
+ version = "0.4.14"
272
356
  source = "registry+https://github.com/rust-lang/crates.io-index"
273
- checksum = "029d74589adefde59de1a0c4f4732695c32805624aec7b68d91503d4dba79afc"
357
+ checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1"
274
358
  dependencies = [
275
- "aho-corasick 0.7.20",
359
+ "aho-corasick",
276
360
  "bstr",
277
- "fnv",
278
361
  "log",
279
- "regex",
362
+ "regex-automata",
363
+ "regex-syntax 0.8.8",
280
364
  ]
281
365
 
282
366
  [[package]]
@@ -285,6 +369,12 @@ version = "0.12.3"
285
369
  source = "registry+https://github.com/rust-lang/crates.io-index"
286
370
  checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
287
371
 
372
+ [[package]]
373
+ name = "hashbrown"
374
+ version = "0.16.1"
375
+ source = "registry+https://github.com/rust-lang/crates.io-index"
376
+ checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
377
+
288
378
  [[package]]
289
379
  name = "heck"
290
380
  version = "0.4.1"
@@ -312,6 +402,30 @@ version = "2.3.0"
312
402
  source = "registry+https://github.com/rust-lang/crates.io-index"
313
403
  checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424"
314
404
 
405
+ [[package]]
406
+ name = "iana-time-zone"
407
+ version = "0.1.64"
408
+ source = "registry+https://github.com/rust-lang/crates.io-index"
409
+ checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb"
410
+ dependencies = [
411
+ "android_system_properties",
412
+ "core-foundation-sys",
413
+ "iana-time-zone-haiku",
414
+ "js-sys",
415
+ "log",
416
+ "wasm-bindgen",
417
+ "windows-core",
418
+ ]
419
+
420
+ [[package]]
421
+ name = "iana-time-zone-haiku"
422
+ version = "0.1.2"
423
+ source = "registry+https://github.com/rust-lang/crates.io-index"
424
+ checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
425
+ dependencies = [
426
+ "cc",
427
+ ]
428
+
315
429
  [[package]]
316
430
  name = "indexmap"
317
431
  version = "1.9.3"
@@ -319,7 +433,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
319
433
  checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
320
434
  dependencies = [
321
435
  "autocfg",
322
- "hashbrown",
436
+ "hashbrown 0.12.3",
437
+ ]
438
+
439
+ [[package]]
440
+ name = "indexmap"
441
+ version = "2.12.1"
442
+ source = "registry+https://github.com/rust-lang/crates.io-index"
443
+ checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2"
444
+ dependencies = [
445
+ "equivalent",
446
+ "hashbrown 0.16.1",
323
447
  ]
324
448
 
325
449
  [[package]]
@@ -339,6 +463,16 @@ version = "1.0.15"
339
463
  source = "registry+https://github.com/rust-lang/crates.io-index"
340
464
  checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c"
341
465
 
466
+ [[package]]
467
+ name = "js-sys"
468
+ version = "0.3.83"
469
+ source = "registry+https://github.com/rust-lang/crates.io-index"
470
+ checksum = "464a3709c7f55f1f721e5389aa6ea4e3bc6aba669353300af094b29ffbdde1d8"
471
+ dependencies = [
472
+ "once_cell",
473
+ "wasm-bindgen",
474
+ ]
475
+
342
476
  [[package]]
343
477
  name = "lazy_static"
344
478
  version = "1.4.0"
@@ -351,14 +485,27 @@ version = "0.2.178"
351
485
  source = "registry+https://github.com/rust-lang/crates.io-index"
352
486
  checksum = "37c93d8daa9d8a012fd8ab92f088405fb202ea0b6ab73ee2482ae66af4f42091"
353
487
 
488
+ [[package]]
489
+ name = "libredox"
490
+ version = "0.1.11"
491
+ source = "registry+https://github.com/rust-lang/crates.io-index"
492
+ checksum = "df15f6eac291ed1cf25865b1ee60399f57e7c227e7f51bdbd4c5270396a9ed50"
493
+ dependencies = [
494
+ "bitflags 2.10.0",
495
+ "libc",
496
+ ]
497
+
354
498
  [[package]]
355
499
  name = "linthis"
356
- version = "0.0.1"
500
+ version = "0.0.3"
357
501
  dependencies = [
358
502
  "anyhow",
503
+ "chrono",
359
504
  "clap",
360
505
  "colored",
506
+ "directories",
361
507
  "env_logger",
508
+ "fs2",
362
509
  "globset",
363
510
  "lazy_static",
364
511
  "log",
@@ -370,6 +517,7 @@ dependencies = [
370
517
  "tempfile",
371
518
  "thiserror",
372
519
  "toml",
520
+ "toml_edit",
373
521
  "walkdir",
374
522
  ]
375
523
 
@@ -381,9 +529,9 @@ checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039"
381
529
 
382
530
  [[package]]
383
531
  name = "log"
384
- version = "0.4.18"
532
+ version = "0.4.29"
385
533
  source = "registry+https://github.com/rust-lang/crates.io-index"
386
- checksum = "518ef76f2f87365916b142844c16d8fefd85039bc5699050210a7778ee1cd1de"
534
+ checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897"
387
535
 
388
536
  [[package]]
389
537
  name = "memchr"
@@ -391,6 +539,15 @@ version = "2.7.6"
391
539
  source = "registry+https://github.com/rust-lang/crates.io-index"
392
540
  checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273"
393
541
 
542
+ [[package]]
543
+ name = "num-traits"
544
+ version = "0.2.19"
545
+ source = "registry+https://github.com/rust-lang/crates.io-index"
546
+ checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
547
+ dependencies = [
548
+ "autocfg",
549
+ ]
550
+
394
551
  [[package]]
395
552
  name = "num_cpus"
396
553
  version = "1.17.0"
@@ -407,6 +564,12 @@ version = "1.21.3"
407
564
  source = "registry+https://github.com/rust-lang/crates.io-index"
408
565
  checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
409
566
 
567
+ [[package]]
568
+ name = "option-ext"
569
+ version = "0.2.0"
570
+ source = "registry+https://github.com/rust-lang/crates.io-index"
571
+ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
572
+
410
573
  [[package]]
411
574
  name = "proc-macro2"
412
575
  version = "1.0.103"
@@ -453,15 +616,37 @@ dependencies = [
453
616
  "num_cpus",
454
617
  ]
455
618
 
619
+ [[package]]
620
+ name = "redox_users"
621
+ version = "0.4.6"
622
+ source = "registry+https://github.com/rust-lang/crates.io-index"
623
+ checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43"
624
+ dependencies = [
625
+ "getrandom 0.2.16",
626
+ "libredox",
627
+ "thiserror",
628
+ ]
629
+
456
630
  [[package]]
457
631
  name = "regex"
458
632
  version = "1.8.4"
459
633
  source = "registry+https://github.com/rust-lang/crates.io-index"
460
634
  checksum = "d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f"
461
635
  dependencies = [
462
- "aho-corasick 1.1.4",
636
+ "aho-corasick",
463
637
  "memchr",
464
- "regex-syntax",
638
+ "regex-syntax 0.7.5",
639
+ ]
640
+
641
+ [[package]]
642
+ name = "regex-automata"
643
+ version = "0.4.13"
644
+ source = "registry+https://github.com/rust-lang/crates.io-index"
645
+ checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c"
646
+ dependencies = [
647
+ "aho-corasick",
648
+ "memchr",
649
+ "regex-syntax 0.8.8",
465
650
  ]
466
651
 
467
652
  [[package]]
@@ -470,6 +655,12 @@ version = "0.7.5"
470
655
  source = "registry+https://github.com/rust-lang/crates.io-index"
471
656
  checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da"
472
657
 
658
+ [[package]]
659
+ name = "regex-syntax"
660
+ version = "0.8.8"
661
+ source = "registry+https://github.com/rust-lang/crates.io-index"
662
+ checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58"
663
+
473
664
  [[package]]
474
665
  name = "rustix"
475
666
  version = "1.1.2"
@@ -483,6 +674,12 @@ dependencies = [
483
674
  "windows-sys 0.61.2",
484
675
  ]
485
676
 
677
+ [[package]]
678
+ name = "rustversion"
679
+ version = "1.0.22"
680
+ source = "registry+https://github.com/rust-lang/crates.io-index"
681
+ checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"
682
+
486
683
  [[package]]
487
684
  name = "ryu"
488
685
  version = "1.0.20"
@@ -535,13 +732,19 @@ version = "0.9.17"
535
732
  source = "registry+https://github.com/rust-lang/crates.io-index"
536
733
  checksum = "8fb06d4b6cdaef0e0c51fa881acb721bed3c924cfaa71d9c94a3b771dfdf6567"
537
734
  dependencies = [
538
- "indexmap",
735
+ "indexmap 1.9.3",
539
736
  "itoa",
540
737
  "ryu",
541
738
  "serde",
542
739
  "unsafe-libyaml",
543
740
  ]
544
741
 
742
+ [[package]]
743
+ name = "shlex"
744
+ version = "1.3.0"
745
+ source = "registry+https://github.com/rust-lang/crates.io-index"
746
+ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
747
+
545
748
  [[package]]
546
749
  name = "strsim"
547
750
  version = "0.10.0"
@@ -566,7 +769,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
566
769
  checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16"
567
770
  dependencies = [
568
771
  "fastrand",
569
- "getrandom",
772
+ "getrandom 0.3.4",
570
773
  "once_cell",
571
774
  "rustix",
572
775
  "windows-sys 0.61.2",
@@ -610,6 +813,30 @@ dependencies = [
610
813
  "serde",
611
814
  ]
612
815
 
816
+ [[package]]
817
+ name = "toml_datetime"
818
+ version = "0.6.11"
819
+ source = "registry+https://github.com/rust-lang/crates.io-index"
820
+ checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c"
821
+
822
+ [[package]]
823
+ name = "toml_edit"
824
+ version = "0.22.27"
825
+ source = "registry+https://github.com/rust-lang/crates.io-index"
826
+ checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a"
827
+ dependencies = [
828
+ "indexmap 2.12.1",
829
+ "toml_datetime",
830
+ "toml_write",
831
+ "winnow",
832
+ ]
833
+
834
+ [[package]]
835
+ name = "toml_write"
836
+ version = "0.1.2"
837
+ source = "registry+https://github.com/rust-lang/crates.io-index"
838
+ checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801"
839
+
613
840
  [[package]]
614
841
  name = "unicode-ident"
615
842
  version = "1.0.22"
@@ -638,6 +865,12 @@ dependencies = [
638
865
  "winapi-util",
639
866
  ]
640
867
 
868
+ [[package]]
869
+ name = "wasi"
870
+ version = "0.11.1+wasi-snapshot-preview1"
871
+ source = "registry+https://github.com/rust-lang/crates.io-index"
872
+ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
873
+
641
874
  [[package]]
642
875
  name = "wasip2"
643
876
  version = "1.0.1+wasi-0.2.4"
@@ -647,6 +880,51 @@ dependencies = [
647
880
  "wit-bindgen",
648
881
  ]
649
882
 
883
+ [[package]]
884
+ name = "wasm-bindgen"
885
+ version = "0.2.106"
886
+ source = "registry+https://github.com/rust-lang/crates.io-index"
887
+ checksum = "0d759f433fa64a2d763d1340820e46e111a7a5ab75f993d1852d70b03dbb80fd"
888
+ dependencies = [
889
+ "cfg-if",
890
+ "once_cell",
891
+ "rustversion",
892
+ "wasm-bindgen-macro",
893
+ "wasm-bindgen-shared",
894
+ ]
895
+
896
+ [[package]]
897
+ name = "wasm-bindgen-macro"
898
+ version = "0.2.106"
899
+ source = "registry+https://github.com/rust-lang/crates.io-index"
900
+ checksum = "48cb0d2638f8baedbc542ed444afc0644a29166f1595371af4fecf8ce1e7eeb3"
901
+ dependencies = [
902
+ "quote",
903
+ "wasm-bindgen-macro-support",
904
+ ]
905
+
906
+ [[package]]
907
+ name = "wasm-bindgen-macro-support"
908
+ version = "0.2.106"
909
+ source = "registry+https://github.com/rust-lang/crates.io-index"
910
+ checksum = "cefb59d5cd5f92d9dcf80e4683949f15ca4b511f4ac0a6e14d4e1ac60c6ecd40"
911
+ dependencies = [
912
+ "bumpalo",
913
+ "proc-macro2",
914
+ "quote",
915
+ "syn",
916
+ "wasm-bindgen-shared",
917
+ ]
918
+
919
+ [[package]]
920
+ name = "wasm-bindgen-shared"
921
+ version = "0.2.106"
922
+ source = "registry+https://github.com/rust-lang/crates.io-index"
923
+ checksum = "cbc538057e648b67f72a982e708d485b2efa771e1ac05fec311f9f63e5800db4"
924
+ dependencies = [
925
+ "unicode-ident",
926
+ ]
927
+
650
928
  [[package]]
651
929
  name = "winapi"
652
930
  version = "0.3.9"
@@ -678,12 +956,65 @@ version = "0.4.0"
678
956
  source = "registry+https://github.com/rust-lang/crates.io-index"
679
957
  checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
680
958
 
959
+ [[package]]
960
+ name = "windows-core"
961
+ version = "0.62.2"
962
+ source = "registry+https://github.com/rust-lang/crates.io-index"
963
+ checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb"
964
+ dependencies = [
965
+ "windows-implement",
966
+ "windows-interface",
967
+ "windows-link",
968
+ "windows-result",
969
+ "windows-strings",
970
+ ]
971
+
972
+ [[package]]
973
+ name = "windows-implement"
974
+ version = "0.60.2"
975
+ source = "registry+https://github.com/rust-lang/crates.io-index"
976
+ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf"
977
+ dependencies = [
978
+ "proc-macro2",
979
+ "quote",
980
+ "syn",
981
+ ]
982
+
983
+ [[package]]
984
+ name = "windows-interface"
985
+ version = "0.59.3"
986
+ source = "registry+https://github.com/rust-lang/crates.io-index"
987
+ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358"
988
+ dependencies = [
989
+ "proc-macro2",
990
+ "quote",
991
+ "syn",
992
+ ]
993
+
681
994
  [[package]]
682
995
  name = "windows-link"
683
996
  version = "0.2.1"
684
997
  source = "registry+https://github.com/rust-lang/crates.io-index"
685
998
  checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
686
999
 
1000
+ [[package]]
1001
+ name = "windows-result"
1002
+ version = "0.4.1"
1003
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1004
+ checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5"
1005
+ dependencies = [
1006
+ "windows-link",
1007
+ ]
1008
+
1009
+ [[package]]
1010
+ name = "windows-strings"
1011
+ version = "0.5.1"
1012
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1013
+ checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091"
1014
+ dependencies = [
1015
+ "windows-link",
1016
+ ]
1017
+
687
1018
  [[package]]
688
1019
  name = "windows-sys"
689
1020
  version = "0.48.0"
@@ -759,6 +1090,15 @@ version = "0.48.5"
759
1090
  source = "registry+https://github.com/rust-lang/crates.io-index"
760
1091
  checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
761
1092
 
1093
+ [[package]]
1094
+ name = "winnow"
1095
+ version = "0.7.14"
1096
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1097
+ checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829"
1098
+ dependencies = [
1099
+ "memchr",
1100
+ ]
1101
+
762
1102
  [[package]]
763
1103
  name = "wit-bindgen"
764
1104
  version = "0.46.0"
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "linthis"
3
- version = "0.0.1"
3
+ version = "0.0.3"
4
4
  edition = "2021"
5
5
  authors = ["zhlinh"]
6
6
  description = "A fast, cross-platform multi-language linter and formatter"
@@ -25,6 +25,7 @@ serde = { version = "1.0", features = ["derive"] }
25
25
  serde_json = "1.0"
26
26
  serde_yaml = "0.9"
27
27
  toml = "0.5"
28
+ toml_edit = "0.22" # For preserving TOML format when editing config files
28
29
 
29
30
  # File system
30
31
  walkdir = "2.3"
@@ -48,6 +49,15 @@ lazy_static = "1.4"
48
49
  log = "0.4"
49
50
  env_logger = "0.10"
50
51
 
52
+ # Platform directories (for plugin cache)
53
+ directories = "5.0"
54
+
55
+ # Date/time (for plugin metadata)
56
+ chrono = { version = "0.4", features = ["serde"] }
57
+
58
+ # File locking (for cache operations)
59
+ fs2 = "0.4"
60
+
51
61
  [dev-dependencies]
52
62
  tempfile = "3"
53
63