Reading package.json safely in the build script by ignoring the system files. #11544 (#11546)
HardikModha committed
Nov 13, 2017 at 23:51 UTC
2d23a4563ef2bec7d90c4a7edff2657c890b4334
1 file changed
+8
-3
scripts/release/utils.js
+8
-3
@@ -3,7 +3,7 @@
3
const chalk = require('chalk');
4
const {dots} = require('cli-spinners');
5
const {exec} = require('child-process-promise');
6
-const {readdirSync, readFileSync} = require('fs');
6
+const {readdirSync, readFileSync, statSync} = require('fs');
7
const logUpdate = require('log-update');
8
const {join} = require('path');
9
@@ -28,9 +28,14 @@ const getPublicPackages = () => {
28
29
return readdirSync(packagesRoot).filter(dir => {
30
const packagePath = join(packagesRoot, dir, 'package.json');
31
- const packageJSON = JSON.parse(readFileSync(packagePath));
31
33
- return packageJSON.private !== true;
32
+ if (dir.charAt(0) !== '.' && statSync(packagePath).isFile()) {
33
+ const packageJSON = JSON.parse(readFileSync(packagePath));
34
+
35
+ return packageJSON.private !== true;
36
+ }
37
+
38
+ return false;
39
});
40
};
41