extract-base-iterator 1.1.2 → 1.1.3

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 CHANGED
@@ -24,7 +24,7 @@ var BaseIterator = require('extract-base-iterator'));
24
24
  // create links after directories and files
25
25
  for (const entry of links) await entry.create(dest, options);
26
26
  } catch (err) {
27
- assert.ok(!err);
27
+ assert.ok(!err, err ? err.message : '');
28
28
  }
29
29
 
30
30
  iterator.destroy();
@@ -57,7 +57,7 @@ var iterator = new YourIterator();
57
57
  // create links after directories and files
58
58
  for (const entry of links) await entry.create(dest, options);
59
59
  } catch (err) {
60
- assert.ok(!err);
60
+ assert.ok(!err, err ? err.message : '');
61
61
  }
62
62
 
63
63
  iterator.destroy();
@@ -115,7 +115,7 @@ iterator.forEach(
115
115
  },
116
116
  { callbacks: true, concurrency: 1 },
117
117
  function (err) {
118
- assert.ok(!err);
118
+ assert.ok(!err, err ? err.message : '');
119
119
 
120
120
  // create links after directories and files
121
121
  var queue = new Queue();
@@ -32,7 +32,7 @@ function symlinkWin32(linkFullPath, linkpath, fullPath, callback) {
32
32
  _gracefulfs.default.symlink(linkpath, fullPath, type, callback);
33
33
  });
34
34
  }
35
- var isWindows = process.platform === 'win32';
35
+ var isWindows = process.platform === 'win32' || /^(msys|cygwin)$/.test(process.env.OSTYPE);
36
36
  var MANDATORY_ATTRIBUTES = [
37
37
  'mode',
38
38
  'mtime',
@@ -1 +1 @@
1
- {"version":3,"sources":["SymbolicLinkEntry.mjs"],"sourcesContent":["import path from 'path';\nimport fs from 'graceful-fs';\nimport isAbsolute from 'is-absolute';\nimport mkpath from 'mkpath';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport chmod from './fs/chmod.mjs';\nimport chown from './fs/chown.mjs';\nimport lstatReal from './fs/lstatReal.mjs';\nimport utimes from './fs/utimes.mjs';\nimport stripPath from './stripPath.mjs';\nimport validateAttributes from './validateAttributes.mjs';\n\nfunction symlinkWin32(linkFullPath, linkpath, fullPath, callback) {\n lstatReal(linkFullPath, (err, targetStat) => {\n if (err || !targetStat) return callback(err || new Error(`Symlink path does not exist${linkFullPath}`));\n const type = targetStat.isDirectory() ? 'dir' : 'file';\n fs.symlink(linkpath, fullPath, type, callback);\n });\n}\nconst isWindows = process.platform === 'win32';\n\nconst MANDATORY_ATTRIBUTES = ['mode', 'mtime', 'path', 'linkpath'];\n\nexport default function SymbolicLinkEntry(attributes) {\n validateAttributes(attributes, MANDATORY_ATTRIBUTES);\n Object.assign(this, attributes);\n if (this.basename === undefined) this.basename = path.basename(this.path);\n if (this.type === undefined) this.type = 'symlink';\n}\n\nSymbolicLinkEntry.prototype.create = function create(dest, options, callback) {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n\n const self = this;\n if (typeof callback === 'function') {\n options = options || {};\n try {\n const normalizedPath = path.normalize(self.path);\n const fullPath = path.join(dest, stripPath(normalizedPath, options));\n let normalizedLinkpath = path.normalize(self.linkpath);\n let linkFullPath = path.join(dest, stripPath(normalizedLinkpath, options));\n if (!isAbsolute(normalizedLinkpath)) {\n const linkRelativePath = path.join(path.dirname(normalizedPath), self.linkpath);\n linkFullPath = path.join(dest, stripPath(linkRelativePath, options));\n normalizedLinkpath = path.relative(path.dirname(fullPath), linkFullPath);\n }\n\n const queue = new Queue(1);\n if (options.force) {\n queue.defer((callback) => {\n rimraf2(fullPath, { disableGlob: true }, (err) => {\n err && err.code !== 'ENOENT' ? callback(err) : callback();\n });\n });\n }\n queue.defer(mkpath.bind(null, path.dirname(fullPath)));\n if (isWindows) queue.defer(symlinkWin32.bind(null, linkFullPath, normalizedLinkpath, fullPath));\n else queue.defer(fs.symlink.bind(fs, normalizedLinkpath, fullPath));\n queue.defer(chmod.bind(null, fullPath, self, options));\n queue.defer(chown.bind(null, fullPath, self, options));\n queue.defer(utimes.bind(null, fullPath, self, options));\n return queue.await(callback);\n } catch (err) {\n return callback(err);\n }\n }\n\n return new Promise(function createPromise(resolve, reject) {\n self.create(dest, options, function createCallback(err, done) {\n err ? reject(err) : resolve(done);\n });\n });\n};\n\nSymbolicLinkEntry.prototype.destroy = function destroy() {};\n"],"names":["SymbolicLinkEntry","symlinkWin32","linkFullPath","linkpath","fullPath","callback","lstatReal","err","targetStat","Error","type","isDirectory","fs","symlink","isWindows","process","platform","MANDATORY_ATTRIBUTES","attributes","validateAttributes","Object","assign","basename","undefined","path","prototype","create","dest","options","self","normalizedPath","normalize","join","stripPath","normalizedLinkpath","isAbsolute","linkRelativePath","dirname","relative","queue","Queue","force","defer","rimraf2","disableGlob","code","mkpath","bind","chmod","chown","utimes","await","Promise","createPromise","resolve","reject","createCallback","done","destroy"],"mappings":"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"}
1
+ {"version":3,"sources":["SymbolicLinkEntry.mjs"],"sourcesContent":["import path from 'path';\nimport fs from 'graceful-fs';\nimport isAbsolute from 'is-absolute';\nimport mkpath from 'mkpath';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport chmod from './fs/chmod.mjs';\nimport chown from './fs/chown.mjs';\nimport lstatReal from './fs/lstatReal.mjs';\nimport utimes from './fs/utimes.mjs';\nimport stripPath from './stripPath.mjs';\nimport validateAttributes from './validateAttributes.mjs';\n\nfunction symlinkWin32(linkFullPath, linkpath, fullPath, callback) {\n lstatReal(linkFullPath, (err, targetStat) => {\n if (err || !targetStat) return callback(err || new Error(`Symlink path does not exist${linkFullPath}`));\n const type = targetStat.isDirectory() ? 'dir' : 'file';\n fs.symlink(linkpath, fullPath, type, callback);\n });\n}\nconst isWindows = process.platform === 'win32' || /^(msys|cygwin)$/.test(process.env.OSTYPE);\n\nconst MANDATORY_ATTRIBUTES = ['mode', 'mtime', 'path', 'linkpath'];\n\nexport default function SymbolicLinkEntry(attributes) {\n validateAttributes(attributes, MANDATORY_ATTRIBUTES);\n Object.assign(this, attributes);\n if (this.basename === undefined) this.basename = path.basename(this.path);\n if (this.type === undefined) this.type = 'symlink';\n}\n\nSymbolicLinkEntry.prototype.create = function create(dest, options, callback) {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n\n const self = this;\n if (typeof callback === 'function') {\n options = options || {};\n try {\n const normalizedPath = path.normalize(self.path);\n const fullPath = path.join(dest, stripPath(normalizedPath, options));\n let normalizedLinkpath = path.normalize(self.linkpath);\n let linkFullPath = path.join(dest, stripPath(normalizedLinkpath, options));\n if (!isAbsolute(normalizedLinkpath)) {\n const linkRelativePath = path.join(path.dirname(normalizedPath), self.linkpath);\n linkFullPath = path.join(dest, stripPath(linkRelativePath, options));\n normalizedLinkpath = path.relative(path.dirname(fullPath), linkFullPath);\n }\n\n const queue = new Queue(1);\n if (options.force) {\n queue.defer((callback) => {\n rimraf2(fullPath, { disableGlob: true }, (err) => {\n err && err.code !== 'ENOENT' ? callback(err) : callback();\n });\n });\n }\n queue.defer(mkpath.bind(null, path.dirname(fullPath)));\n if (isWindows) queue.defer(symlinkWin32.bind(null, linkFullPath, normalizedLinkpath, fullPath));\n else queue.defer(fs.symlink.bind(fs, normalizedLinkpath, fullPath));\n queue.defer(chmod.bind(null, fullPath, self, options));\n queue.defer(chown.bind(null, fullPath, self, options));\n queue.defer(utimes.bind(null, fullPath, self, options));\n return queue.await(callback);\n } catch (err) {\n return callback(err);\n }\n }\n\n return new Promise(function createPromise(resolve, reject) {\n self.create(dest, options, function createCallback(err, done) {\n err ? reject(err) : resolve(done);\n });\n });\n};\n\nSymbolicLinkEntry.prototype.destroy = function destroy() {};\n"],"names":["SymbolicLinkEntry","symlinkWin32","linkFullPath","linkpath","fullPath","callback","lstatReal","err","targetStat","Error","type","isDirectory","fs","symlink","isWindows","process","platform","test","env","OSTYPE","MANDATORY_ATTRIBUTES","attributes","validateAttributes","Object","assign","basename","undefined","path","prototype","create","dest","options","self","normalizedPath","normalize","join","stripPath","normalizedLinkpath","isAbsolute","linkRelativePath","dirname","relative","queue","Queue","force","defer","rimraf2","disableGlob","code","mkpath","bind","chmod","chown","utimes","await","Promise","createPromise","resolve","reject","createCallback","done","destroy"],"mappings":"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"}
@@ -17,7 +17,7 @@ function symlinkWin32(linkFullPath, linkpath, fullPath, callback) {
17
17
  fs.symlink(linkpath, fullPath, type, callback);
18
18
  });
19
19
  }
20
- const isWindows = process.platform === 'win32';
20
+ const isWindows = process.platform === 'win32' || /^(msys|cygwin)$/.test(process.env.OSTYPE);
21
21
  const MANDATORY_ATTRIBUTES = [
22
22
  'mode',
23
23
  'mtime',
@@ -1 +1 @@
1
- {"version":3,"sources":["SymbolicLinkEntry.mjs"],"sourcesContent":["import path from 'path';\nimport fs from 'graceful-fs';\nimport isAbsolute from 'is-absolute';\nimport mkpath from 'mkpath';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport chmod from './fs/chmod.mjs';\nimport chown from './fs/chown.mjs';\nimport lstatReal from './fs/lstatReal.mjs';\nimport utimes from './fs/utimes.mjs';\nimport stripPath from './stripPath.mjs';\nimport validateAttributes from './validateAttributes.mjs';\n\nfunction symlinkWin32(linkFullPath, linkpath, fullPath, callback) {\n lstatReal(linkFullPath, (err, targetStat) => {\n if (err || !targetStat) return callback(err || new Error(`Symlink path does not exist${linkFullPath}`));\n const type = targetStat.isDirectory() ? 'dir' : 'file';\n fs.symlink(linkpath, fullPath, type, callback);\n });\n}\nconst isWindows = process.platform === 'win32';\n\nconst MANDATORY_ATTRIBUTES = ['mode', 'mtime', 'path', 'linkpath'];\n\nexport default function SymbolicLinkEntry(attributes) {\n validateAttributes(attributes, MANDATORY_ATTRIBUTES);\n Object.assign(this, attributes);\n if (this.basename === undefined) this.basename = path.basename(this.path);\n if (this.type === undefined) this.type = 'symlink';\n}\n\nSymbolicLinkEntry.prototype.create = function create(dest, options, callback) {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n\n const self = this;\n if (typeof callback === 'function') {\n options = options || {};\n try {\n const normalizedPath = path.normalize(self.path);\n const fullPath = path.join(dest, stripPath(normalizedPath, options));\n let normalizedLinkpath = path.normalize(self.linkpath);\n let linkFullPath = path.join(dest, stripPath(normalizedLinkpath, options));\n if (!isAbsolute(normalizedLinkpath)) {\n const linkRelativePath = path.join(path.dirname(normalizedPath), self.linkpath);\n linkFullPath = path.join(dest, stripPath(linkRelativePath, options));\n normalizedLinkpath = path.relative(path.dirname(fullPath), linkFullPath);\n }\n\n const queue = new Queue(1);\n if (options.force) {\n queue.defer((callback) => {\n rimraf2(fullPath, { disableGlob: true }, (err) => {\n err && err.code !== 'ENOENT' ? callback(err) : callback();\n });\n });\n }\n queue.defer(mkpath.bind(null, path.dirname(fullPath)));\n if (isWindows) queue.defer(symlinkWin32.bind(null, linkFullPath, normalizedLinkpath, fullPath));\n else queue.defer(fs.symlink.bind(fs, normalizedLinkpath, fullPath));\n queue.defer(chmod.bind(null, fullPath, self, options));\n queue.defer(chown.bind(null, fullPath, self, options));\n queue.defer(utimes.bind(null, fullPath, self, options));\n return queue.await(callback);\n } catch (err) {\n return callback(err);\n }\n }\n\n return new Promise(function createPromise(resolve, reject) {\n self.create(dest, options, function createCallback(err, done) {\n err ? reject(err) : resolve(done);\n });\n });\n};\n\nSymbolicLinkEntry.prototype.destroy = function destroy() {};\n"],"names":["path","fs","isAbsolute","mkpath","Queue","rimraf2","chmod","chown","lstatReal","utimes","stripPath","validateAttributes","symlinkWin32","linkFullPath","linkpath","fullPath","callback","err","targetStat","Error","type","isDirectory","symlink","isWindows","process","platform","MANDATORY_ATTRIBUTES","SymbolicLinkEntry","attributes","Object","assign","basename","undefined","prototype","create","dest","options","self","normalizedPath","normalize","join","normalizedLinkpath","linkRelativePath","dirname","relative","queue","force","defer","disableGlob","code","bind","await","Promise","createPromise","resolve","reject","createCallback","done","destroy"],"mappings":"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"}
1
+ {"version":3,"sources":["SymbolicLinkEntry.mjs"],"sourcesContent":["import path from 'path';\nimport fs from 'graceful-fs';\nimport isAbsolute from 'is-absolute';\nimport mkpath from 'mkpath';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport chmod from './fs/chmod.mjs';\nimport chown from './fs/chown.mjs';\nimport lstatReal from './fs/lstatReal.mjs';\nimport utimes from './fs/utimes.mjs';\nimport stripPath from './stripPath.mjs';\nimport validateAttributes from './validateAttributes.mjs';\n\nfunction symlinkWin32(linkFullPath, linkpath, fullPath, callback) {\n lstatReal(linkFullPath, (err, targetStat) => {\n if (err || !targetStat) return callback(err || new Error(`Symlink path does not exist${linkFullPath}`));\n const type = targetStat.isDirectory() ? 'dir' : 'file';\n fs.symlink(linkpath, fullPath, type, callback);\n });\n}\nconst isWindows = process.platform === 'win32' || /^(msys|cygwin)$/.test(process.env.OSTYPE);\n\nconst MANDATORY_ATTRIBUTES = ['mode', 'mtime', 'path', 'linkpath'];\n\nexport default function SymbolicLinkEntry(attributes) {\n validateAttributes(attributes, MANDATORY_ATTRIBUTES);\n Object.assign(this, attributes);\n if (this.basename === undefined) this.basename = path.basename(this.path);\n if (this.type === undefined) this.type = 'symlink';\n}\n\nSymbolicLinkEntry.prototype.create = function create(dest, options, callback) {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n\n const self = this;\n if (typeof callback === 'function') {\n options = options || {};\n try {\n const normalizedPath = path.normalize(self.path);\n const fullPath = path.join(dest, stripPath(normalizedPath, options));\n let normalizedLinkpath = path.normalize(self.linkpath);\n let linkFullPath = path.join(dest, stripPath(normalizedLinkpath, options));\n if (!isAbsolute(normalizedLinkpath)) {\n const linkRelativePath = path.join(path.dirname(normalizedPath), self.linkpath);\n linkFullPath = path.join(dest, stripPath(linkRelativePath, options));\n normalizedLinkpath = path.relative(path.dirname(fullPath), linkFullPath);\n }\n\n const queue = new Queue(1);\n if (options.force) {\n queue.defer((callback) => {\n rimraf2(fullPath, { disableGlob: true }, (err) => {\n err && err.code !== 'ENOENT' ? callback(err) : callback();\n });\n });\n }\n queue.defer(mkpath.bind(null, path.dirname(fullPath)));\n if (isWindows) queue.defer(symlinkWin32.bind(null, linkFullPath, normalizedLinkpath, fullPath));\n else queue.defer(fs.symlink.bind(fs, normalizedLinkpath, fullPath));\n queue.defer(chmod.bind(null, fullPath, self, options));\n queue.defer(chown.bind(null, fullPath, self, options));\n queue.defer(utimes.bind(null, fullPath, self, options));\n return queue.await(callback);\n } catch (err) {\n return callback(err);\n }\n }\n\n return new Promise(function createPromise(resolve, reject) {\n self.create(dest, options, function createCallback(err, done) {\n err ? reject(err) : resolve(done);\n });\n });\n};\n\nSymbolicLinkEntry.prototype.destroy = function destroy() {};\n"],"names":["path","fs","isAbsolute","mkpath","Queue","rimraf2","chmod","chown","lstatReal","utimes","stripPath","validateAttributes","symlinkWin32","linkFullPath","linkpath","fullPath","callback","err","targetStat","Error","type","isDirectory","symlink","isWindows","process","platform","test","env","OSTYPE","MANDATORY_ATTRIBUTES","SymbolicLinkEntry","attributes","Object","assign","basename","undefined","prototype","create","dest","options","self","normalizedPath","normalize","join","normalizedLinkpath","linkRelativePath","dirname","relative","queue","force","defer","disableGlob","code","bind","await","Promise","createPromise","resolve","reject","createCallback","done","destroy"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "extract-base-iterator",
3
- "version": "1.1.2",
3
+ "version": "1.1.3",
4
4
  "description": "Base iterator for extract iterators like tar-iterator and zip-iterator",
5
5
  "keywords": [
6
6
  "extract",
@@ -51,7 +51,7 @@
51
51
  "lodash.compact": "^3.0.1",
52
52
  "mkpath": "^1.0.0",
53
53
  "queue-cb": "^1.2.1",
54
- "rimraf2": "^2.7.1",
54
+ "rimraf2": "^2.8.1",
55
55
  "stack-base-iterator": "^1.1.2"
56
56
  },
57
57
  "devDependencies": {
@@ -60,11 +60,11 @@
60
60
  "@types/node": "^22.10.1",
61
61
  "cr": "^0.1.0",
62
62
  "depcheck": "^1.4.7",
63
- "fs-iterator": "^5.1.0",
63
+ "fs-iterator": "^5.1.1",
64
64
  "fs-stats-spys": "^1.0.2",
65
65
  "inherits": "^2.0.4",
66
66
  "lodash.find": "^4.6.0",
67
- "ts-dev-stack": "^0.16.2"
67
+ "ts-dev-stack": "^0.17.0"
68
68
  },
69
69
  "engines": {
70
70
  "node": ">=0.8"