knip 6.35.1 → 6.37.0

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 (109) hide show
  1. package/dist/ConfigurationChief.d.ts +20 -2
  2. package/dist/ConfigurationChief.js +15 -1
  3. package/dist/DependencyDeputy.d.ts +0 -2
  4. package/dist/DependencyDeputy.js +1 -17
  5. package/dist/WorkspaceWorker.js +7 -6
  6. package/dist/binaries/bash-parser.js +1 -1
  7. package/dist/binaries/command.js +21 -10
  8. package/dist/binaries/fallback.js +5 -4
  9. package/dist/binaries/plugins.js +4 -4
  10. package/dist/binaries/resolvers/bun.js +2 -2
  11. package/dist/binaries/resolvers/find.js +5 -4
  12. package/dist/binaries/resolvers/index.d.ts +2 -1
  13. package/dist/binaries/resolvers/index.js +3 -2
  14. package/dist/binaries/resolvers/npm.js +46 -4
  15. package/dist/binaries/resolvers/npx.js +8 -4
  16. package/dist/binaries/resolvers/nub.js +3 -2
  17. package/dist/binaries/resolvers/pnpm.js +17 -10
  18. package/dist/binaries/resolvers/yarn.js +1 -1
  19. package/dist/binaries/util.d.ts +4 -1
  20. package/dist/binaries/util.js +2 -0
  21. package/dist/compilers/compilers.js +1 -1
  22. package/dist/compilers/scss.js +2 -2
  23. package/dist/graph-explorer/cache.d.ts +3 -0
  24. package/dist/graph-explorer/cache.js +6 -0
  25. package/dist/graph-explorer/explorer.d.ts +1 -0
  26. package/dist/graph-explorer/explorer.js +2 -0
  27. package/dist/graph-explorer/operations/build-exports-tree.js +14 -2
  28. package/dist/graph-explorer/operations/get-ambiguous-star-export.d.ts +8 -0
  29. package/dist/graph-explorer/operations/get-ambiguous-star-export.js +11 -0
  30. package/dist/graph-explorer/operations/get-contention.js +265 -122
  31. package/dist/graph-explorer/operations/resolve-export-origins.d.ts +32 -0
  32. package/dist/graph-explorer/operations/resolve-export-origins.js +255 -0
  33. package/dist/graph-explorer/utils.js +8 -0
  34. package/dist/manifest/index.js +1 -3
  35. package/dist/plugins/ava/index.js +1 -1
  36. package/dist/plugins/eslint/helpers.d.ts +2 -1
  37. package/dist/plugins/eslint/helpers.js +59 -14
  38. package/dist/plugins/eslint/index.js +2 -2
  39. package/dist/plugins/eslint/resolveFromAST.js +17 -11
  40. package/dist/plugins/eslint/types.d.ts +3 -3
  41. package/dist/plugins/github-actions/index.js +1 -1
  42. package/dist/plugins/graphql-codegen/index.js +15 -4
  43. package/dist/plugins/graphql-codegen/types.d.ts +11 -1
  44. package/dist/plugins/graphql-codegen/types.js +6 -0
  45. package/dist/plugins/husky/index.js +1 -1
  46. package/dist/plugins/index.d.ts +2 -0
  47. package/dist/plugins/index.js +4 -0
  48. package/dist/plugins/lefthook/index.js +1 -1
  49. package/dist/plugins/mise/scripts.js +5 -5
  50. package/dist/plugins/next/index.js +39 -5
  51. package/dist/plugins/node/index.js +6 -0
  52. package/dist/plugins/tailwind/compiler.js +2 -2
  53. package/dist/plugins/tailwind/index.js +7 -1
  54. package/dist/plugins/taskfile/index.js +1 -1
  55. package/dist/plugins/tauri/index.js +1 -1
  56. package/dist/plugins/textlint/helpers.d.ts +4 -0
  57. package/dist/plugins/textlint/helpers.js +39 -0
  58. package/dist/plugins/textlint/index.d.ts +3 -0
  59. package/dist/plugins/textlint/index.js +52 -0
  60. package/dist/plugins/textlint/types.d.ts +5 -0
  61. package/dist/plugins/textlint/types.js +1 -0
  62. package/dist/plugins/travis/index.js +1 -1
  63. package/dist/plugins/typedoc/index.js +3 -2
  64. package/dist/plugins/typedoc/types.d.ts +2 -2
  65. package/dist/plugins/varlock/index.d.ts +3 -0
  66. package/dist/plugins/varlock/index.js +31 -0
  67. package/dist/plugins/varlock/parse.d.ts +11 -0
  68. package/dist/plugins/varlock/parse.js +185 -0
  69. package/dist/plugins/varlock/scan.d.ts +2 -0
  70. package/dist/plugins/varlock/scan.js +78 -0
  71. package/dist/plugins/vite-plus/resolveFromAST.js +1 -1
  72. package/dist/plugins/vitest/index.js +4 -2
  73. package/dist/reporters/trace.js +30 -1
  74. package/dist/schema/configuration.d.ts +33 -0
  75. package/dist/schema/configuration.js +2 -0
  76. package/dist/schema/plugins.d.ts +10 -0
  77. package/dist/schema/plugins.js +2 -0
  78. package/dist/session/build-maps.js +9 -1
  79. package/dist/session/file-descriptor.js +0 -2
  80. package/dist/session/index.d.ts +1 -1
  81. package/dist/session/types.d.ts +18 -0
  82. package/dist/types/PluginNames.d.ts +2 -2
  83. package/dist/types/PluginNames.js +2 -0
  84. package/dist/types/config.d.ts +5 -1
  85. package/dist/types/module-graph.d.ts +3 -0
  86. package/dist/types/package-json.d.ts +1 -1
  87. package/dist/typescript/get-imports-and-exports.js +43 -9
  88. package/dist/typescript/visitors/exports.js +9 -4
  89. package/dist/typescript/visitors/walk.d.ts +1 -1
  90. package/dist/typescript/visitors/walk.js +4 -1
  91. package/dist/util/array.d.ts +1 -1
  92. package/dist/util/array.js +5 -1
  93. package/dist/util/create-input-handler.js +3 -3
  94. package/dist/util/create-options.d.ts +28 -2
  95. package/dist/util/file-entry-cache.js +1 -1
  96. package/dist/util/glob-core.d.ts +1 -0
  97. package/dist/util/glob-core.js +11 -3
  98. package/dist/util/jiti.js +1 -0
  99. package/dist/util/modules.d.ts +2 -0
  100. package/dist/util/modules.js +3 -1
  101. package/dist/util/package-json.d.ts +185 -183
  102. package/dist/util/parse-args.d.ts +2 -0
  103. package/dist/util/parse-args.js +6 -1
  104. package/dist/util/url.d.ts +1 -0
  105. package/dist/util/url.js +2 -0
  106. package/dist/version.d.ts +1 -1
  107. package/dist/version.js +1 -1
  108. package/package.json +5 -5
  109. package/schema.json +20 -0
@@ -52,6 +52,7 @@ const parseArgs = (input, opts = {}) => {
52
52
  }
53
53
  const { tokens } = nodeParseArgs({ args, strict: false, allowPositionals: true, tokens: true });
54
54
  const positionals = [];
55
+ const positionalIndices = opts.isStorePositions ? [] : undefined;
55
56
  const dd = [];
56
57
  const store = new Map();
57
58
  const consumed = new Set();
@@ -76,8 +77,10 @@ const parseArgs = (input, opts = {}) => {
76
77
  else if (token.kind === 'positional') {
77
78
  if (terminated && opts['--'])
78
79
  dd.push(token.value);
79
- else if (!consumed.has(i))
80
+ else if (!consumed.has(i)) {
80
81
  positionals.push(coerce(token.value));
82
+ positionalIndices?.push(token.index);
83
+ }
81
84
  }
82
85
  else if (token.value === undefined && token.rawName.startsWith('--no-')) {
83
86
  set(token.name.slice(3), false);
@@ -114,6 +117,8 @@ const parseArgs = (input, opts = {}) => {
114
117
  }
115
118
  if (opts['--'])
116
119
  result['--'] = dd;
120
+ if (positionalIndices)
121
+ result.positionalIndices = positionalIndices;
117
122
  return result;
118
123
  };
119
124
  export default parseArgs;
@@ -0,0 +1 @@
1
+ export declare const hasUrlScheme: (value: string) => boolean;
@@ -0,0 +1,2 @@
1
+ const urlSchemeMatcher = /^[a-z][a-z\d+.-]*:/i;
2
+ export const hasUrlScheme = (value) => urlSchemeMatcher.test(value);
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "6.35.1";
1
+ export declare const version = "6.37.0";
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export const version = '6.35.1';
1
+ export const version = '6.37.0';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "knip",
3
- "version": "6.35.1",
3
+ "version": "6.37.0",
4
4
  "description": "Find and fix unused dependencies, exports and files in your TypeScript and JavaScript projects",
5
5
  "keywords": [
6
6
  "analysis",
@@ -85,25 +85,25 @@
85
85
  "formatly": "^0.7.0",
86
86
  "get-tsconfig": "4.14.3",
87
87
  "jiti": "^2.7.0",
88
- "oxc-parser": "^0.148.0",
88
+ "oxc-parser": "^0.150.0",
89
89
  "oxc-resolver": "11.24.2",
90
90
  "picomatch": "^4.0.7",
91
91
  "smol-toml": "^1.8.0",
92
92
  "strip-json-comments": "5.0.3",
93
93
  "tinyglobby": "^0.2.17",
94
94
  "unbash": "^4.0.11",
95
- "yaml": "^2.9.0",
95
+ "yaml": "^2.9.1",
96
96
  "zod": "^4.4.3"
97
97
  },
98
98
  "devDependencies": {
99
99
  "@jest/types": "^30.5.1",
100
- "@types/bun": "^1.4.1",
100
+ "@types/bun": "^1.4.2",
101
101
  "@types/picomatch": "^4.0.3",
102
102
  "codeclimate-types": "^0.3.1",
103
103
  "prettier": "^3.9.6",
104
104
  "tsx": "^4.23.13",
105
105
  "typescript": "7.0.2",
106
- "webpack": "^5.110.3"
106
+ "webpack": "^5.111.0"
107
107
  },
108
108
  "engines": {
109
109
  "node": "^20.19.0 || >=22.12.0"
package/schema.json CHANGED
@@ -24,6 +24,9 @@
24
24
  "ignoreBinaries": {
25
25
  "$ref": "#/definitions/ignoreBinaries"
26
26
  },
27
+ "ignoreGlobalBinaries": {
28
+ "$ref": "#/definitions/ignoreGlobalBinaries"
29
+ },
27
30
  "ignoreDependencies": {
28
31
  "$ref": "#/definitions/ignoreDependencies"
29
32
  },
@@ -203,6 +206,12 @@
203
206
  "examples": ["rm", "docker-compose", "curl"],
204
207
  "$ref": "#/definitions/list"
205
208
  },
209
+ "ignoreGlobalBinaries": {
210
+ "title": "Ignore common global binaries",
211
+ "description": "Set to false to report required binaries otherwise excluded by Knip's default list. Explicit ignoreBinaries entries still apply.",
212
+ "type": "boolean",
213
+ "default": true
214
+ },
206
215
  "ignoreDependencies": {
207
216
  "title": "Dependencies to exclude from the report (regex allowed)",
208
217
  "examples": ["husky", "lint-staged"],
@@ -347,6 +356,9 @@
347
356
  "ignoreBinaries": {
348
357
  "$ref": "#/definitions/ignoreBinaries"
349
358
  },
359
+ "ignoreGlobalBinaries": {
360
+ "$ref": "#/definitions/ignoreGlobalBinaries"
361
+ },
350
362
  "ignoreDependencies": {
351
363
  "$ref": "#/definitions/ignoreDependencies"
352
364
  },
@@ -978,6 +990,10 @@
978
990
  "title": "temporal plugin configuration (https://knip.dev/reference/plugins/temporal)",
979
991
  "$ref": "#/definitions/plugin"
980
992
  },
993
+ "textlint": {
994
+ "title": "textlint plugin configuration (https://knip.dev/reference/plugins/textlint)",
995
+ "$ref": "#/definitions/plugin"
996
+ },
981
997
  "travis": {
982
998
  "title": "travis plugin configuration (https://knip.dev/reference/plugins/travis)",
983
999
  "$ref": "#/definitions/plugin"
@@ -1042,6 +1058,10 @@
1042
1058
  "title": "unplugin-vue-router plugin configuration (https://knip.dev/reference/plugins/unplugin-vue-router)",
1043
1059
  "$ref": "#/definitions/plugin"
1044
1060
  },
1061
+ "varlock": {
1062
+ "title": "varlock plugin configuration (https://knip.dev/reference/plugins/varlock)",
1063
+ "$ref": "#/definitions/plugin"
1064
+ },
1045
1065
  "vercel": {
1046
1066
  "title": "vercel plugin configuration (https://knip.dev/reference/plugins/vercel)",
1047
1067
  "$ref": "#/definitions/plugin"