@@ -13,3 +13,3 @@ 'use strict' | ||
| try { | ||
| dstStat = await fs.lstat(dstpath) | ||
| dstStat = await fs.lstat(dstpath, { bigint: true }) | ||
| } catch { | ||
@@ -21,3 +21,3 @@ // ignore error | ||
| try { | ||
| srcStat = await fs.lstat(srcpath) | ||
| srcStat = await fs.lstat(srcpath, { bigint: true }) | ||
| } catch (err) { | ||
@@ -44,7 +44,7 @@ err.message = err.message.replace('lstat', 'ensureLink') | ||
| try { | ||
| dstStat = fs.lstatSync(dstpath) | ||
| dstStat = fs.lstatSync(dstpath, { bigint: true }) | ||
| } catch {} | ||
| try { | ||
| const srcStat = fs.lstatSync(srcpath) | ||
| const srcStat = fs.lstatSync(srcpath, { bigint: true }) | ||
| if (dstStat && areIdentical(srcStat, dstStat)) return | ||
@@ -51,0 +51,0 @@ } catch (err) { |
@@ -27,3 +27,3 @@ 'use strict' | ||
| if (path.isAbsolute(srcpath)) { | ||
| srcStat = await fs.stat(srcpath) | ||
| srcStat = await fs.stat(srcpath, { bigint: true }) | ||
| } else { | ||
@@ -33,9 +33,9 @@ const dstdir = path.dirname(dstpath) | ||
| try { | ||
| srcStat = await fs.stat(relativeToDst) | ||
| srcStat = await fs.stat(relativeToDst, { bigint: true }) | ||
| } catch { | ||
| srcStat = await fs.stat(srcpath) | ||
| srcStat = await fs.stat(srcpath, { bigint: true }) | ||
| } | ||
| } | ||
| const dstStat = await fs.stat(dstpath) | ||
| const dstStat = await fs.stat(dstpath, { bigint: true }) | ||
| if (areIdentical(srcStat, dstStat)) return | ||
@@ -66,3 +66,3 @@ } | ||
| if (path.isAbsolute(srcpath)) { | ||
| srcStat = fs.statSync(srcpath) | ||
| srcStat = fs.statSync(srcpath, { bigint: true }) | ||
| } else { | ||
@@ -72,9 +72,9 @@ const dstdir = path.dirname(dstpath) | ||
| try { | ||
| srcStat = fs.statSync(relativeToDst) | ||
| srcStat = fs.statSync(relativeToDst, { bigint: true }) | ||
| } catch { | ||
| srcStat = fs.statSync(srcpath) | ||
| srcStat = fs.statSync(srcpath, { bigint: true }) | ||
| } | ||
| } | ||
| const dstStat = fs.statSync(dstpath) | ||
| const dstStat = fs.statSync(dstpath, { bigint: true }) | ||
| if (areIdentical(srcStat, dstStat)) return | ||
@@ -81,0 +81,0 @@ } |
+25
-8
@@ -7,19 +7,20 @@ 'use strict' | ||
| async function utimesMillis (path, atime, mtime) { | ||
| // if (!HAS_MILLIS_RES) return fs.utimes(path, atime, mtime, callback) | ||
| const fd = await fs.open(path, 'r+') | ||
| let closeErr = null | ||
| let error = null | ||
| try { | ||
| await fs.futimes(fd, atime, mtime) | ||
| } catch (futimesErr) { | ||
| error = futimesErr | ||
| } finally { | ||
| try { | ||
| await fs.close(fd) | ||
| } catch (e) { | ||
| closeErr = e | ||
| } catch (closeErr) { | ||
| if (!error) error = closeErr | ||
| } | ||
| } | ||
| if (closeErr) { | ||
| throw closeErr | ||
| if (error) { | ||
| throw error | ||
| } | ||
@@ -30,4 +31,20 @@ } | ||
| const fd = fs.openSync(path, 'r+') | ||
| fs.futimesSync(fd, atime, mtime) | ||
| return fs.closeSync(fd) | ||
| let error = null | ||
| try { | ||
| fs.futimesSync(fd, atime, mtime) | ||
| } catch (futimesErr) { | ||
| error = futimesErr | ||
| } finally { | ||
| try { | ||
| fs.closeSync(fd) | ||
| } catch (closeErr) { | ||
| if (!error) error = closeErr | ||
| } | ||
| } | ||
| if (error) { | ||
| throw error | ||
| } | ||
| } | ||
@@ -34,0 +51,0 @@ |
+1
-1
| { | ||
| "name": "fs-extra", | ||
| "version": "11.3.4", | ||
| "version": "11.3.5", | ||
| "description": "fs-extra contains methods that aren't included in the vanilla Node.js fs package. Such as recursive mkdir, copy, and remove.", | ||
@@ -5,0 +5,0 @@ "engines": { |
58119
0.71%1324
1.07%