dotenv-diff 2.4.7 → 2.4.9

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 (97) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/src/cli/run.js +2 -2
  3. package/dist/src/cli/run.js.map +1 -1
  4. package/dist/src/commands/compare.js +1 -1
  5. package/dist/src/commands/compare.js.map +1 -1
  6. package/dist/src/commands/ensureFilesOrPrompt.d.ts +22 -0
  7. package/dist/src/commands/ensureFilesOrPrompt.d.ts.map +1 -0
  8. package/dist/src/commands/ensureFilesOrPrompt.js +76 -0
  9. package/dist/src/commands/ensureFilesOrPrompt.js.map +1 -0
  10. package/dist/src/commands/scanUsage.js +6 -6
  11. package/dist/src/commands/scanUsage.js.map +1 -1
  12. package/dist/src/config/types.d.ts +3 -2
  13. package/dist/src/config/types.d.ts.map +1 -1
  14. package/dist/src/config/types.js +2 -2
  15. package/dist/src/config/types.js.map +1 -1
  16. package/dist/src/core/computeHealthScore.d.ts.map +1 -1
  17. package/dist/src/core/computeHealthScore.js +3 -0
  18. package/dist/src/core/computeHealthScore.js.map +1 -1
  19. package/dist/src/core/detectInconsistentNaming.js +0 -7
  20. package/dist/src/core/detectInconsistentNaming.js.map +1 -1
  21. package/dist/src/core/duplicates.d.ts +5 -4
  22. package/dist/src/core/duplicates.d.ts.map +1 -0
  23. package/dist/src/core/duplicates.js +5 -2
  24. package/dist/src/core/duplicates.js.map +1 -0
  25. package/dist/src/core/envDiscovery.d.ts +19 -0
  26. package/dist/src/core/envDiscovery.d.ts.map +1 -0
  27. package/dist/src/core/envDiscovery.js +81 -0
  28. package/dist/src/core/envDiscovery.js.map +1 -0
  29. package/dist/src/core/exampleSecretDetector.d.ts.map +1 -1
  30. package/dist/src/core/exampleSecretDetector.js +2 -2
  31. package/dist/src/core/exampleSecretDetector.js.map +1 -1
  32. package/dist/src/core/frameworks/frameworkDetector.d.ts +14 -0
  33. package/dist/src/core/frameworks/frameworkDetector.d.ts.map +1 -0
  34. package/dist/src/core/frameworks/frameworkDetector.js +40 -0
  35. package/dist/src/core/frameworks/frameworkDetector.js.map +1 -0
  36. package/dist/src/core/frameworks/frameworkValidator.d.ts +10 -0
  37. package/dist/src/core/frameworks/frameworkValidator.d.ts.map +1 -0
  38. package/dist/src/core/frameworks/frameworkValidator.js +21 -0
  39. package/dist/src/core/frameworks/frameworkValidator.js.map +1 -0
  40. package/dist/src/core/frameworks/nextJsRules.d.ts.map +1 -1
  41. package/dist/src/core/frameworks/nextJsRules.js +4 -28
  42. package/dist/src/core/frameworks/nextJsRules.js.map +1 -1
  43. package/dist/src/core/frameworks/sveltekitRules.d.ts.map +1 -1
  44. package/dist/src/core/frameworks/sveltekitRules.js +37 -30
  45. package/dist/src/core/frameworks/sveltekitRules.js.map +1 -1
  46. package/dist/src/core/parseEnv.d.ts.map +1 -1
  47. package/dist/src/core/parseEnv.js +19 -1
  48. package/dist/src/core/parseEnv.js.map +1 -1
  49. package/dist/src/core/patterns.d.ts.map +1 -1
  50. package/dist/src/core/patterns.js +24 -1
  51. package/dist/src/core/patterns.js.map +1 -1
  52. package/dist/src/core/processComparisonFile.js +1 -1
  53. package/dist/src/core/processComparisonFile.js.map +1 -1
  54. package/dist/src/core/scan/scanJsonOutput.d.ts +85 -0
  55. package/dist/src/core/scan/scanJsonOutput.d.ts.map +1 -0
  56. package/dist/src/core/scan/scanJsonOutput.js +97 -0
  57. package/dist/src/core/scan/scanJsonOutput.js.map +1 -0
  58. package/dist/src/core/scan/secretDetectors.d.ts +28 -0
  59. package/dist/src/core/scan/secretDetectors.d.ts.map +1 -0
  60. package/dist/src/core/scan/secretDetectors.js +272 -0
  61. package/dist/src/core/scan/secretDetectors.js.map +1 -0
  62. package/dist/src/core/scanFile.d.ts.map +1 -1
  63. package/dist/src/core/scanFile.js +11 -1
  64. package/dist/src/core/scanFile.js.map +1 -1
  65. package/dist/src/core/security/entropy.d.ts +8 -0
  66. package/dist/src/core/security/entropy.d.ts.map +1 -0
  67. package/dist/src/core/security/entropy.js +23 -0
  68. package/dist/src/core/security/entropy.js.map +1 -0
  69. package/dist/src/core/security/exampleSecretDetector.d.ts +13 -0
  70. package/dist/src/core/security/exampleSecretDetector.d.ts.map +1 -0
  71. package/dist/src/core/security/exampleSecretDetector.js +61 -0
  72. package/dist/src/core/security/exampleSecretDetector.js.map +1 -0
  73. package/dist/src/core/security/secretDetectors.d.ts +28 -0
  74. package/dist/src/core/security/secretDetectors.d.ts.map +1 -0
  75. package/dist/src/core/security/secretDetectors.js +292 -0
  76. package/dist/src/core/security/secretDetectors.js.map +1 -0
  77. package/dist/src/index.js +0 -7
  78. package/dist/src/index.js.map +1 -1
  79. package/dist/src/services/printScanResult.d.ts +17 -0
  80. package/dist/src/services/printScanResult.d.ts.map +1 -0
  81. package/dist/src/services/printScanResult.js +127 -0
  82. package/dist/src/services/printScanResult.js.map +1 -0
  83. package/dist/src/services/scanCodebase.d.ts +8 -0
  84. package/dist/src/services/scanCodebase.d.ts.map +1 -0
  85. package/dist/src/services/scanCodebase.js +110 -0
  86. package/dist/src/services/scanCodebase.js.map +1 -0
  87. package/dist/src/ui/scan/printConsolelogWarning.d.ts.map +1 -1
  88. package/dist/src/ui/scan/printConsolelogWarning.js +5 -4
  89. package/dist/src/ui/scan/printConsolelogWarning.js.map +1 -1
  90. package/dist/src/ui/scan/printExampleWarnings.d.ts +1 -1
  91. package/dist/src/ui/scan/printExampleWarnings.d.ts.map +1 -1
  92. package/dist/src/ui/scan/printFrameworkWarnings.d.ts.map +1 -1
  93. package/dist/src/ui/scan/printFrameworkWarnings.js +4 -2
  94. package/dist/src/ui/scan/printFrameworkWarnings.js.map +1 -1
  95. package/dist/src/ui/scan/printSecrets.d.ts +1 -1
  96. package/dist/src/ui/scan/printSecrets.d.ts.map +1 -1
  97. package/package.json +8 -6
@@ -1 +1 @@
1
- {"version":3,"file":"printConsolelogWarning.js","sourceRoot":"","sources":["../../../../src/ui/scan/printConsolelogWarning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAkB,EAClB,IAAa;IAEb,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IACvB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEjD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,8CAA8C,CAAC,CAAC,CAAC;IAE1E,yBAAyB;IACzB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,KAAe,EAAE,EAAE;QACrE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;YAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QACnD,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE9C,MAAM,OAAO,GAAG,CAAC,CAAC;QAElB,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACzC,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,cAAc,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CACpE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,MAAM,GAAG,OAAO,iBAAiB,CAAC,CACrE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"printConsolelogWarning.js","sourceRoot":"","sources":["../../../../src/ui/scan/printConsolelogWarning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAkB,EAClB,IAAa;IAEb,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IACvB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEjD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,8CAA8C,CAAC,CAAC,CAAC;IAE1E,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAmB,EAAE,KAAK,EAAE,EAAE;QAC3D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;YAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QACnD,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE9C,gDAAgD;QAChD,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAChE,CAAC;QAEF,MAAM,OAAO,GAAG,CAAC,CAAC;QAElB,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC/C,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,cAAc,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CACpE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,YAAY,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,gBAAgB,YAAY,CAAC,MAAM,GAAG,OAAO,iBAAiB,CAC/D,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ExampleSecretWarning } from '../../core/exampleSecretDetector';
1
+ import type { ExampleSecretWarning } from '../../core/security/exampleSecretDetector';
2
2
  /**
3
3
  * Prints example file secret warnings to the console.
4
4
  * @param warnings - List of example file secret warnings
@@ -1 +1 @@
1
- {"version":3,"file":"printExampleWarnings.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printExampleWarnings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAE7E;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,oBAAoB,EAAE,EAChC,IAAI,EAAE,OAAO,GACZ,IAAI,CAiBN"}
1
+ {"version":3,"file":"printExampleWarnings.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printExampleWarnings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEtF;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,oBAAoB,EAAE,EAChC,IAAI,EAAE,OAAO,GACZ,IAAI,CAiBN"}
@@ -1 +1 @@
1
- {"version":3,"file":"printFrameworkWarnings.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printFrameworkWarnings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,gBAAgB,EAEjB,MAAM,uBAAuB,CAAC;AAQ/B;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,IAAI,EAAE,OAAO,GACZ,IAAI,CAqBN"}
1
+ {"version":3,"file":"printFrameworkWarnings.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printFrameworkWarnings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,gBAAgB,EAEjB,MAAM,uBAAuB,CAAC;AAQ/B;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,IAAI,EAAE,OAAO,GACZ,IAAI,CA4BN"}
@@ -16,8 +16,10 @@ export function printFrameworkWarnings(warnings, json) {
16
16
  console.log(JSON.stringify({ frameworkWarnings: warnings }, null, 2));
17
17
  return;
18
18
  }
19
- console.log(chalk.yellow(`⚠️ Framework issues (${FRAMEWORK_LABELS[warnings[0]?.framework ?? 'unknown']}):`));
20
- for (const w of warnings) {
19
+ // Deduplicate warnings by variable + file + line + reason
20
+ const uniqueWarnings = Array.from(new Map(warnings.map((w) => [`${w.variable}:${w.file}:${w.line}:${w.reason}`, w])).values());
21
+ console.log(chalk.yellow(`⚠️ Framework issues (${FRAMEWORK_LABELS[uniqueWarnings[0]?.framework ?? 'unknown']}):`));
22
+ for (const w of uniqueWarnings) {
21
23
  console.log(chalk.yellow(` - ${w.variable} (${w.file}:${w.line}) → ${w.reason}`));
22
24
  }
23
25
  console.log();
@@ -1 +1 @@
1
- {"version":3,"file":"printFrameworkWarnings.js","sourceRoot":"","sources":["../../../../src/ui/scan/printFrameworkWarnings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,MAAM,gBAAgB,GAAsC;IAC1D,MAAM,EAAE,SAAS;IACjB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,mBAAmB;CAC7B,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAA4B,EAC5B,IAAa;IAEb,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAE/C,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,iBAAiB,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,yBAAyB,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,SAAS,CAAC,IAAI,CACnF,CACF,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,CACvE,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"printFrameworkWarnings.js","sourceRoot":"","sources":["../../../../src/ui/scan/printFrameworkWarnings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,MAAM,gBAAgB,GAAsC;IAC1D,MAAM,EAAE,SAAS;IACjB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,mBAAmB;CAC7B,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAA4B,EAC5B,IAAa;IAEb,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAE/C,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,iBAAiB,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IAED,0DAA0D;IAC1D,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAC/B,IAAI,GAAG,CACL,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAC1E,CAAC,MAAM,EAAE,CACX,CAAC;IAEF,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,yBAAyB,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,SAAS,CAAC,IAAI,CACzF,CACF,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,CACvE,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { SecretFinding } from '../../core/secretDetectors.js';
1
+ import type { SecretFinding } from '../../core/security/secretDetectors.js';
2
2
  /**
3
3
  * Print potential secrets detected in the codebase.
4
4
  * @param secrets - List of secret findings
@@ -1 +1 @@
1
- {"version":3,"file":"printSecrets.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printSecrets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AA8BnE;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAoC1E"}
1
+ {"version":3,"file":"printSecrets.d.ts","sourceRoot":"","sources":["../../../../src/ui/scan/printSecrets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AA8B5E;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAoC1E"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dotenv-diff",
3
- "version": "2.4.7",
3
+ "version": "2.4.9",
4
4
  "type": "module",
5
5
  "description": "Detects environment variable issues, usage, and potential security risks.",
6
6
  "bin": {
@@ -26,6 +26,7 @@
26
26
  "build": "tsc",
27
27
  "dev": "vitest --watch",
28
28
  "test": "vitest run",
29
+ "coverage": "vitest run --coverage",
29
30
  "test:unit": "vitest run test/unit",
30
31
  "test:e2e": "vitest run test/e2e",
31
32
  "lint": "eslint ./src --ext .ts",
@@ -54,7 +55,7 @@
54
55
  ],
55
56
  "repository": {
56
57
  "type": "git",
57
- "url": "https://github.com/Chrilleweb/dotenv-diff.git"
58
+ "url": "git+https://github.com/Chrilleweb/dotenv-diff.git"
58
59
  },
59
60
  "homepage": "https://dotenv-diff-docs.vercel.app",
60
61
  "bugs": {
@@ -69,12 +70,13 @@
69
70
  "prompts": "^2.4.2"
70
71
  },
71
72
  "devDependencies": {
72
- "@types/node": "^25.0.3",
73
- "@typescript-eslint/eslint-plugin": "^8.50.0",
74
- "@typescript-eslint/parser": "^8.50.0",
73
+ "@types/node": "^25.0.8",
74
+ "@typescript-eslint/eslint-plugin": "^8.53.0",
75
+ "@typescript-eslint/parser": "^8.53.0",
76
+ "@vitest/coverage-istanbul": "^4.0.17",
75
77
  "eslint": "^9.39.2",
76
78
  "prettier": "^3.7.4",
77
79
  "typescript": "^5.9.3",
78
- "vitest": "^4.0.16"
80
+ "vitest": "^4.0.17"
79
81
  }
80
82
  }