Comments (3)
That design decision helps make sure the CLI is consistent. Same approach in d3-geo-projection etc.
I understand the desire for a smaller footprint, but this is probably not going to change. Please feel free to add arguments and we'll reopen the issue as necessary.
from d3-dsv.
Well, if the main reason is to ease the maintenance, a solution could be to keep developing them in the same repo, but publish them as separate packages. There are several tools helping manage mono-repositories (yarn workspaces, lerna, etc...). Would this be an acceptable approach ?
Looking at https://packagephobia.com/[email protected], it shows that the total install size is 507KB while the d3-dsv package is only 50KB. And all dependencies are about the CLI in this case. This means that the cost of this CLI for the install size is at least 450KB (at least
being because part of the 50KB of d3-dsv
are also about the CLI, but I haven't compared the sizes here).
from d3-dsv.
If the only goal is to decrease the published package size, I’m not motivated to adopt a monorepo, which adds complexity and development overhead.
I’m more inclined to reduce the size of the dependencies (but also this isn’t very high on my priority list). I suspect that rw could be made smaller by adding an explicit files entry to the package.json; perhaps iconv-lite could be removed by switching to Node’s TextEncoder (and presumably introducing a minimum Node version requirement); and perhaps there’s a more efficient substitute for commander (though that’s likely difficult to replace without changing behavior).
from d3-dsv.
Related Issues (20)
- csv2json cli throws error when using --auto-type
- Add shoutout to d3.autoType in d3.parse documentation
- TypeError: Cannot read property 'trim' of undefined HOT 3
- dsv.parse's returned columns property doesn't reflect row conversion function HOT 4
- Use Object.fromEntries to convert arrays into objects? HOT 1
- date tests fail HOT 2
- Export individual "formatRow" and "formatValue" functions HOT 5
- Avoid "Function" constructor HOT 1
- Add documentation about CSP incompatibility HOT 1
- Could we possibly add a ssv() or wssv()? HOT 4
- Repeated columns names erase each other for xParse HOT 6
- wrong parsing d3.tsvParse with only number header HOT 4
- d3.autotype: keep leading 0 HOT 1
- Option to quote empty strings? HOT 1
- Error: Must use import to load ES Module HOT 4
- Potential performance issue - Columns property added to returned array from dsv.parse could lose browser engine optimization on array operations HOT 1
- Column data will be lost if the column name is the same HOT 1
- `objectConverter` can work without `Function`. HOT 1
- https://observablehq.com/@mbostock/streaming-csv 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 d3-dsv.