diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..bd38d41 --- /dev/null +++ b/.npmignore @@ -0,0 +1,13 @@ +*.md +.DS_Store +.eslintcache +.eslintrc +.github +.meteor +.npm +.meteorignore +.versions +.editorconfig +node_modules +npm-debug.log* +package.js diff --git a/meteor.js b/meteor.js index f93f2a0..3003942 100644 --- a/meteor.js +++ b/meteor.js @@ -64,11 +64,15 @@ const deleteFolderRecursive = (_path) => { if(fs.existsSync(_path)) { files = fs.readdirSync(_path); files.forEach((file) => { - const curPath = `${_path}/${file}`; - if (fs.lstatSync(curPath).isDirectory()) { // recurse - deleteFolderRecursive(curPath); - } else { // delete file - fs.unlinkSync(curPath); + try { + const curPath = `${_path}/${file}`; + if (fs.lstatSync(curPath).isDirectory()) { // recurse + deleteFolderRecursive(curPath); + } else { // delete file + fs.unlinkSync(curPath); + } + } catch (_e) { + // silence here } }); fs.rmdirSync(_path); @@ -109,13 +113,15 @@ module.exports = { const legacyDirs = ['/bundle/programs/web.browser.legacy', '/bundle/programs/web.browser.legacy/app']; const dataPaths = fs.lstatSync(path.join(buildPath, legacyDirs[0])).isDirectory() ? legacyDirs : modernDirs; - _.each(dataPaths, (givenPath) => { + dataPaths.forEach((givenPath) => { const clientPath = path.join(buildPath, givenPath); - let rootFolder = fs.readdirSync(clientPath); - rootFolder = _.without(rootFolder, 'app'); - rootFolder.forEach((file) => { - fs.copySync(path.join(clientPath, file), path.join(outputPath, file)); - }); + if (fs.lstatSync(clientPath).isDirectory()) { + let rootFolder = fs.readdirSync(clientPath); + rootFolder = _.without(rootFolder, 'app'); + rootFolder.forEach((file) => { + fs.copySync(path.join(clientPath, file), path.join(outputPath, file)); + }); + } }); } catch(e) { print('[move()] Exception:', e); diff --git a/package-lock.json b/package-lock.json index 86cc5ce..58dacf6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "meteor-build-client", - "version": "1.2.0", + "version": "1.2.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.js b/package.js index 0463703..36a9ddb 100644 --- a/package.js +++ b/package.js @@ -1,7 +1,7 @@ Package.describe({ name: 'frozeman:build-client', summary: 'Placeholder package for meteor-build-client (npm). Do not install!', - version: '1.2.1', + version: '1.2.2', git: 'https://github.com/frozeman/meteor-build-client' }); diff --git a/package.json b/package.json index fca6f4d..f1bc45b 100644 --- a/package.json +++ b/package.json @@ -1,12 +1,16 @@ { "name": "meteor-build-client", - "version": "1.2.1", - "description": "A bundles the client part of a Meteor app.", + "version": "1.2.2", + "description": "Meteor bundler for the client part of an app.", "author": "Fabian Vogelsteller ", "contributors": [ { "name": "Morten N.O. Nørgaard Henriksen", "email": "mh@gi2.dk" + }, + { + "name": "dr-dimitru", + "url": "https://github.com/dr-dimitru" } ], "preferGlobal": true, @@ -36,7 +40,7 @@ "bluebird": "^3.7.2", "buffered-spawn": "^3.3.2", "commander": "^6.2.0", - "fs-extra": "^9.0.1", + "fs-extra": "^9.1.0", "underscore": "^1.12.0" }, "devDependencies": {}