From 5c0bda9b1228123094ae32927d8f5bb604ae3db9 Mon Sep 17 00:00:00 2001 From: Justin Gasper Date: Fri, 26 Jul 2024 08:24:31 +1000 Subject: [PATCH 1/3] Build fix --- .circleci/config.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index fc8f3c11..4e6f3414 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,13 +1,12 @@ version: 2.1 python_env: &python_env docker: - - image: cimg/python:3.11.0-browsers + - image: cimg/python:3.11.7-browsers install_awscli: &install_awscli name: "Install awscli" command: | sudo apt update - sudo apt install jq - sudo apt install python3-pip + sudo apt install jq python3-pip sudo pip3 install awscli --upgrade install_deploysuite: &install_deploysuite name: Installation of install_deploysuite. From d19c4b670d428804d0b014b125487b10759fa284 Mon Sep 17 00:00:00 2001 From: Justin Gasper Date: Wed, 31 Jul 2024 10:15:36 +1000 Subject: [PATCH 2/3] Fix up invitation by email --- config/development.json | 2 +- package-lock.json | 27 +++++++++++------------ src/routes/projectMemberInvites/create.js | 10 +++++++-- src/util.js | 1 + 4 files changed, 23 insertions(+), 17 deletions(-) diff --git a/config/development.json b/config/development.json index 7def6e96..23bbf82d 100644 --- a/config/development.json +++ b/config/development.json @@ -5,7 +5,7 @@ "connectProjectsUrl": "https://connect.topcoder-dev.com/projects/", "fileServiceEndpoint": "https://api.topcoder-dev.com/v5/files", "memberServiceEndpoint": "https://api.topcoder-dev.com/v5/members", - "identityServiceEndpoint": "https://api.topcoder-dev.com/v3/", + "identityServiceEndpoint": "https://api.topcoder-dev.com/v5/", "taasJobApiUrl": "https://api.topcoder-dev.com/v5/jobs", "sfdcBillingAccountNameField": "Billing_Account_Name__c", "sfdcBillingAccountMarkupField": "Mark_Up__c", diff --git a/package-lock.json b/package-lock.json index 5e6371b6..19c60a85 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2565,11 +2565,6 @@ "resolved": "https://registry.npmjs.org/crypto-token/-/crypto-token-1.0.1.tgz", "integrity": "sha512-3fsvmFcWClG2D/Crpz0hU6AoPqvTodPq4jlIav9jk+1VE0HcQEoLRuzlti2x0uKr7f7zQjx8m/JNnDNEl6jYfg==" }, - "cssfilter": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", - "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==" - }, "d": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", @@ -3488,6 +3483,14 @@ "uuid": "^3.3.2" } }, + "express-sanitizer": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/express-sanitizer/-/express-sanitizer-1.0.6.tgz", + "integrity": "sha512-77Ruhr/NTVGE2Ecc8pH3XedpreQiHRtwA+ONON0/nJam8Re/AvkGngd8EqKb2YKCqaL4Iw+W33IJXgHgMe7xaQ==", + "requires": { + "sanitizer": "0.1.3" + } + }, "express-validation": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/express-validation/-/express-validation-1.0.3.tgz", @@ -8245,6 +8248,11 @@ "integrity": "sha512-iVL7LibpM3tl4rQPweOXXrmjGegxx27flTOjQEZD3PXe4oZNFzuz6Si4mgleK/JWU/hyCvtV01RUovjvBEpDmw==", "dev": true }, + "sanitizer": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/sanitizer/-/sanitizer-0.1.3.tgz", + "integrity": "sha512-j05vL56tR90rsYqm9ZD05v6K4HI7t4yMDEvvU0x4f+IADXM9Jx1x9mzatxOs5drJq6dGhugxDW99mcPvXVLl+Q==" + }, "sax": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", @@ -9703,15 +9711,6 @@ "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" }, - "xss": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", - "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", - "requires": { - "commander": "^2.20.3", - "cssfilter": "0.0.10" - } - }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", diff --git a/src/routes/projectMemberInvites/create.js b/src/routes/projectMemberInvites/create.js index c49345a2..2880721e 100644 --- a/src/routes/projectMemberInvites/create.js +++ b/src/routes/projectMemberInvites/create.js @@ -294,8 +294,13 @@ module.exports = [ // whom we are inviting, because Member Service has a loose search logic and may return // users with handles whom we didn't search for .then((foundUsers) => { - const lowerCaseHandles = invite.handles.map(handle => handle.toLowerCase()); - return foundUsers.filter(foundUser => _.includes(lowerCaseHandles, foundUser.handleLower)); + if(invite.handles) { + const lowerCaseHandles = invite.handles.map(handle => handle.toLowerCase()); + return foundUsers.filter(foundUser => _.includes(lowerCaseHandles, foundUser.handleLower)); + } + else { + return [] + } }) .then((inviteUsers) => { const members = req.context.currentProjectMembers; @@ -436,6 +441,7 @@ module.exports = [ } }); }).catch((err) => { + console.log(err) if (failed.length) { res.status(403).json(_.assign({}, { success: [] }, { failed })); } else next(err); diff --git a/src/util.js b/src/util.js index 711b76a8..6eab9ecc 100644 --- a/src/util.js +++ b/src/util.js @@ -559,6 +559,7 @@ const projectServiceUtils = { } try { const token = yield this.getM2MToken(); + console.log(`TOKEN: ${token}`) const httpClient = this.getHttpClient({ id: requestId, log: logger }); if (logger) { logger.trace(handles); From e0e7a2b79791743f8aaa040ed463d4b870d70be0 Mon Sep 17 00:00:00 2001 From: Justin Gasper Date: Wed, 31 Jul 2024 10:16:32 +1000 Subject: [PATCH 3/3] Remove debug logging --- src/util.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/util.js b/src/util.js index 6eab9ecc..711b76a8 100644 --- a/src/util.js +++ b/src/util.js @@ -559,7 +559,6 @@ const projectServiceUtils = { } try { const token = yield this.getM2MToken(); - console.log(`TOKEN: ${token}`) const httpClient = this.getHttpClient({ id: requestId, log: logger }); if (logger) { logger.trace(handles);