Skip to content

Commit 2577451

Browse files
committed
Use latest version of fs-extra due to stack overflow bugs in earlier versions
1 parent a1ab42d commit 2577451

File tree

3 files changed

+9
-49
lines changed

3 files changed

+9
-49
lines changed

arduino-ide-extension/src/node/sketches-service-impl.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ export class SketchesServiceImpl implements SketchesService {
2121
const { sketchDirUri } = (await this.configService.getConfiguration());
2222
fsPath = FileUri.fsPath(sketchDirUri);
2323
if (!fs.existsSync(fsPath)) {
24-
fs.mkdirpSync(fsPath);
24+
await fs.mkdirp(fsPath);
2525
}
2626
} else {
2727
fsPath = FileUri.fsPath(uri);
@@ -96,8 +96,8 @@ export class SketchesServiceImpl implements SketchesService {
9696

9797
const sketchDir = path.join(parent, sketchName)
9898
const sketchFile = path.join(sketchDir, `${sketchName}.ino`);
99-
fs.mkdirpSync(sketchDir);
100-
fs.writeFileSync(sketchFile, `
99+
await fs.mkdirp(sketchDir);
100+
await fs.writeFile(sketchFile, `
101101
void setup() {
102102
// put your setup code here, to run once:
103103
@@ -140,4 +140,4 @@ void loop() {
140140
}
141141
return false;
142142
}
143-
}
143+
}

package.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@
1010
"devDependencies": {
1111
"lerna": "^3.13.3"
1212
},
13+
"resolutions": {
14+
"**/fs-extra": "^8.1.0"
15+
},
1316
"scripts": {
1417
"prepare": "lerna run prepare",
1518
"rebuild:browser": "theia rebuild:browser",

yarn.lock

Lines changed: 2 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -6576,36 +6576,7 @@ fs-exists-sync@^0.1.0:
65766576
resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add"
65776577
integrity sha1-mC1ok6+RjnLQjeyehnP/K1qNat0=
65786578

6579-
fs-extra@^0.30.0:
6580-
version "0.30.0"
6581-
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0"
6582-
integrity sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=
6583-
dependencies:
6584-
graceful-fs "^4.1.2"
6585-
jsonfile "^2.1.0"
6586-
klaw "^1.0.0"
6587-
path-is-absolute "^1.0.0"
6588-
rimraf "^2.2.8"
6589-
6590-
fs-extra@^4.0.1, fs-extra@^4.0.2:
6591-
version "4.0.3"
6592-
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94"
6593-
integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==
6594-
dependencies:
6595-
graceful-fs "^4.1.2"
6596-
jsonfile "^4.0.0"
6597-
universalify "^0.1.0"
6598-
6599-
fs-extra@^7.0.0, fs-extra@^7.0.1:
6600-
version "7.0.1"
6601-
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9"
6602-
integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==
6603-
dependencies:
6604-
graceful-fs "^4.1.2"
6605-
jsonfile "^4.0.0"
6606-
universalify "^0.1.0"
6607-
6608-
fs-extra@^8.1.0:
6579+
fs-extra@^0.30.0, fs-extra@^4.0.1, fs-extra@^4.0.2, fs-extra@^7.0.0, fs-extra@^7.0.1, fs-extra@^8.1.0:
66096580
version "8.1.0"
66106581
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0"
66116582
integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==
@@ -7018,7 +6989,7 @@ got@^8.2.0, got@^8.3.1:
70186989
url-parse-lax "^3.0.0"
70196990
url-to-options "^1.0.1"
70206991

7021-
graceful-fs@^4.1.10, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.2:
6992+
graceful-fs@^4.1.10, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2:
70226993
version "4.2.3"
70236994
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423"
70246995
integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==
@@ -8186,13 +8157,6 @@ jsonc-parser@^2.0.2, jsonc-parser@^2.1.1, jsonc-parser@^2.2.0:
81868157
resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-2.2.0.tgz#f206f87f9d49d644b7502052c04e82dd6392e9ef"
81878158
integrity sha512-4fLQxW1j/5fWj6p78vAlAafoCKtuBm6ghv+Ij5W2DrDx0qE+ZdEl2c6Ko1mgJNF5ftX1iEWQQ4Ap7+3GlhjkOA==
81888159

8189-
jsonfile@^2.1.0:
8190-
version "2.4.0"
8191-
resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8"
8192-
integrity sha1-NzaitCi4e72gzIO1P6PWM6NcKug=
8193-
optionalDependencies:
8194-
graceful-fs "^4.1.6"
8195-
81968160
jsonfile@^4.0.0:
81978161
version "4.0.0"
81988162
resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
@@ -8253,13 +8217,6 @@ kind-of@^6.0.0, kind-of@^6.0.2:
82538217
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051"
82548218
integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==
82558219

8256-
klaw@^1.0.0:
8257-
version "1.3.1"
8258-
resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439"
8259-
integrity sha1-QIhDO0azsbolnXh4XY6W9zugJDk=
8260-
optionalDependencies:
8261-
graceful-fs "^4.1.9"
8262-
82638220
lazy-cache@^2.0.1, lazy-cache@^2.0.2:
82648221
version "2.0.2"
82658222
resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-2.0.2.tgz#b9190a4f913354694840859f8a8f7084d8822264"

0 commit comments

Comments
 (0)