forked from rescript-lang/rescript
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdedupe.js
44 lines (39 loc) · 810 Bytes
/
dedupe.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
//@ts-check
var fs = require("fs");
var cp = require("child_process");
var path = require("path");
var jscompDir = path.join(__dirname, "..", "jscomp");
var sourceDirs = [
"stubs",
"ext",
"common",
"syntax",
"depends",
"core",
"super_errors",
"outcome_printer",
"bsb",
"ounit",
"ounit_tests",
"main",
];
var files = cp.execSync(`git ls-files ${sourceDirs.join(" ")}`, {
cwd: jscompDir,
encoding: "utf8",
});
var filesPath = files.split("\n");
/**
* @type {Map<string,string>}
*/
var collection = new Map();
for (let file of filesPath) {
let base = path.basename(file);
if (collection.has(base)) {
if (base.endsWith(".ml")) {
console.log(`duplicate ${base} : ${collection.get(base)} vs ${file}`);
}
} else {
collection.set(base, file);
}
}
debugger;