This is an automated email from the ASF dual-hosted git repository.

mhenke pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-runtime-nodejs.git


The following commit(s) were added to refs/heads/master by this push:
     new b57dd2a  Update package.json packages to latest version (#215)
b57dd2a is described below

commit b57dd2a756e42e6931c5639cbbff6f313599ae72
Author: Luke-Roy-IBM <[email protected]>
AuthorDate: Tue Mar 22 10:56:51 2022 +0100

    Update package.json packages to latest version (#215)
    
    adapt serialize-error to use a dynamic import instead of deprecated require
    use express.json to replace bodyParser.json (remove bodyparser)
---
 core/nodejsActionBase/app.js       |  2 +-
 core/nodejsActionBase/package.json | 15 +++++++--------
 core/nodejsActionBase/runner.js    | 13 +++++++++++--
 3 files changed, 19 insertions(+), 11 deletions(-)

diff --git a/core/nodejsActionBase/app.js b/core/nodejsActionBase/app.js
index c50647d..7b064d2 100644
--- a/core/nodejsActionBase/app.js
+++ b/core/nodejsActionBase/app.js
@@ -41,7 +41,7 @@ var service = require('./src/service').getService(config);
  * setup a middleware layer to restrict the request body size
  * this middleware is called every time a request is sent to the server
  */
-app.use(bodyParser.json({ limit: config.requestBodyLimit }));
+app.use(express.json({ limit: config.requestBodyLimit }));
 
 // identify the target Serverless platform
 const platformFactory = require('./platform/platform.js');
diff --git a/core/nodejsActionBase/package.json 
b/core/nodejsActionBase/package.json
index 0f891e0..afc9f23 100644
--- a/core/nodejsActionBase/package.json
+++ b/core/nodejsActionBase/package.json
@@ -8,21 +8,20 @@
   },
   "license": "Apache-2.0",
   "devDependencies": {
-    "btoa": "1.1.2",
+    "btoa": "1.2.1",
     "eslint": "^5.16.0",
     "eslint-config-standard": "^12.0.0",
     "eslint-plugin-import": "^2.17.2",
     "eslint-plugin-node": "^8.0.1",
     "eslint-plugin-promise": "^4.1.1",
     "eslint-plugin-standard": "^4.0.0",
-    "request": "2.79.0"
+    "request": "2.88.2"
   },
   "dependencies": {
-    "openwhisk": "3.21.4",
-    "body-parser": "1.18.3",
-    "express": "4.16.4",
-    "serialize-error": "3.0.0",
-    "redis": "2.8.0",
-    "uuid": "3.3.0"
+    "openwhisk": "3.21.6",
+    "express": "4.17.3",
+    "serialize-error": "9.1.0",
+    "redis": "4.0.4",
+    "uuid": "8.3.2"
   }
 }
diff --git a/core/nodejsActionBase/runner.js b/core/nodejsActionBase/runner.js
index 43f758b..46355cc 100644
--- a/core/nodejsActionBase/runner.js
+++ b/core/nodejsActionBase/runner.js
@@ -104,8 +104,17 @@ class NodeActionRunner {
             if (!error) {
                 resolve({error: {}});
             } else {
-                const serializeError = require('serialize-error');
-                resolve({error: serializeError(error)});
+                // Replace unsupported require statement with
+                // dynamically import npm serialize-error package returning a 
promise
+                import('serialize-error')
+                .then(module => {
+                    // if serialize-error is imported correctly the function 
resolves with a serializedError
+                    resolve({error: module.serializeError(error)});
+                })
+                .catch(err => {
+                    // When there is an error to serialize the error object, 
resolve with the error message
+                    resolve({error: err.message });
+                });
             }
         });
     }

Reply via email to