node.jsmongodbmongodb-stitchjimp

mongodb stitch function is having error in using node modeule @jimp


I am using mongodb stitch function on database trigger to read image from URL using node js jimp module https://www.npmjs.com/package/jimp

I have uploaded jimp as external dependency to stitch function. Below is code i am using in function

const jimp = require('jimp');
const imageUrl = "https://images.unsplash.com/photo-1537454959372-885b35677ef5?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1050&q=80";
let image2 = await jimp.read(imageUrl);  

Getting below error while execution of function

Error:
failed to execute source for 'jimp': failed to execute source for 'node_modules/jimp/dist/@jimp/custom': failed to execute source for 'node_modules/@jimp/custom/dist/@jimp/core': failed to execute source for 'node_modules/@jimp/core/dist/utils/mime': failed to execute source for 'node_modules/@jimp/core/dist/utils/core-js/modules/es.array.includes': TypeError
    at defineProperty (<native code>)
    at <anonymous>:6:12670
    at defineProperty (node_modules/core-js/internals/typed-array-constructor.js:87:11)
    at node_modules/core-js/internals/create-non-enumerable-property.js:12:10
    at node_modules/core-js/internals/redefine.js:34:35
    at node_modules/core-js/internals/export.js:60:5
    at node_modules/core-js/modules/es.array.includes.js:16:1
    at node_modules/@jimp/core/dist/utils/mime.js:9:1
    at node_modules/@jimp/core/dist/index.js:160:36
    at node_modules/@jimp/custom/dist/index.js:44:37
    at node_modules/jimp/dist/index.js:14:38 

Solution

  • looks like jimp is using Array.prototype.includes

    it is currently not supported by stitch function

    Functions currently do not support the following ES6+ features:
    
     - New Global Object Types (i.e. WeakMap, Set, WeakSet, Symbol, Proxy)
     - New Math, Number, String, Array, and Object APIs (e.g.   
       Array.prototype.includes)
    

    reference: https://docs.mongodb.com/stitch/functions/