serverless-bundle icon indicating copy to clipboard operation
serverless-bundle copied to clipboard

Trouble using node-vibrant with serverless-bundle

Open Susan123456789 opened this issue 6 years ago • 2 comments

I am trying to use node-vibrant on an image Buffer (obtained from an image on s3) in a node.js serverless function.

        const image=
            await s3.getObject({
                Bucket:     bucket,
                Key:        key,
            }).promise();

        const palette = await Vibrant.from(image.Body).getPalette();

However, I keep getting the error:

TypeError: Jimp.read is not a function
    at NodeImage.../../@vibrant/image-node/lib/index.js.NodeImage._loadByJimp (/mnt/c/dev/photobook/image-optimizer/.webpack/image-optimizer/webpack:/mnt/c/dev/photobook/image-optimizer/node_modules/@vibrant/image-node/lib/index.js:61:1)
    at NodeImage.../../@vibrant/image-node/lib/index.js.NodeImage.load (/mnt/c/dev/photobook/image-optimizer/.webpack/image-optimizer/webpack:/mnt/c/dev/photobook/image-optimizer/node_modules/@vibrant/image-node/lib/index.js:72:1)
    at Vibrant.../../@vibrant/core/lib/index.js.Vibrant.getPalette (/mnt/c/dev/photobook/image-optimizer/.webpack/image-optimizer/webpack:/mnt/c/dev/photobook/image-optimizer/node_modules/@vibrant/core/lib/index.js:44:1)
    at Builder.../../@vibrant/core/lib/builder.js.Builder.getPalette (/mnt/c/dev/photobook/image-optimizer/.webpack/image-optimizer/webpack:/mnt/c/dev/photobook/image-optimizer/node_modules/@vibrant/core/lib/builder.js:62:1)

When I switch back from using serverless-bundle to the packages/config described in the old Serverless Stack tutorial (see the old version at https://github.com/AnomalyInnovations/serverless-stack-com/commit/052567d66d4c960814897a88e00fa49f629f10e7#diff-5ab08fc0a992c83fe1b2d549015ec527), then it works fine. How can I configure the serverless-bundle such that node-vibrant will work?

@Susan123456789

Susan123456789 avatar Nov 14 '19 01:11 Susan123456789

I think for some packages like this, we need to take a look and handle them specifically. I'm not entirely sure what is going on.

Does node-vibrant have any instructions on how to use with Webpack?

jayair avatar Nov 17 '19 17:11 jayair

I am having a similar issue, and while searching, I found this.

escarbor avatar Mar 12 '21 21:03 escarbor