Package dependencies not mentioned in the docs for v18.x.x
We noticed that our builds started failing as soon as we trying upgrading from 17.x.x to 18.0.0. We were getting a generic failure with a 139 exit code (which basically means nodejs itself crashed).
After doing some investigation, we found that this failure was caused because we were running our docker builds inside a UBI container, and the failure was because this container was missing this file /usr/share/node-22/icudata/icudt78l.dat.
I then checked where this file comes from:
podman run -it registry.access.redhat.com/ubi10/ubi:latest bash
[root@7cdb31a61e03 /]# dnf whatprovides /usr/share/node-22/icudata/icudt78l.dat
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered with an entitlement server. You can use subscription-manager to register.
Red Hat Universal Base Image 10 (RPMs) - BaseOS 241 kB/s | 486 kB 00:02
Red Hat Universal Base Image 10 (RPMs) - AppStream 3.9 MB/s | 1.6 MB 00:00
Red Hat Universal Base Image 10 (RPMs) - CodeReady Builder 716 kB/s | 179 kB 00:00
nodejs-full-i18n-1:22.23.2-1.el10_2.x86_64 : Non-English locale data for Node.js
Repo : ubi-10-for-x86_64-appstream-rpms
Matched from:
Filename : /usr/share/node-22/icudata/icudt78l.dat
[root@7cdb31a61e03 /]#This nodejs-full-i18n-1 RPM package appears to be a core dependency of nodejs itself (albeit a weak one):
root@4c5b411ba46d /]# dnf install nodejs
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered with an entitlement server. You can use subscription-manager to register.
Last metadata expiration check: 0:03:04 ago on Thu Sep 10 15:19:16 2026.
Dependencies resolved.
=======================================================================================================================================================================
Package Architecture Version Repository Size
=======================================================================================================================================================================
Installing:
nodejs x86_64 1:22.23.2-1.el10_2 ubi-10-for-x86_64-appstream-rpms 59 k
Installing dependencies:
c-ares x86_64 1.34.6-2.el10_2 ubi-10-for-x86_64-baseos-rpms 123 k
libbrotli x86_64 1.1.0-7.el10_1 ubi-10-for-x86_64-baseos-rpms 344 k
libuv x86_64 1:1.52.1-1.el10_2 ubi-10-for-x86_64-appstream-rpms 272 k
nodejs-libs x86_64 1:22.23.2-1.el10_2 ubi-10-for-x86_64-appstream-rpms 20 M
openssl x86_64 1:3.5.5-6.el10_2 ubi-10-for-x86_64-baseos-rpms 1.3 M
Installing weak dependencies:
nodejs-docs noarch 1:22.23.2-1.el10_2 ubi-10-for-x86_64-appstream-rpms 9.3 M
nodejs-full-i18n x86_64 1:22.23.2-1.el10_2 ubi-10-for-x86_64-appstream-rpms 8.9 M
nodejs-npm x86_64 1:10.9.8-1.22.23.2.1.el10_2 ubi-10-for-x86_64-appstream-rpms 2.5 M
Transaction Summary
=======================================================================================================================================================================
Install 9 Packages
Total download size: 42 M
Installed size: 219 M
Is this ok [y/N]:In our case we only had a minimal version of nodejs installed, which didn't include nodejs-full-i18n. Also I don't think the Yargs docs explicitly mention that this package is a dependency to using Yargs. So I was wondering if we could update the docs to mention that this package is a dependency for using Yargs?
Btw, the name of this package might be different depending on Linux distros. So if you did mention it in the docs, you could phrase it a bit generically, like: "ensure you have the full version of nodej's i18n package installed".
Source: yargs/yargs