Package: passenger Version: 5.0.30-1.2 Severity: important Dear Maintainer,
Passenger errors out when starting a nodejs application when using a nodejs version later than 14.x. It throws the following error: /usr/share/passenger/helper-scripts/node-loader.js:41 GLOBAL.PhusionPassenger = exports.PhusionPassenger = new EventEmitter(); ^ ReferenceError: GLOBAL is not defined at Object.<anonymous> (/usr/share/passenger/helper-scripts/node-loader.js:41:1) at Module._compile (node:internal/modules/cjs/loader:1159:14) at Module._extensions..js (node:internal/modules/cjs/loader:1213:10) at Module.load (node:internal/modules/cjs/loader:1037:32) at Module._load (node:internal/modules/cjs/loader:878:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) at node:internal/main/run_main_module:23:47 (Nodejs version: v18.12.1) It seems that after 14.x the "GLOBAL" alias to the "global" object was removed. Replacing the usage of "GLOBAL" with its lowercase variant in the node-loader.js file seems to be the way to fix this. -- System Information: Debian Release: 11.5 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 5.10.0-17-amd64 (SMP w/24 CPU threads) Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages passenger depends on: ii libc6 2.31-13+deb11u5 ii libcurl4 7.74.0-1.3+deb11u3 ii libgcc-s1 10.2.1-6 ii libruby2.7 2.7.4-1+deb11u1 ii libstdc++6 10.2.1-6 ii libuv1 1.40.0-2 ii ruby 1:2.7+2 ii ruby-rack 2.1.4-3 ii zlib1g 1:1.2.11.dfsg-2+deb11u2 passenger recommends no packages. Versions of packages passenger suggests: ii nodejs 18.12.1-deb-1nodesource1 pn passenger-doc <none> ii python3 3.9.2-3 pn rails <none> -- no debconf information