Comments (5)
Until node supports serialization and deserialization of a format natively, package managers shouldn’t, and it’s a mistake for pnpm to do so - especially if it could end up being published.
from volta.
That's wild, and I am broadly inclined to agree with @ljharb here—the interop hazards here seem pretty significant to me. Node has a ton of things that it does differently in the presence vs. absence of a package.json
file, and while it is interesting that pnpm supports using JSON5 (I guess for use in contexts where a bundler will be used? Though most bundlers also look at regular package.json
files!) it definitely seems like a hazard to try to support it here.
from volta.
the interop hazards here seem pretty significant to me
I suppose it heavily depends on the usage patterns. Some people work on dozens / hundreds of libraries and the interop hazard is higher. Some people (like me) never do anything that would end up on npm.
So I'd definitely appreciate being able to opt into VOLTA_FEATURE_JSON5=1
or something along those lines — it's somewhat painful to have a huge messy package.json and not be able to document anything there without significant friction.
(On the broader topic of whether it's a hazard to the ecosystem — unfortunately I have no idea.)
from volta.
Having some kind of opt-in mode would definitely make it more viable, but even beyond that: I tagged it as an enhancement and am leaving it open because while I see the hazards (as described above) Volta also tries to Just Work™ with the ecosystem as it actually is, so my opinion about what package managers should do may end up being different from what Volta should do!
from volta.
For the record, there was a feature request on supporting JSON5 on Node, but it was closed a few years ago (the issue is still active, though): nodejs/node#40714
There's also an RFC on allowing comments on JSON through other means than JSON5 on NPM, but it doesn't seem to be getting far either: npm/rfcs#291
from volta.
Related Issues (20)
- Generate Volta man pages
- Running Node with Volta with TMP options HOT 5
- 关于文件路径问题 (Specify installation path)
- Volta/Nuxt problems between multiple user accounts? HOT 2
- SUGGESTION: Move volta config to .voltarc or somewhere else. HOT 1
- I am install [email protected] ,but platform runtime at [email protected],why HOT 1
- volta install cocoapods HOT 2
- Unable to install TypeScript: Could not create shared environment for package 'typescript' HOT 1
- Potential fork bomb
- how to solve pnpm's problem HOT 3
- When trying to install new versions volta hangs indefinitely and uses all available network bandwidth HOT 7
- Unable to install nativescript (CLI)
- When using child_process.fork() with the execPath pointing to volta on windows ipc breaks. HOT 1
- Volta changed the toolchain action HOT 1
- mkgainet.
- uninstall failed
- Can I use it on a prodcution server with pm2? HOT 1
- [PSA] yarn version discrepancy
- 1.1.2 HOT 1
- how to use it in Jenkins or gitlab ci?
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 volta.