From 252d1d09a0183d1c852e6b44a4a267d9400a970f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 21 Jan 2026 20:31:16 -0500 Subject: [PATCH] fix: closes #13734, set process.env.NODE_ENV early using argv if commander or one of the core deps isn't found then packageInstall.installAll is called and uses process.env.NODE_ENV, which was always undefined. --- src/cli/index.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/cli/index.js b/src/cli/index.js index eeda530f5b..8e3db4e344 100644 --- a/src/cli/index.js +++ b/src/cli/index.js @@ -5,6 +5,15 @@ const path = require('path'); require('../../require-main'); +// https://github.com/NodeBB/NodeBB/issues/13734 +// check dev flag early so packageInstall.installAll() can use it +const isDev = process.argv.some(arg => + arg === '-d' || + arg === '--dev' || + (arg.startsWith('-') && !arg.startsWith('--') && arg.includes('d'))); + +process.env.NODE_ENV = isDev ? 'development' : (process.env.NODE_ENV || 'production'); + const packageInstall = require('./package-install'); const { paths } = require('../constants'); @@ -96,7 +105,7 @@ nconf.argv(opts).env({ separator: '__', }); -process.env.NODE_ENV = process.env.NODE_ENV || 'production'; + prestart.setupWinston();