From 024e902fbe15a7181b9233b3c95b3a34ce8e4a56 Mon Sep 17 00:00:00 2001 From: Belen Curcio Date: Fri, 4 Nov 2016 12:25:24 -0300 Subject: [PATCH 1/6] =?UTF-8?q?=C3=BAse=20process=20exit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .eslintrc.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.eslintrc.json b/.eslintrc.json index eec982dac..91ae8d713 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -35,7 +35,7 @@ "no-throw-literal": [2], "yoda": [1], "no-path-concat": [2], - "no-process-exit": [2], + "no-process-exit": [0], "eol-last": [1], "no-continue": [1], "no-nested-ternary": [1], From 0cc5bdb04f71dd4556b3a1f654e994dbaee34ddc Mon Sep 17 00:00:00 2001 From: Belen Curcio Date: Fri, 4 Nov 2016 12:47:56 -0300 Subject: [PATCH 2/6] throwing --- .eslintrc.json | 2 +- bin/init.js | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index 91ae8d713..eec982dac 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -35,7 +35,7 @@ "no-throw-literal": [2], "yoda": [1], "no-path-concat": [2], - "no-process-exit": [0], + "no-process-exit": [2], "eol-last": [1], "no-continue": [1], "no-nested-ternary": [1], diff --git a/bin/init.js b/bin/init.js index d114d4819..4f4f1eb3a 100644 --- a/bin/init.js +++ b/bin/init.js @@ -1,7 +1,13 @@ const Setting = require('../models/setting'); const defaults = {id: '1', moderation: 'pre'}; -Setting.update({id: '1'}, {$setOnInsert: defaults}, {upsert: true}).then(() => { - console.log('created settings object.'); - process.exit(); -}).catch(console.error); +try { + Setting.update({id: '1'}, {$setOnInsert: defaults}, {upsert: true}) + .then(() => { + console.log('Created settings object.'); + }).catch((err) => { + if (err) throw err; + }); +} catch (err) { + console.log('Cannot create settings object.'); +} From 3ea22d0ecee85391c6f54e48c291d29ad9637880 Mon Sep 17 00:00:00 2001 From: Belen Curcio Date: Fri, 4 Nov 2016 13:02:47 -0300 Subject: [PATCH 3/6] Console Error --- bin/init.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/init.js b/bin/init.js index 4f4f1eb3a..4c859f498 100644 --- a/bin/init.js +++ b/bin/init.js @@ -9,5 +9,5 @@ try { if (err) throw err; }); } catch (err) { - console.log('Cannot create settings object.'); + console.error('Cannot create settings object. ', err); } From 1876d38089837575fcd142ca6274879ccc24de4b Mon Sep 17 00:00:00 2001 From: Riley Davis Date: Fri, 4 Nov 2016 10:09:44 -0600 Subject: [PATCH 4/6] disconnect mongoose --- bin/init.js | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/bin/init.js b/bin/init.js index 4c859f498..0efa24c48 100644 --- a/bin/init.js +++ b/bin/init.js @@ -1,13 +1,12 @@ +const mongoose = require('../mongoose'); const Setting = require('../models/setting'); const defaults = {id: '1', moderation: 'pre'}; -try { - Setting.update({id: '1'}, {$setOnInsert: defaults}, {upsert: true}) - .then(() => { - console.log('Created settings object.'); - }).catch((err) => { - if (err) throw err; - }); -} catch (err) { - console.error('Cannot create settings object. ', err); -} +Setting.update({id: '1'}, {$setOnInsert: defaults}, {upsert: true}) + .then(() => { + console.log('Created settings object.'); + mongoose.disconnect(); + }).catch((err) => { + console.error(`failed to create the settings object ${JSON.stringify(err)}`); + mongoose.disconnect(); + }); From 1bab2d3e4eec488d79c6209a8ec8cce1501788c2 Mon Sep 17 00:00:00 2001 From: Riley Davis Date: Fri, 4 Nov 2016 10:11:13 -0600 Subject: [PATCH 5/6] still throw error --- bin/init.js | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/init.js b/bin/init.js index 0efa24c48..ff31ba9a9 100644 --- a/bin/init.js +++ b/bin/init.js @@ -9,4 +9,5 @@ Setting.update({id: '1'}, {$setOnInsert: defaults}, {upsert: true}) }).catch((err) => { console.error(`failed to create the settings object ${JSON.stringify(err)}`); mongoose.disconnect(); + throw new Error(err); // just to be safe }); From 5bef61abe927cd0ee06538e5dcb1225186a0d5e1 Mon Sep 17 00:00:00 2001 From: Riley Davis Date: Fri, 4 Nov 2016 10:26:39 -0600 Subject: [PATCH 6/6] let exceptional circumstances be exceptional --- bin/init.js | 1 - 1 file changed, 1 deletion(-) diff --git a/bin/init.js b/bin/init.js index ff31ba9a9..d8be5a6fa 100644 --- a/bin/init.js +++ b/bin/init.js @@ -8,6 +8,5 @@ Setting.update({id: '1'}, {$setOnInsert: defaults}, {upsert: true}) mongoose.disconnect(); }).catch((err) => { console.error(`failed to create the settings object ${JSON.stringify(err)}`); - mongoose.disconnect(); throw new Error(err); // just to be safe });