Comments (5)
I was asked whether I would be happy to contribute this change, but instead I'd be happy to pay $100 to whoever fixes this in a satisfying way and shaving off about 20 seconds from my backend build time.
from pnpm.
wouldn’t the reverse make more sense as a flag to override/allow neverBuildDependencies so that it get ignored?
from pnpm.
I thought about it, but that means that it would have to be always specified when doing anything with pnpm (locally), which is a bit of a hassle and worse for DX, given that my default is I don't want it built except in some situations.
from pnpm.
If you have a dependency that doesn't work on all platforms, then this dependency should be an optional dependency. Optional dependencies are skipped on platforms that they don't support. And even they fail, the installation doesn't fail.
from pnpm.
I don't think optionalDependencies
works for either use case that I outlined.
Omitting node-canvas
That works for direct dependencies, but in my case node-canvas
is actually a transitive dependency so I cannot use optionalDependencies
. The direct dependency (and my app) rely on the JS part of node-canvas
for frontend code. It only requires the binaries for the backend pieces and server rendering.
Omitting @playwright/browser-chromium
Similarly, making @playwright/browser-chromium
optional would not remove it from my docker install process since the install doesn't fail, it just downloads code that couldn't even run on that platform (and it logs as much).
from pnpm.
Related Issues (20)
- Setting `package-import-method` from the CLI for `pnpm deploy` doesn't work
- `pnpm` doesn't install transitive dependencies HOT 2
- node-options in .npmrc doesn't get applied HOT 3
- Allow to apply a patch from a package dependency HOT 1
- `dedupe-peer-dependents` not working as expected HOT 1
- Add a flag to `install` using the public package repository instead of the local package when using the `workspace:*` protocol HOT 1
- PNPM Git Resolver: Incorrect Branch Installation
- ERR_PNPM_TARBALL_EXTRACT HOT 13
- Nested `pnpm` calls don't respect any of `npm_config_report=silent`, `--silent`, `--reporter=silent` or `--loglevel=silent`
- List available scripts when `run` is omitted
- [FEAT] Give confirmation of patched packages HOT 4
- Missing dependencies unless `--shamefully-hoist` option is used HOT 4
- Add detailed information in pnpm outdated command output HOT 1
- Add deprecation message to output of `pnpm dlx`
- When a pkg `A` is override in "pnpm.overrides", issues with peer dependencies contains `A` found HOT 1
- `pnpm import` doesn't work for bun.lockb file HOT 1
- MaxListenersExceededWarning: Possible EventEmitter memory leak detected HOT 2
- Atlassian Bamboo build error pnpm: not found: node
- Topological parallel grouping for script execution in workspaces HOT 2
- I did notice that one of the paths mentioned has an unmatched closing paren: HOT 2
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.