knip 2.24.1 → 2.25.1
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.
- package/dist/DependencyDeputy.d.ts +4 -5
- package/dist/DependencyDeputy.js +15 -13
- package/dist/ProjectPrincipal.js +1 -1
- package/dist/WorkspaceWorker.d.ts +3 -3
- package/dist/WorkspaceWorker.js +4 -4
- package/dist/binaries/resolvers/index.d.ts +1 -0
- package/dist/binaries/resolvers/index.js +1 -0
- package/dist/binaries/resolvers/nx.d.ts +2 -0
- package/dist/binaries/resolvers/nx.js +9 -0
- package/dist/index.js +4 -4
- package/dist/manifest/index.d.ts +2 -2
- package/dist/manifest/index.js +5 -5
- package/dist/plugins/jest/index.js +2 -1
- package/dist/plugins/typescript/index.js +3 -1
- package/dist/types/exports.d.ts +1 -1
- package/dist/types/workspace.d.ts +1 -1
- package/dist/typescript/ast-helpers.d.ts +1 -1
- package/dist/typescript/ast-helpers.js +9 -1
- package/dist/typescript/getImportsAndExports.js +2 -2
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +5 -5
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
/// <reference types="npmcli__package-json" />
|
|
2
2
|
import type { Workspace } from './ConfigurationChief.js';
|
|
3
3
|
import type { ConfigurationHints, Issue } from './types/issues.js';
|
|
4
|
-
import type { WorkspaceManifests } from './types/workspace.js';
|
|
5
|
-
import type { PeerDependencies, InstalledBinaries } from './types/workspace.js';
|
|
4
|
+
import type { WorkspaceManifests, HostDependencies, InstalledBinaries } from './types/workspace.js';
|
|
6
5
|
import type { PackageJson } from '@npmcli/package-json';
|
|
7
6
|
type Options = {
|
|
8
7
|
isStrict: boolean;
|
|
@@ -12,7 +11,7 @@ export declare class DependencyDeputy {
|
|
|
12
11
|
_manifests: WorkspaceManifests;
|
|
13
12
|
referencedDependencies: Map<string, Set<string>>;
|
|
14
13
|
referencedBinaries: Map<string, Set<string>>;
|
|
15
|
-
|
|
14
|
+
hostDependencies: Map<string, HostDependencies>;
|
|
16
15
|
installedBinaries: Map<string, InstalledBinaries>;
|
|
17
16
|
ignoreBinaries: string[];
|
|
18
17
|
ignoreDependencies: string[];
|
|
@@ -45,8 +44,8 @@ export declare class DependencyDeputy {
|
|
|
45
44
|
getInstalledBinaries(workspaceName: string): InstalledBinaries | undefined;
|
|
46
45
|
addReferencedDependency(workspaceName: string, packageName: string): void;
|
|
47
46
|
addReferencedBinary(workspaceName: string, binaryName: string): void;
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
addHostDependencies(workspaceName: string, hostDependencies: HostDependencies): void;
|
|
48
|
+
getHostDependenciesFor(workspaceName: string, dependency: string): string[];
|
|
50
49
|
getPeerDependencies(workspaceName: string): string[];
|
|
51
50
|
getOptionalPeerDependencies(workspaceName: string): string[];
|
|
52
51
|
maybeAddReferencedExternalDependency(workspace: Workspace, packageName: string): boolean;
|
package/dist/DependencyDeputy.js
CHANGED
|
@@ -6,7 +6,7 @@ export class DependencyDeputy {
|
|
|
6
6
|
_manifests = new Map();
|
|
7
7
|
referencedDependencies;
|
|
8
8
|
referencedBinaries;
|
|
9
|
-
|
|
9
|
+
hostDependencies;
|
|
10
10
|
installedBinaries;
|
|
11
11
|
ignoreBinaries = [];
|
|
12
12
|
ignoreDependencies = [];
|
|
@@ -14,7 +14,7 @@ export class DependencyDeputy {
|
|
|
14
14
|
this.isStrict = isStrict;
|
|
15
15
|
this.referencedDependencies = new Map();
|
|
16
16
|
this.referencedBinaries = new Map();
|
|
17
|
-
this.
|
|
17
|
+
this.hostDependencies = new Map();
|
|
18
18
|
this.installedBinaries = new Map();
|
|
19
19
|
}
|
|
20
20
|
addWorkspace({ name, dir, manifestPath, manifest, ignoreDependencies, ignoreBinaries, }) {
|
|
@@ -79,11 +79,11 @@ export class DependencyDeputy {
|
|
|
79
79
|
}
|
|
80
80
|
this.referencedBinaries.get(workspaceName)?.add(binaryName);
|
|
81
81
|
}
|
|
82
|
-
|
|
83
|
-
this.
|
|
82
|
+
addHostDependencies(workspaceName, hostDependencies) {
|
|
83
|
+
this.hostDependencies.set(workspaceName, hostDependencies);
|
|
84
84
|
}
|
|
85
|
-
|
|
86
|
-
return Array.from(this.
|
|
85
|
+
getHostDependenciesFor(workspaceName, dependency) {
|
|
86
|
+
return Array.from(this.hostDependencies.get(workspaceName)?.get(dependency) ?? []);
|
|
87
87
|
}
|
|
88
88
|
getPeerDependencies(workspaceName) {
|
|
89
89
|
const manifest = this._manifests.get(workspaceName);
|
|
@@ -179,17 +179,19 @@ export class DependencyDeputy {
|
|
|
179
179
|
const typedPackageName = getPackageFromDefinitelyTyped(typedDependency);
|
|
180
180
|
if (IGNORE_DEFINITELY_TYPED.includes(typedPackageName))
|
|
181
181
|
return true;
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
182
|
+
const hostDependencies = [
|
|
183
|
+
...this.getHostDependenciesFor(workspaceName, dependency),
|
|
184
|
+
...this.getHostDependenciesFor(workspaceName, typedPackageName),
|
|
185
|
+
];
|
|
186
|
+
if (hostDependencies.length)
|
|
187
|
+
return !!hostDependencies.find(host => isReferencedDependency(host, true));
|
|
186
188
|
if (!referencedDependencies)
|
|
187
189
|
return false;
|
|
188
190
|
return referencedDependencies.has(typedPackageName);
|
|
189
191
|
}
|
|
190
|
-
const
|
|
191
|
-
|
|
192
|
-
return
|
|
192
|
+
const hostDependencies = this.getHostDependenciesFor(workspaceName, dependency);
|
|
193
|
+
hostDependencies.forEach(dep => (!peerDepRecs[dep] ? (peerDepRecs[dep] = 1) : peerDepRecs[dep]++));
|
|
194
|
+
return hostDependencies.some(peerDependency => isReferencedDependency(peerDependency, true));
|
|
193
195
|
};
|
|
194
196
|
const isNotReferencedDependency = (dependency) => !isReferencedDependency(dependency);
|
|
195
197
|
const pd = this.getProductionDependencies(workspaceName);
|
package/dist/ProjectPrincipal.js
CHANGED
|
@@ -178,7 +178,7 @@ export class ProjectPrincipal {
|
|
|
178
178
|
findUnusedMembers(filePath, members) {
|
|
179
179
|
return members
|
|
180
180
|
.filter(member => {
|
|
181
|
-
if (getJSDocTags(member.node).
|
|
181
|
+
if (getJSDocTags(member.node).has('@public'))
|
|
182
182
|
return false;
|
|
183
183
|
const referencedSymbols = this.findReferences(filePath, member.pos);
|
|
184
184
|
const files = referencedSymbols
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Configuration, PluginName, WorkspaceConfiguration } from './types/config.js';
|
|
2
2
|
import type { PackageJsonWithPlugins } from './types/plugins.js';
|
|
3
|
-
import type { InstalledBinaries,
|
|
3
|
+
import type { InstalledBinaries, HostDependencies } from './types/workspace.js';
|
|
4
4
|
type WorkspaceManagerOptions = {
|
|
5
5
|
name: string;
|
|
6
6
|
dir: string;
|
|
@@ -28,7 +28,7 @@ export declare class WorkspaceWorker {
|
|
|
28
28
|
enabled: Record<PluginName, boolean>;
|
|
29
29
|
enabledPlugins: PluginName[];
|
|
30
30
|
referencedDependencies: ReferencedDependencies;
|
|
31
|
-
|
|
31
|
+
hostDependencies: HostDependencies;
|
|
32
32
|
installedBinaries: InstalledBinaries;
|
|
33
33
|
constructor({ name, dir, cwd, config, manifest, isProduction, isStrict, rootIgnore, negatedWorkspacePatterns, enabledPluginsInAncestors, }: WorkspaceManagerOptions);
|
|
34
34
|
init(): Promise<void>;
|
|
@@ -47,7 +47,7 @@ export declare class WorkspaceWorker {
|
|
|
47
47
|
getIgnorePatterns(): string[];
|
|
48
48
|
private findDependenciesByPlugins;
|
|
49
49
|
findAllDependencies(): Promise<{
|
|
50
|
-
|
|
50
|
+
hostDependencies: HostDependencies;
|
|
51
51
|
installedBinaries: InstalledBinaries;
|
|
52
52
|
referencedDependencies: ReferencedDependencies;
|
|
53
53
|
enabledPlugins: ("ava" | "babel" | "capacitor" | "changesets" | "commitizen" | "commitlint" | "cspell" | "cypress" | "eslint" | "gatsby" | "husky" | "jest" | "lefthook" | "markdownlint" | "mocha" | "next" | "nx" | "nyc" | "playwright" | "postcss" | "prettier" | "remark" | "remix" | "rollup" | "sentry" | "storybook" | "stryker" | "stylelint" | "tailwind" | "typedoc" | "typescript" | "vite" | "vitest" | "webpack" | "githubActions" | "lintStaged" | "npmPackageJsonLint" | "releaseIt" | "semanticRelease" | "svelte")[];
|
package/dist/WorkspaceWorker.js
CHANGED
|
@@ -20,7 +20,7 @@ export class WorkspaceWorker {
|
|
|
20
20
|
enabled;
|
|
21
21
|
enabledPlugins = [];
|
|
22
22
|
referencedDependencies = new Set();
|
|
23
|
-
|
|
23
|
+
hostDependencies = new Map();
|
|
24
24
|
installedBinaries = new Map();
|
|
25
25
|
constructor({ name, dir, cwd, config, manifest, isProduction, isStrict, rootIgnore, negatedWorkspacePatterns, enabledPluginsInAncestors, }) {
|
|
26
26
|
this.name = name;
|
|
@@ -59,7 +59,7 @@ export class WorkspaceWorker {
|
|
|
59
59
|
debugLogObject(`Enabled plugins (${this.name})`, enabledPluginNames);
|
|
60
60
|
}
|
|
61
61
|
async initReferencedDependencies() {
|
|
62
|
-
const { dependencies,
|
|
62
|
+
const { dependencies, hostDependencies, installedBinaries } = await npm.findDependencies({
|
|
63
63
|
manifest: this.manifest,
|
|
64
64
|
isProduction: this.isProduction,
|
|
65
65
|
isStrict: this.isStrict,
|
|
@@ -68,7 +68,7 @@ export class WorkspaceWorker {
|
|
|
68
68
|
});
|
|
69
69
|
const filePath = join(this.dir, 'package.json');
|
|
70
70
|
dependencies.forEach(dependency => this.referencedDependencies.add([filePath, dependency]));
|
|
71
|
-
this.
|
|
71
|
+
this.hostDependencies = hostDependencies;
|
|
72
72
|
this.installedBinaries = installedBinaries;
|
|
73
73
|
}
|
|
74
74
|
getConfigForPlugin(pluginName) {
|
|
@@ -235,7 +235,7 @@ export class WorkspaceWorker {
|
|
|
235
235
|
async findAllDependencies() {
|
|
236
236
|
await this.findDependenciesByPlugins();
|
|
237
237
|
return {
|
|
238
|
-
|
|
238
|
+
hostDependencies: this.hostDependencies,
|
|
239
239
|
installedBinaries: this.installedBinaries,
|
|
240
240
|
referencedDependencies: this.referencedDependencies,
|
|
241
241
|
enabledPlugins: this.enabledPlugins,
|
|
@@ -3,6 +3,7 @@ export * as dotenv from './dotenv.js';
|
|
|
3
3
|
export * as node from './node.js';
|
|
4
4
|
export * as nodemon from './nodemon.js';
|
|
5
5
|
export * as npx from './npx.js';
|
|
6
|
+
export * as nx from './nx.js';
|
|
6
7
|
export * as pnpm from './pnpm.js';
|
|
7
8
|
export * as rollup from './rollup.js';
|
|
8
9
|
export * as yarn from './yarn.js';
|
|
@@ -3,6 +3,7 @@ export * as dotenv from './dotenv.js';
|
|
|
3
3
|
export * as node from './node.js';
|
|
4
4
|
export * as nodemon from './nodemon.js';
|
|
5
5
|
export * as npx from './npx.js';
|
|
6
|
+
export * as nx from './nx.js';
|
|
6
7
|
export * as pnpm from './pnpm.js';
|
|
7
8
|
export * as rollup from './rollup.js';
|
|
8
9
|
export * as yarn from './yarn.js';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import parseArgs from 'minimist';
|
|
2
|
+
import { toBinary } from '../util.js';
|
|
3
|
+
export const resolve = (binary, args, { fromArgs }) => {
|
|
4
|
+
const parsed = parseArgs(args);
|
|
5
|
+
const [command] = parsed._;
|
|
6
|
+
if (command === 'exec')
|
|
7
|
+
return [toBinary(binary), ...fromArgs(parsed._.slice(1))];
|
|
8
|
+
return [toBinary(binary)];
|
|
9
|
+
};
|
package/dist/index.js
CHANGED
|
@@ -166,8 +166,8 @@ export const main = async (unresolvedConfiguration) => {
|
|
|
166
166
|
if (chief.resolvedConfigFilePath)
|
|
167
167
|
principal.addEntryPath(chief.resolvedConfigFilePath, { skipExportsAnalysis: true });
|
|
168
168
|
const dependencies = await worker.findAllDependencies();
|
|
169
|
-
const { referencedDependencies,
|
|
170
|
-
deputy.
|
|
169
|
+
const { referencedDependencies, hostDependencies, installedBinaries, enabledPlugins } = dependencies;
|
|
170
|
+
deputy.addHostDependencies(name, hostDependencies);
|
|
171
171
|
deputy.setInstalledBinaries(name, installedBinaries);
|
|
172
172
|
enabledPluginsStore.set(name, enabledPlugins);
|
|
173
173
|
referencedDependencies.forEach(([containingFilePath, specifier]) => {
|
|
@@ -278,9 +278,9 @@ export const main = async (unresolvedConfiguration) => {
|
|
|
278
278
|
continue;
|
|
279
279
|
const importingModule = importedSymbols.get(filePath);
|
|
280
280
|
for (const [symbol, exportedItem] of exportItems.entries()) {
|
|
281
|
-
if (exportedItem.jsDocTags.
|
|
281
|
+
if (exportedItem.jsDocTags.has('@public') || exportedItem.jsDocTags.has('@beta'))
|
|
282
282
|
continue;
|
|
283
|
-
if (isIgnoreInternal && exportedItem.jsDocTags.
|
|
283
|
+
if (isIgnoreInternal && exportedItem.jsDocTags.has('@internal'))
|
|
284
284
|
continue;
|
|
285
285
|
if (importingModule && isSymbolImported(symbol, importingModule)) {
|
|
286
286
|
if (importingModule.isReExport && isExportedInEntryFile(importingModule))
|
package/dist/manifest/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="npmcli__package-json" />
|
|
2
|
-
import type { InstalledBinaries,
|
|
2
|
+
import type { InstalledBinaries, HostDependencies } from '../types/workspace.js';
|
|
3
3
|
import type { PackageJson } from '@npmcli/package-json';
|
|
4
4
|
type Options = {
|
|
5
5
|
manifest: PackageJson;
|
|
@@ -10,7 +10,7 @@ type Options = {
|
|
|
10
10
|
};
|
|
11
11
|
export declare const findDependencies: ({ manifest, isProduction, isStrict, dir, cwd }: Options) => Promise<{
|
|
12
12
|
dependencies: string[];
|
|
13
|
-
|
|
13
|
+
hostDependencies: HostDependencies;
|
|
14
14
|
installedBinaries: InstalledBinaries;
|
|
15
15
|
}>;
|
|
16
16
|
export {};
|
package/dist/manifest/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { timerify } from '../util/Performance.js';
|
|
|
3
3
|
import { getPackageManifest } from './helpers.js';
|
|
4
4
|
const findManifestDependencies = async ({ manifest, isProduction, isStrict, dir, cwd }) => {
|
|
5
5
|
const scriptFilter = isProduction ? ['start', 'postinstall'] : [];
|
|
6
|
-
const
|
|
6
|
+
const hostDependencies = new Map();
|
|
7
7
|
const scripts = Object.entries(manifest.scripts ?? {}).reduce((scripts, [scriptName, script]) => {
|
|
8
8
|
if (script && (scriptFilter.length === 0 || scriptFilter.includes(scriptName))) {
|
|
9
9
|
return [...scripts, script];
|
|
@@ -38,18 +38,18 @@ const findManifestDependencies = async ({ manifest, isProduction, isStrict, dir,
|
|
|
38
38
|
});
|
|
39
39
|
const packagePeerDependencies = Object.keys(manifest.peerDependencies ?? {});
|
|
40
40
|
packagePeerDependencies.forEach(packagePeerDependency => {
|
|
41
|
-
if (
|
|
42
|
-
|
|
41
|
+
if (hostDependencies.has(packagePeerDependency)) {
|
|
42
|
+
hostDependencies.get(packagePeerDependency)?.add(packageName);
|
|
43
43
|
}
|
|
44
44
|
else {
|
|
45
|
-
|
|
45
|
+
hostDependencies.set(packagePeerDependency, new Set([packageName]));
|
|
46
46
|
}
|
|
47
47
|
});
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
return {
|
|
51
51
|
dependencies,
|
|
52
|
-
|
|
52
|
+
hostDependencies,
|
|
53
53
|
installedBinaries,
|
|
54
54
|
};
|
|
55
55
|
};
|
|
@@ -62,7 +62,8 @@ const findJestDependencies = async (configFilePath, { cwd, manifest }) => {
|
|
|
62
62
|
config = await config();
|
|
63
63
|
if (!config)
|
|
64
64
|
return [];
|
|
65
|
-
const
|
|
65
|
+
const rootDir = config.rootDir ?? '';
|
|
66
|
+
const replaceRootDir = (name) => name.includes('<rootDir>') ? join(cwd, name.replace(/^.*<rootDir>/, rootDir)) : name;
|
|
66
67
|
return resolveDependencies(config).map(replaceRootDir);
|
|
67
68
|
};
|
|
68
69
|
export const findDependencies = timerify(findJestDependencies);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
1
2
|
import { compact } from '../../util/array.js';
|
|
2
3
|
import { dirname, isInternal, toAbsolute } from '../../util/path.js';
|
|
3
4
|
import { timerify } from '../../util/Performance.js';
|
|
@@ -21,6 +22,7 @@ const resolveExtensibleConfig = async (configFilePath) => {
|
|
|
21
22
|
}
|
|
22
23
|
return config;
|
|
23
24
|
};
|
|
25
|
+
const jsxWithReact = [ts.JsxEmit.React, ts.JsxEmit.ReactJSX, ts.JsxEmit.ReactJSXDev, ts.JsxEmit.ReactNative];
|
|
24
26
|
const findTypeScriptDependencies = async (configFilePath) => {
|
|
25
27
|
const compilerOptions = await loadTSConfig(configFilePath);
|
|
26
28
|
const config = await resolveExtensibleConfig(configFilePath);
|
|
@@ -34,7 +36,7 @@ const findTypeScriptDependencies = async (configFilePath) => {
|
|
|
34
36
|
const importHelpers = compilerOptions?.importHelpers ? ['tslib'] : [];
|
|
35
37
|
const jsx = compilerOptions?.jsxImportSource
|
|
36
38
|
? [compilerOptions.jsxImportSource]
|
|
37
|
-
: compilerOptions?.jsx
|
|
39
|
+
: compilerOptions?.jsx && jsxWithReact.includes(compilerOptions.jsx)
|
|
38
40
|
? ['react']
|
|
39
41
|
: [];
|
|
40
42
|
return compact([...extend, ...types, ...plugins, ...importHelpers, ...jsx]);
|
package/dist/types/exports.d.ts
CHANGED
|
@@ -12,6 +12,6 @@ type WorkspaceManifest = {
|
|
|
12
12
|
ignoreBinaries: string[];
|
|
13
13
|
};
|
|
14
14
|
export type WorkspaceManifests = Map<string, WorkspaceManifest>;
|
|
15
|
-
export type
|
|
15
|
+
export type HostDependencies = Map<string, Set<string>>;
|
|
16
16
|
export type InstalledBinaries = Map<string, Set<string>>;
|
|
17
17
|
export {};
|
|
@@ -23,5 +23,5 @@ export declare function findAncestor<T>(node: ts.Node | undefined, callback: (el
|
|
|
23
23
|
export declare function findDescendants<T>(node: ts.Node | undefined, callback: (element: ts.Node) => boolean | 'STOP'): T[];
|
|
24
24
|
export declare const isDeclarationFileExtension: (extension: string) => boolean;
|
|
25
25
|
export declare const isInModuleBlock: (node: ts.Node) => boolean;
|
|
26
|
-
export declare const getJSDocTags: (node: ts.Node) => string
|
|
26
|
+
export declare const getJSDocTags: (node: ts.Node) => Set<string>;
|
|
27
27
|
export {};
|
|
@@ -98,4 +98,12 @@ export const isInModuleBlock = (node) => {
|
|
|
98
98
|
}
|
|
99
99
|
return false;
|
|
100
100
|
};
|
|
101
|
-
export const getJSDocTags = (node) =>
|
|
101
|
+
export const getJSDocTags = (node) => {
|
|
102
|
+
const tags = new Set();
|
|
103
|
+
for (const tagNode of ts.getJSDocTags(node)) {
|
|
104
|
+
const match = tagNode.getText()?.match(/@\S+/);
|
|
105
|
+
if (match)
|
|
106
|
+
tags.add(match[0]);
|
|
107
|
+
}
|
|
108
|
+
return tags;
|
|
109
|
+
};
|
|
@@ -101,13 +101,13 @@ export const getImportsAndExports = (sourceFile, options) => {
|
|
|
101
101
|
if (exports.has(identifier)) {
|
|
102
102
|
const item = exports.get(identifier);
|
|
103
103
|
const crew = [...item.members, ...members];
|
|
104
|
-
const tags = [...item.jsDocTags, ...jsDocTags];
|
|
104
|
+
const tags = new Set([...item.jsDocTags, ...jsDocTags]);
|
|
105
105
|
exports.set(identifier, { ...item, node, type, pos, members: crew, jsDocTags: tags });
|
|
106
106
|
}
|
|
107
107
|
else {
|
|
108
108
|
exports.set(identifier, { node, type, pos, members, jsDocTags });
|
|
109
109
|
}
|
|
110
|
-
if (!jsDocTags.
|
|
110
|
+
if (!jsDocTags.has('@alias')) {
|
|
111
111
|
if (ts.isExportAssignment(node))
|
|
112
112
|
maybeAddAliasedExport(node.expression, 'default');
|
|
113
113
|
if (ts.isVariableDeclaration(node))
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "2.
|
|
1
|
+
export declare const version = "2.25.1";
|
package/dist/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '2.
|
|
1
|
+
export const version = '2.25.1';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "knip",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.25.1",
|
|
4
4
|
"description": "Find unused files, dependencies and exports in your TypeScript and JavaScript projects",
|
|
5
5
|
"homepage": "https://github.com/webpro/knip",
|
|
6
6
|
"repository": "github:webpro/knip",
|
|
@@ -65,12 +65,12 @@
|
|
|
65
65
|
"@npmcli/package-json": "5.0.0",
|
|
66
66
|
"@release-it/bumper": "5.1.0",
|
|
67
67
|
"@swc/cli": "0.1.62",
|
|
68
|
-
"@swc/core": "1.3.
|
|
68
|
+
"@swc/core": "1.3.85",
|
|
69
69
|
"@types/eslint": "8.44.2",
|
|
70
|
-
"@types/js-yaml": "4.0.
|
|
70
|
+
"@types/js-yaml": "4.0.6",
|
|
71
71
|
"@types/micromatch": "4.0.2",
|
|
72
72
|
"@types/minimist": "1.2.2",
|
|
73
|
-
"@types/node": "20.6.
|
|
73
|
+
"@types/node": "20.6.2",
|
|
74
74
|
"@types/npmcli__map-workspaces": "3.0.1",
|
|
75
75
|
"@types/webpack": "5.28.2",
|
|
76
76
|
"@typescript-eslint/eslint-plugin": "6.7.0",
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
"release-it": "16.1.5",
|
|
85
85
|
"remark-cli": "11.0.0",
|
|
86
86
|
"remark-preset-webpro": "0.0.3",
|
|
87
|
-
"tsx": "3.12.
|
|
87
|
+
"tsx": "3.12.10",
|
|
88
88
|
"type-fest": "4.3.1"
|
|
89
89
|
},
|
|
90
90
|
"engines": {
|