serverless-heaven / serverless-webpack

Serverless plugin to bundle your lambdas with Webpack

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

yarn resolutions is not respected

otbe opened this issue · comments

This is a Bug Report

Description

I use yarn as my packager for serverless-webpack. In my package.json I have defined resolutions to force yarn to use a specific version of a dependency. This works quite well in my project, but it won't get applied when I run sls webpack.

In my output folder of serverless-webpack (.webpack/) is a package.json without the resolutions field. If I run yarn list <package> I get multiple entries of this dependency where I expected exactly one. If I run yarn install --frozen-lockfile I get Lockfile has incorrect entry for "graphql@^0.11.7". Ignoring it. which leads to this missbehavior.

This is my serverless-webpack related config:

custom: 
  webpack:
    includeModules: true
    packager: yarn

If I add resolutions to package.json it works as it should.

This may be a bug within yarn itself, because I expect when using --frozen-lockfile it should take whats in the lockfile.

Versions:
serverless-webpack@5.1.3
webpack@4.6.0
serverless@1.26.1
yarn@1.6.0

Thanks!

Hi @otbe ,
thanks for raising the issue. I think this is a bug in serverless-webpack. It should be fixed to use and copy the resolutions definition from your original package.json to the created ones.
As you confirmed that adding the section solves the problem, this should be the right way to go.

Thank you very much!
Waiting for 5.1.4 👍

Released with 5.1.5