knip 5.57.0 → 5.57.2

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.
@@ -267,7 +267,8 @@ export class WorkspaceWorker {
267
267
  configFileName: basename(configFilePath),
268
268
  };
269
269
  const cache = {};
270
- if (plugin.resolveConfig && !seen.get(wsName)?.has(configFilePath)) {
270
+ const key = `${wsName}:${pluginName}`;
271
+ if (plugin.resolveConfig && !seen.get(key)?.has(configFilePath)) {
271
272
  const localConfig = await loadConfigForPlugin(configFilePath, plugin, resolveOpts, pluginName);
272
273
  if (localConfig) {
273
274
  const inputs = await plugin.resolveConfig(localConfig, resolveOpts);
@@ -293,9 +294,9 @@ export class WorkspaceWorker {
293
294
  if (basename(configFilePath) !== 'package.json') {
294
295
  addInput(toEntry(configFilePath));
295
296
  addInput(toConfig(pluginName, configFilePath));
296
- if (!seen.has(wsName))
297
- seen.set(wsName, new Set());
298
- seen.get(wsName)?.add(configFilePath);
297
+ if (!seen.has(key))
298
+ seen.set(key, new Set());
299
+ seen.get(key)?.add(configFilePath);
299
300
  }
300
301
  if (!isManifest && fd?.changed && fd.meta)
301
302
  fd.meta.data = cache;
@@ -10,7 +10,6 @@ import { isAlias, isConfig, isDeferResolveEntry, isDeferResolveProductionEntry,
10
10
  import { getOrCreateFileNode, updateImportMap } from '../util/module-graph.js';
11
11
  import { getEntryPathsFromManifest } from '../util/package-json.js';
12
12
  import { dirname, isAbsolute, join, relative, toRelative } from '../util/path.js';
13
- import {} from '../util/tag.js';
14
13
  import { augmentWorkspace, getToSourcePathHandler, getToSourcePathsHandler } from '../util/to-source-path.js';
15
14
  import { loadTSConfig } from '../util/tsconfig-loader.js';
16
15
  export async function build({ cacheLocation, chief, collector, cwd, deputy, factory, gitignore, isCache, isFixExports, isFixTypes, isGitIgnored, isIsolateWorkspaces, isProduction, isSkipLibs, isStrict, isWatch, report, streamer, tags, tsConfigFile, workspaces, }) {
@@ -6,7 +6,8 @@ const title = 'Jest';
6
6
  const enablers = ['jest'];
7
7
  const isEnabled = ({ dependencies, manifest }) => hasDependency(dependencies, enablers) || Boolean(manifest.name?.startsWith('jest-presets'));
8
8
  const config = ['jest.config.{js,ts,mjs,cjs,json}', 'package.json'];
9
- const entry = ['**/__tests__/**/*.[jt]s?(x)', '**/?(*.)+(spec|test).[jt]s?(x)', '**/__mocks__/**/*.[jt]s'];
9
+ const mocks = ['**/__mocks__/**/*.[jt]s?(x)'];
10
+ const entry = ['**/__tests__/**/*.[jt]s?(x)', '**/?(*.)+(spec|test).[jt]s?(x)', ...mocks];
10
11
  const resolveDependencies = async (config, options) => {
11
12
  const { configFileDir } = options;
12
13
  if (config?.preset) {
@@ -84,6 +85,8 @@ const resolveConfig = async (localConfig, options) => {
84
85
  const entries = localConfig.testMatch
85
86
  ? localConfig.testMatch.map(replaceRootDir).map(id => toEntry(id))
86
87
  : entry.map(id => toEntry(id));
88
+ if (localConfig.testMatch && !options.config.entry)
89
+ entries.push(...mocks.map(id => toEntry(id)));
87
90
  const result = inputs.map(dependency => {
88
91
  dependency.specifier = replaceRootDir(dependency.specifier);
89
92
  return dependency;
@@ -6,7 +6,8 @@ const title = 'Vitest';
6
6
  const enablers = ['vitest'];
7
7
  const isEnabled = ({ dependencies }) => hasDependency(dependencies, enablers);
8
8
  const config = ['vitest.config.{js,mjs,ts,cjs,mts,cts}', 'vitest.{workspace,projects}.{js,mjs,ts,cjs,mts,cts,json}'];
9
- const entry = ['**/*.{bench,test,test-d,spec}.?(c|m)[jt]s?(x)', '**/__mocks__/**/*.[jt]s?(x)'];
9
+ const mocks = ['**/__mocks__/**/*.[jt]s?(x)'];
10
+ const entry = ['**/*.{bench,test,test-d,spec}.?(c|m)[jt]s?(x)', ...mocks];
10
11
  const isVitestCoverageCommand = /vitest(.+)--coverage(?:\.enabled(?:=true)?)?/;
11
12
  const hasScriptWithCoverage = (scripts) => scripts
12
13
  ? Object.values(scripts).some(script => {
@@ -84,6 +85,9 @@ export const resolveConfig = async (localConfig, options) => {
84
85
  if (cfg.test?.include) {
85
86
  for (const dependency of cfg.test.include)
86
87
  dependency[0] !== '!' && inputs.add(toEntry(join(dir, dependency)));
88
+ if (!options.config.entry)
89
+ for (const dependency of mocks)
90
+ inputs.add(toEntry(join(dir, dependency)));
87
91
  }
88
92
  else {
89
93
  for (const dependency of options.config.entry ?? entry)
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "5.57.0";
1
+ export declare const version = "5.57.2";
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export const version = '5.57.0';
1
+ export const version = '5.57.2';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "knip",
3
- "version": "5.57.0",
3
+ "version": "5.57.2",
4
4
  "description": "Find and fix unused dependencies, exports and files in your TypeScript and JavaScript projects",
5
5
  "homepage": "https://knip.dev",
6
6
  "repository": {