Git Product home page Git Product logo

Comments (3)

zkochan avatar zkochan commented on September 26, 2024

I think pnpm install --frozen-lockfile should fail in this case.

We have a special command for your scenario: pnpm fetch. Looks like this command fails currently in this case, it should be fixed.

from pnpm.

kirbysayshi avatar kirbysayshi commented on September 26, 2024

@zkochan --frozen-lockfile failing sounds like a great approach! Thank you for considering this!

We have a special command for your scenario: pnpm fetch. Looks like this command fails currently in this case, it should be fixed.

I actually do use pnpm fetch in my dockerfile, but left it out of the repro repo as it didn't seem critical to the bug. As far as I can tell, pnpm fetch does fetch something but it's not clear to me if it fetches everything in the lockfile or just root level dependencies in this specific case of the folders not being present. My expectation is that it would fetch everything in the lockfile, if you're also saying that pnpm fetch would have a bug in this case.

from pnpm.

kirbysayshi avatar kirbysayshi commented on September 26, 2024

I would expect any workspace packages listed in the pnpm-workspace.yaml and pnpm-lock.yaml to have their node_modules present, even if the folders aren't present.

One other note on this: the reason I mentioned this as an expectation is that for a large monorepo, even when pnpm fetch is cached in docker, the pnpm install step still takes time to link everything. So I was hoping to even cache that step in docker as well given that dependencies don't change as frequently as source code.

But I understand if changing the behavior of --frozen-lockfile to create directories is considered unexpected by most!

from pnpm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.