3 ms·
Locally, you can do: apt-cache showpkg 'node-*' | grep ^Package: which returns 4155 results, though 727 of them are type packages. Using these in commonjs
by o11c 11mo ago
Locally, you can do:
apt-cache showpkg 'node-*' | grep ^Package:
which returns 4155 results, though 727 of them are type packages.
Using these in commonjs code is trivial; they are automatically found by `require`. Unfortunately, system-installed packages are yet another casualty of the ESM transition ... there are ways to make it work but it's not automatic like it used to be.
- 9dev 11mo ago> Unfortunately, system-installed packages are yet another casualty of the ESM transition ... A small price to pay for the abundant benefits ESM brings.
- o11c 11mo agoHonestly, I don't see the value gain, given how many other problems the JS tooling has (even ignoring the ecosystem). In particular, the fact that Typescript makes it very difficult to write a project that uses both browser-specific and node-specific functionality is particularly damning.
- gr4vityWall 11mo ago> there are ways to make it work but it's not automatic like it used to be Out of curiosity, what would you recommend? And what would be needed to make them work automatically?
- o11c 11mo agoSome solutions include: add a hook to node on the command line, fake a `node_modules`, try to make an import map work, just hard-code the path ... most of this is quite intrusive unlike the simple `require` path. I really don't have a recommendation other than another hack. The JS world is hacks upon hacks upon hacks; there is no sanity to be found anywhere.