Monorepo for the nibling.run platform

Skip a binding for the other libc when resolving from package.json

npm resolves from full packuments (build-ideal-tree's fullMetadata), which carry each version's libc, so `npm install --os linux --cpu x64 --libc glibc` installs a -gnu binding and skips its -musl twin. The resolver reads the abbreviated packument, which drops libc, so both passed the platform check and installed. Registry.libc reads it from the version document the lockfile fields already come from (one shared fetch), and the install's platform check uses it for every resolved node that names an os or cpu and passes them. A lockfile's entries carry no libc, and npm ci installs both from them, so lockfile nodes are left as they are. The lockfile bytes do not change.


Author natemoo.re
Date Commit Parent 229d7733
+82 -22
4 changed files
+82 -22
4 changed files