fallow 1.0.4 → 1.2.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.
- package/README.md +3 -3
- package/bin/fallow +8 -3
- package/package.json +14 -14
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@ The codebase analyzer for JavaScript and TypeScript, built in Rust.
|
|
|
6
6
|
[](https://www.npmjs.com/package/fallow)
|
|
7
7
|
[](https://github.com/fallow-rs/fallow/blob/main/LICENSE)
|
|
8
8
|
|
|
9
|
-
Unused code, circular dependencies, code duplication
|
|
9
|
+
Unused code, circular dependencies, and code duplication. Found in seconds, not minutes. fallow analyzes your codebase for unused files, exports, dependencies, and types, detects circular dependencies, and finds duplicated code blocks. **3-36x faster** than [knip](https://knip.dev) v5 (**2-14x faster** than knip v6), **20-33x faster** than [jscpd](https://github.com/kucherenko/jscpd) for duplication detection, with no Node.js runtime dependency.
|
|
10
10
|
|
|
11
11
|
## Installation
|
|
12
12
|
|
|
@@ -17,10 +17,10 @@ npm install -g fallow
|
|
|
17
17
|
## Usage
|
|
18
18
|
|
|
19
19
|
```bash
|
|
20
|
-
fallow check #
|
|
20
|
+
fallow check # Unused code analysis -- zero config, sub-second
|
|
21
21
|
fallow dupes # Duplication detection -- find copy-paste clones
|
|
22
22
|
fallow dupes --mode semantic # Catch clones with renamed variables
|
|
23
|
-
fallow fix --dry-run # Preview auto-removal of
|
|
23
|
+
fallow fix --dry-run # Preview auto-removal of unused exports and deps
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
## What it finds
|
package/bin/fallow
CHANGED
|
@@ -15,9 +15,14 @@ function getPlatformPackage() {
|
|
|
15
15
|
return `@fallow-cli/darwin-${arch}`;
|
|
16
16
|
}
|
|
17
17
|
if (platform === 'linux') {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
try {
|
|
19
|
+
const { familySync } = require('detect-libc');
|
|
20
|
+
const libc = familySync() === 'musl' ? 'musl' : 'gnu';
|
|
21
|
+
return `@fallow-cli/linux-${arch}-${libc}`;
|
|
22
|
+
} catch {
|
|
23
|
+
// musl binaries are statically linked and work on both glibc and musl systems
|
|
24
|
+
return `@fallow-cli/linux-${arch}-musl`;
|
|
25
|
+
}
|
|
21
26
|
}
|
|
22
27
|
|
|
23
28
|
return null;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fallow",
|
|
3
|
-
"version": "1.0
|
|
4
|
-
"description": "Find unused
|
|
3
|
+
"version": "1.2.0",
|
|
4
|
+
"description": "Find unused code, circular dependencies, and code duplication in JavaScript/TypeScript projects",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -12,14 +12,14 @@
|
|
|
12
12
|
"url": "https://github.com/fallow-rs/fallow/issues"
|
|
13
13
|
},
|
|
14
14
|
"keywords": [
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"dependencies",
|
|
15
|
+
"unused-code",
|
|
16
|
+
"circular-dependencies",
|
|
17
|
+
"code-duplication",
|
|
19
18
|
"lint",
|
|
20
19
|
"analyzer",
|
|
21
20
|
"typescript",
|
|
22
|
-
"javascript"
|
|
21
|
+
"javascript",
|
|
22
|
+
"static-analysis"
|
|
23
23
|
],
|
|
24
24
|
"engines": {
|
|
25
25
|
"node": ">=16"
|
|
@@ -39,12 +39,12 @@
|
|
|
39
39
|
"detect-libc": "^2.0.0"
|
|
40
40
|
},
|
|
41
41
|
"optionalDependencies": {
|
|
42
|
-
"@fallow-cli/darwin-arm64": "1.0
|
|
43
|
-
"@fallow-cli/darwin-x64": "1.0
|
|
44
|
-
"@fallow-cli/linux-x64-gnu": "1.0
|
|
45
|
-
"@fallow-cli/linux-arm64-gnu": "1.0
|
|
46
|
-
"@fallow-cli/linux-x64-musl": "1.0
|
|
47
|
-
"@fallow-cli/linux-arm64-musl": "1.0
|
|
48
|
-
"@fallow-cli/win32-x64-msvc": "1.0
|
|
42
|
+
"@fallow-cli/darwin-arm64": "1.2.0",
|
|
43
|
+
"@fallow-cli/darwin-x64": "1.2.0",
|
|
44
|
+
"@fallow-cli/linux-x64-gnu": "1.2.0",
|
|
45
|
+
"@fallow-cli/linux-arm64-gnu": "1.2.0",
|
|
46
|
+
"@fallow-cli/linux-x64-musl": "1.2.0",
|
|
47
|
+
"@fallow-cli/linux-arm64-musl": "1.2.0",
|
|
48
|
+
"@fallow-cli/win32-x64-msvc": "1.2.0"
|
|
49
49
|
}
|
|
50
50
|
}
|