Reminder: If you believe #opensource is not sustainable financially (no matter if that is correct or not) and you haven't signed up for @stackaid (or @tidelift if you're an enterprise) – then you're part of the problem, not the solution
GitHub Sponsors and @opencollective only support direct dependencies and not the long tail that makes up eg. the #npm ecosystem + they both require a fixed amount per project rather than a fixed monthly shared between all projects that you're supporting.
Unless I'm missing something, in 2023 it's no longer possible to programmatically generate a MOBI file out of any other existing format (epub / HTML / PDF).
All solutions I found on #npm are thin wrappers around Amazon's kindlegen software last updated in 2010s.
And for some reason Amazon no longer offers kindlegen for download.
Another way of achieving that is using Calibre but that's not something I can do with my GUI-less CI/CD pipeline.
I had a bad experience with npm-shrinkwrap.json recently. I read the documentation and took care, but it wasn’t enough. Based on that, my current opinion is that #npm#shrinkwrap is unusable for its intended purpose. That seems absurd and I am happy to learn what I’m doing wrong. Here’s a brief summary:
Hrm, #npm really needs a filter for "still maintained" because there's an utterly ridiculous number of packages that are just no longer maintained, which would be really good to filter from search results
Most tools written in the #Javascript / #Node / #npm spehere seems to assume they'll be used exclusively in that context. That means installation instructions often describes adding a dependency to a package.json file, etc. But.. I just want to lint some CSS over here. You've built a perfectly capable standalone tool, so provide a binary, will you?
Here's me trying to make sure we ship as secure as possible software, and there's someone who doesn't know how to use an npm ignore file to not ship their shitty docker files in their modules #node#npm
I stopped feeling bad about #autotools files (configure.ac Makefile.am m4/*) when I realized how much noise a new maven package throws on your disk.
The main difference is: for #maven / #npm / #cargo / #gradle / #bazel / ... these are autogenerated.
OK, I should really change all my projects that use #npm/#yarn to use #pnpm. If you barely use Node then it's probably not worth it, but for a webdev it now seems like a no-brainer.
Import maps, the new browser standard, open up a world of possibilities for factoring and optimizing web pages and experiences. In this post, we explore one of them briefly: developing a static import-map-based #CDN to serve your #NPM packages. (https://bennypowers.dev/posts/import-map-cdn/)
Is there a language that handles dependencies well?
Python's virtual environments are a bit awkward but everything mostly works, I haven't played with Java build tools much, Javascript is a trainwreck. I've been happy with Dart, but haven't gotten into the weeds much. Same with rust, cargo seems nice, but I haven't played with it enough to know the pitfalls yet.
On macOS, I’m using these scripts:
"build": "npm run clean && tsc && npm run chmod",
"clean": "shx rm -rf ./dist/*",
"chmod": "chmod u+x ./dist/src/cmd.js",
Alas, the last script won’t work on Windows. What’s a good way to fix this?
Hey @astro, I tried running a brand new Astro project with #npm but there seems to be an issue when installing the dependencies?
When running "npm run dev" it cannot find the "astro" command. When installing it with #yarn everything works fine and as expected (no error during dependency install). 🤷♂️
So I just saw a PR for a Node.js project, where the developer had used an npm command I'm unfamiliar with.. or at least, I didn't know of:
npm clean-install
Now, I'm familiar with npm ci, but I had absolutely no idea that the alias of npm clean-install existed. I didn't even realise that's what "ci" stood for "clean install”.
I always thought npm ci meant “the npm command you wanna run in CI environments”
TIL "npm" officially stands for "npm is not an acronym" (twitter.com)
Why not "NINAA"? Because then it would be an acronym.