From e603ebc0c6e039c1e6382d7fa095b449ba1805a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 1 Jun 2020 21:54:47 -0400 Subject: [PATCH 1/4] fix: #8323, let admins send validation emails without timeout --- src/socket.io/admin/user.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/socket.io/admin/user.js b/src/socket.io/admin/user.js index 7899f2b61b..f0192cf6f9 100644 --- a/src/socket.io/admin/user.js +++ b/src/socket.io/admin/user.js @@ -89,7 +89,7 @@ User.sendValidationEmail = async function (socket, uids) { } await async.eachLimit(uids, 50, async function (uid) { - await user.email.sendValidationEmail(uid); + await user.email.sendValidationEmail(uid, { force: true }); }); }; From 5a2b51543170dc3aeb87d5b6bec743a7f10cb343 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 1 Jun 2020 22:29:56 -0400 Subject: [PATCH 2/4] feat: #8349, remove user posts from queue if user is deleted --- src/user/delete.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/user/delete.js b/src/user/delete.js index 156dafdb1e..1560005aeb 100644 --- a/src/user/delete.js +++ b/src/user/delete.js @@ -29,6 +29,7 @@ module.exports = function (User) { await deletePosts(callerUid, uid); await deleteTopics(callerUid, uid); await deleteUploads(uid); + await deleteQueued(uid); const userData = await User.deleteAccount(uid); return userData; }; @@ -58,6 +59,14 @@ module.exports = function (User) { }, { alwaysStartAt: 0 }); } + async function deleteQueued(uid) { + await batch.processSortedSet('post:queue', async function (ids) { + const data = await db.getObjects(ids.map(id => 'post:queue:' + id)); + const deleteIds = data.filter(d => parseInt(d.uid, 10) === parseInt(uid, 10)).map(d => d.id); + await async.eachSeries(deleteIds, posts.removeFromQueue); + }, { alwaysStartAt: 0 }); + } + async function removeFromSortedSets(uid) { await db.sortedSetsRemove([ 'users:joindate', From 75b3a81dad00eca26d725decfeb7799e9a5ecc2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 1 Jun 2020 23:00:26 -0400 Subject: [PATCH 3/4] fix: clear error log before checking fix intermittent test failure due to analytics being written every 10 seconds --- test/controllers-admin.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/test/controllers-admin.js b/test/controllers-admin.js index 1a2cffac61..283c77de8f 100644 --- a/test/controllers-admin.js +++ b/test/controllers-admin.js @@ -392,11 +392,14 @@ describe('Admin Controllers', function () { }); it('should load /admin/advanced/errors/export', function (done) { - request(nconf.get('url') + '/api/admin/advanced/errors/export', { jar: jar }, function (err, res, body) { + meta.errors.clear(function (err) { assert.ifError(err); - assert.equal(res.statusCode, 200); - assert.strictEqual(body, ''); - done(); + request(nconf.get('url') + '/api/admin/advanced/errors/export', { jar: jar }, function (err, res, body) { + assert.ifError(err); + assert.equal(res.statusCode, 200); + assert.strictEqual(body, ''); + done(); + }); }); }); From d135b6f763dfd3ecfafbdbd3fb2e07e5926136f6 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Tue, 2 Jun 2020 14:23:38 -0400 Subject: [PATCH 4/4] fix(style): enforcing "better" indentation for switch..case --- .eslintrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.eslintrc b/.eslintrc index 70abc88e1e..91d40d2486 100644 --- a/.eslintrc +++ b/.eslintrc @@ -24,7 +24,7 @@ "consistent-return": "off", "func-names": "off", "no-tabs": "off", - "indent": ["error", "tab"], + "indent": ["error", "tab", { "SwitchCase": 1 }], "no-eq-null": "off", "camelcase": "off", "no-new": "off",