-
Notifications
You must be signed in to change notification settings - Fork 13
bug: Always first check process.report.getReport
#29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
If you're using pnpm, did you see its supportedArchitectures feature? This is designed for the situation where the install-time environment differs from the runtime environment, which is what you describe. supportedArchitectures:
os:
- linux
cpu:
- x64
libc:
- glibc Is there a specific package you're having problems with? Most native packages that offer prebuilt binaries for multiple platforms should support the |
Ah, ok , thanks for clarifying. But still if one does not want to just install other architecture because I am even questioning, why the Node world has no way of hard baking these dependencies into the installed packages instead of doing a runtime lookup what to load. This is on the same level as dynamic library loading for binaries which is not understandable why this is done that way for the Node world which is all about which package manager you use 😆 Is there no node packaging system which downloads dependencies, configures them for the architecture(s) in question and then its baked, full stop, no messing around with runtime values, inspecting stuff. However, the world is not like that: For this library isn't it still better to first look at |
As an more clear explanation: We run |
The best solution to this problem would be that one that makes the use of this package redundant, namely Node.js itself providing details on the libc it is using. Until that point, this package exists, and we need to make it work for most people, most of the time, as quickly as possible and then get out of their way. By selecting pnpm as your package manager you've already chosen well, so good work. I repeat my question from above: is there a specific package you're having problems with? |
I am building a svelte app, which somehow includes it in the dependency chain, I need to check...
|
Why is this a bug.
alpine linux (musl)
withnix
package manager which runsnode
(glibc, andpnpm
also withglibc
etc). This library then forcefully detects some/bin/ldd
content which is from alpine (musl
) which is a wrong result.TL:DR:
IMO the only reliable way to first check the
process.report.getReport
for anything (the context isnode
and checking for an executableldd
is highly orthogonal).Also making any fallback optional with env variable
NODE_LOVELL_DETECT_LIBC_NO_FALLBACKS=true
might be good.Related:
nodejs/node#48204
I highly suggest to change that.
The text was updated successfully, but these errors were encountered: