Comments (7)
seems like an interesting idea, but i'm wondering: what would be the practical use case of separating dev and prod dependencies apart from .dockerignore?
from pnpm.
.gitignore as well – for when you want to check your prod dependencies in to git, but not your dev dependencies. I'm sure there are other ".ignore" files that could benefit from this too.
Any time you want to tar up / archive your project to transfer or deploy it anywhere else, basically.
There's an argument to be made that it makes it easier to navigate from a filesystem perspective – when you want to debug your modules, etc – you know you just need to worry about what's in the prod dir.
from pnpm.
Interesting, but this is a lot more nuanced than it seems on the surface. What if both your prod and dev dependencies use [email protected]
, shouldn't it be present in both layers? which one gets precedence over the other?
I'd wait to see what npm comes up with to solve that solution. As they mentioned in npm/npm#9674, they're looking into it. I'm sure they're more knowledgeable about the ins and outs of this problem and the possible corner cases there can be.
Thanks for the report!
from pnpm.
i prefer the tarballs to be stored/cached globally, but i'd always want the actual packages to be unzipped and compiled within the current module. otherwise, if something fucks up, i'd have to clear the global cache.
from pnpm.
@rstacruz prod would always take precedence over dev in that case
Agreed though, probably better to wait to see how npm's plan pans out.
@jonathanong I'm not sure what you're referring to?
from pnpm.
i prefer the tarballs to be stored/cached globally, but i'd always want the actual packages to be unzipped and compiled within the current module. otherwise, if something fucks up, i'd have to clear the global cache.
it seems this is the only way to go right now: #19 (comment)
from pnpm.
@mhart, we are currently working together with ied on some shared store specs. You can review the specs and add your suggestions. https://github.com/alexanderGugel/ied/blob/spec/spec/STORE.md
from pnpm.
Related Issues (20)
- Issue with Serverless (serverless-bundle) and a dependency's dependencies
- pnpm fails to exclude files matching negated glob patterns with multiple leading directories HOT 1
- Changing the lockfile format to reduce duplication HOT 7
- ERR_PNPM_NO_OFFLINE_TARBALL A package is missing from the store but cannot download it in offline mode. HOT 1
- Add option to install file: protocol dependencies using symlink HOT 3
- `pnpm install` breaks links created with `pnpm link` HOT 1
- pnpm install fails if node_modules directory is symlinked HOT 1
- pnpm store doesn't have symlink files after version 8.7 HOT 6
- Throw Error and Exit on Cyclic Workspace Dependencies
- pnpm outdated [-r] --json does not return all dependencies in workspace
- Wildcard for supportedArchitectures HOT 3
- TARBALL_EXTRACT error while installing a dependency from GitHub having a slash in branch name HOT 2
- Invalid relative dependency path error when installing a remote tarball
- Unable to set-up local development for pnpm `main` branch HOT 6
- `pnpm -r exec rm -rf node_modules` doesn't work HOT 2
- pnpm update -iL does not offer to update svelte 5@next HOT 2
- Only add `requiresBuild` to an entry in the lockfile if we know the package needs to be built from info in the package manifest
- Complete `pnpm init` command HOT 2
- save-workspace-protocol=false breaks prod deployment
- Getting `ERR_PNPM_HARDLINK_FAILED Error: EEXIST: file already exists, link` when pnpm install
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pnpm.