Adding jsdom as an optional dependancy means it gets installed most of the time... so this is no longer the tiny library it claims to be... (now 14M vs 2M previously...)
How can I not install the jsdom part ?
Relevant discussion is here: gh-773, but I'm not sure why the change from devDependencies to optionalDependencies was necessary.
The idea was to allow failures during the build process (https://github.com/npm/npm/issues/3870 and https://github.com/npm/npm/issues/7864 are relevant here). This probably isn't even a problem anymore now that jsdom doesn't depend on contextify.
Would be great if it could be removed... it sure adds a lot of bloat for something that isn't even used. (And especially when the docs say how small cheerio is in comparison :-)
+1
+1.
Did a double-take when I saw npmjs.org show jsdom as a dependency, when I came here expressly because this _isn't jsdom_.
I realize (and initially suspected) it's only used for benchmarks, but it sure looks awkward and requires extra effort to prune.
Why not remove this dependency (jsdom) and install it by cli in benchmark script?
It is horrible to transport jsdom (11M), some users came to complain about my package size (61M)
I tried to install cheerio with --no-optional now
but no-optional flag can not be inherited
I'v commit a fix, would you please review it
@fb55
Please fix! This is an annoying and unnecessary issue.
Looks like this has been fixed in master - https://github.com/cheeriojs/cheerio/commit/79d4e5e6f2d2310eed09b83f6ccfd9e4961aa4b1 - eagerly awaiting the release of 0.21. 馃憤
0.22.0 doesn't include jsdom
Most helpful comment
+1.
Did a double-take when I saw npmjs.org show jsdom as a dependency, when I came here expressly because this _isn't jsdom_.
I realize (and initially suspected) it's only used for benchmarks, but it sure looks awkward and requires extra effort to prune.