3 ms·
It's quite a bit worse than npm. Without bare module specifiers (like `import {html} from 'lit-html'`) to act as an abstraction over location you have to impor
by spankalee 5y ago
It's quite a bit worse than npm.
Without bare module specifiers (like `import {html} from 'lit-html'`) to act as an abstraction over location you have to import directly from a URL, but what URL? Packages either have to be self-hosted, or very often npm packages are loaded via CDNs. There are several CDNs that host the same packages (unpkg, Skypack, jspm, jsDelivr/esm.run) so there's no single canonical URL to load anything from and each module that loads a package could load from a different CDN, or simply load a slightly different but compatible version, causing multiple copies of the packages to be loaded.
There's a huge benefit to abstracting over package names, and Deno mostly throws it all away. It does support import maps, but you'd need tooling that doesn't fully exist yet to crawl and dedupe a module graph and at that point it'd basically be npm but a lot slower with no registry to use for metadata.
- andrew_ 5y ago> It's quite a bit worse than npm. That's a rather subjective take. The rest of your comment can be fulfilled by `trex` https://nicedoc.io/crewdevio/Trex https://nicedoc.io/crewdevio/Trex. Perhaps it's been a while since you took a good look at how the ecosystem has evolved. I just started giving Deno a hard look last week and I've already found answers for needs like this.
- spankalee 5y agoAren't most takes on here subjective? I don't think we label most posts with "Only my opinion, but..." event though that applies to almost everything here. Anyway... Trex doesn't do anything about transitive dependencies and package deduplication, what my critique is about.