react-on-rails-pro-node-renderer 16.5.1 → 16.6.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/lib/master.d.ts.map +1 -1
  2. package/lib/master.js +56 -4
  3. package/lib/master.js.map +1 -1
  4. package/lib/shared/configBuilder.d.ts +3 -1
  5. package/lib/shared/configBuilder.d.ts.map +1 -1
  6. package/lib/shared/configBuilder.js +98 -8
  7. package/lib/shared/configBuilder.js.map +1 -1
  8. package/lib/shared/utils.d.ts +1 -0
  9. package/lib/shared/utils.d.ts.map +1 -1
  10. package/lib/shared/utils.js +8 -3
  11. package/lib/shared/utils.js.map +1 -1
  12. package/lib/shared/workerMessages.d.ts +13 -0
  13. package/lib/shared/workerMessages.d.ts.map +1 -0
  14. package/lib/shared/workerMessages.js +23 -0
  15. package/lib/shared/workerMessages.js.map +1 -0
  16. package/lib/tsconfig.tsbuildinfo +1 -1
  17. package/lib/worker/handleRenderRequest.d.ts.map +1 -1
  18. package/lib/worker/handleRenderRequest.js +1 -1
  19. package/lib/worker/handleRenderRequest.js.map +1 -1
  20. package/lib/worker/startupErrorHandler.d.ts +10 -0
  21. package/lib/worker/startupErrorHandler.d.ts.map +1 -0
  22. package/lib/worker/startupErrorHandler.js +57 -0
  23. package/lib/worker/startupErrorHandler.js.map +1 -0
  24. package/lib/worker.d.ts.map +1 -1
  25. package/lib/worker.js +73 -6
  26. package/lib/worker.js.map +1 -1
  27. package/package.json +3 -3
  28. package/src/master.ts +64 -4
  29. package/src/shared/configBuilder.ts +118 -11
  30. package/src/shared/utils.ts +9 -3
  31. package/src/shared/workerMessages.ts +34 -0
  32. package/src/worker/handleRenderRequest.ts +3 -1
  33. package/src/worker/startupErrorHandler.ts +65 -0
  34. package/src/worker.ts +80 -12
  35. package/tests/configBuilder.test.ts +357 -8
  36. package/tests/masterStartupFailure.test.ts +295 -0
  37. package/tests/worker.test.ts +145 -0
  38. package/tests/workerStartupFailure.test.ts +250 -0
@@ -1 +1 @@
1
- {"version":3,"file":"master.d.ts","sourceRoot":"","sources":["../src/master.ts"],"names":[],"mappings":"AAQA,OAAO,EAAe,MAAM,EAAsB,MAAM,2BAA2B,CAAC;AAapF,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,QAqGhE"}
1
+ {"version":3,"file":"master.d.ts","sourceRoot":"","sources":["../src/master.ts"],"names":[],"mappings":"AAQA,OAAO,EAAe,MAAM,EAAsB,MAAM,2BAA2B,CAAC;AAcpF,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,QAgKhE"}
package/lib/master.js CHANGED
@@ -49,6 +49,7 @@ const configBuilder_js_1 = require("./shared/configBuilder.js");
49
49
  const restartWorkers_js_1 = __importDefault(require("./master/restartWorkers.js"));
50
50
  const errorReporter = __importStar(require("./shared/errorReporter.js"));
51
51
  const licenseValidator_js_1 = require("./shared/licenseValidator.js");
52
+ const workerMessages_js_1 = require("./shared/workerMessages.js");
52
53
  const MILLISECONDS_IN_MINUTE = 60000;
53
54
  // How often to scan for orphaned upload directories.
54
55
  const ORPHAN_CLEANUP_INTERVAL_MS = 5 * MILLISECONDS_IN_MINUTE;
@@ -104,22 +105,73 @@ function masterRun(runningConfig) {
104
105
  }
105
106
  })();
106
107
  }, ORPHAN_CLEANUP_INTERVAL_MS);
108
+ let isAbortingForStartupFailure = false;
109
+ let fatalStartupFailure = null;
110
+ let hasInitiatedShutdown = false;
111
+ const abortForStartupFailure = () => {
112
+ if (!(isAbortingForStartupFailure && fatalStartupFailure))
113
+ return false;
114
+ if (!hasInitiatedShutdown) {
115
+ hasInitiatedShutdown = true;
116
+ // Note: the exiting worker may differ from the one that sent the
117
+ // failure message if multiple workers exit in rapid succession.
118
+ // We always report the first failure received.
119
+ const { failure, workerId: failedWorkerId } = fatalStartupFailure;
120
+ const msg = failure.code === 'EADDRINUSE'
121
+ ? `Node renderer startup failed: ${failure.host}:${failure.port} is already in use`
122
+ : `Node renderer startup failed in worker ${failedWorkerId}: ${failure.message}`;
123
+ errorReporter.message(msg);
124
+ // Disconnect all live workers so they release their ports before the
125
+ // master exits. cluster.disconnect() is async — the callback fires
126
+ // once every worker has disconnected. A hard-deadline timer guarantees
127
+ // the master still exits if a worker is stuck (leaked handle, blocking
128
+ // syscall, etc.), following the same pattern as restartWorkers.ts.
129
+ const MASTER_SHUTDOWN_TIMEOUT_MS = 5000;
130
+ const shutdownTimer = setTimeout(() => process.exit(1), MASTER_SHUTDOWN_TIMEOUT_MS);
131
+ if (typeof shutdownTimer.unref === 'function')
132
+ shutdownTimer.unref();
133
+ cluster_1.default.disconnect(() => {
134
+ clearTimeout(shutdownTimer);
135
+ process.exit(1);
136
+ });
137
+ }
138
+ return true;
139
+ };
140
+ cluster_1.default.on('message', (worker, message) => {
141
+ // Check the abort flag first to short-circuit the type-guard on every
142
+ // ordinary IPC message once we are already aborting.
143
+ if (isAbortingForStartupFailure || !(0, workerMessages_js_1.isWorkerStartupFailureMessage)(message))
144
+ return;
145
+ isAbortingForStartupFailure = true;
146
+ fatalStartupFailure = { workerId: worker.id, failure: message };
147
+ });
107
148
  for (let i = 0; i < workersCount; i += 1) {
108
149
  cluster_1.default.fork();
109
150
  }
110
151
  // Listen for dying workers:
111
152
  cluster_1.default.on('exit', (worker) => {
153
+ // Once a startup failure has been detected, abort regardless of whether
154
+ // this particular exit was from the failing worker, a scheduled restart,
155
+ // or an unrelated crash. Don't fork any more workers.
156
+ if (abortForStartupFailure()) {
157
+ return;
158
+ }
112
159
  if (worker.isScheduledRestart) {
113
160
  log_js_1.default.info('Restarting worker #%d on schedule', worker.id);
161
+ cluster_1.default.fork();
162
+ return;
114
163
  }
115
- else {
164
+ // Give in-flight startup-failure IPC messages one event-loop turn to be
165
+ // processed before classifying this as an ordinary runtime crash.
166
+ setImmediate(() => {
167
+ if (abortForStartupFailure())
168
+ return;
116
169
  // TODO: Track last rendering request per worker.id
117
170
  // TODO: Consider blocking a given rendering request if it kills a worker more than X times
118
171
  const msg = `Worker ${worker.id} died UNEXPECTEDLY :(, restarting`;
119
172
  errorReporter.message(msg);
120
- }
121
- // Replace the dead worker:
122
- cluster_1.default.fork();
173
+ cluster_1.default.fork();
174
+ });
123
175
  });
124
176
  // Schedule regular restarts of workers
125
177
  if (allWorkersRestartInterval && delayBetweenIndividualWorkerRestarts) {
package/lib/master.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"master.js","sourceRoot":"","sources":["../src/master.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"master.js","sourceRoot":"","sources":["../src/master.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,9 @@ export interface Config {
29
29
  export declare function getConfig(): Config;
30
30
  export declare function logSanitizedConfig(): void;
31
31
  /**
32
- * Lazily create the config
32
+ * Lazily create the config.
33
+ * Passing password: undefined means "keep the env/default password", not "clear the password".
34
+ * Other undefined keys retain normal JavaScript spread semantics.
33
35
  */
34
36
  export declare function buildConfig(providedUserConfig?: Partial<Config>): Config;
35
37
  //# sourceMappingURL=configBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"configBuilder.d.ts","sourceRoot":"","sources":["../../src/shared/configBuilder.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAcvC,MAAM,WAAW,MAAM;IAIrB,IAAI,EAAE,MAAM,CAAC;IAIb,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,EAAE,eAAe,CAAC;IAE1B,YAAY,EAAE,eAAe,CAAC;IAG9B,oBAAoB,EAAE,oBAAoB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAG9D,qBAAqB,EAAE,MAAM,CAAC;IAE9B,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB,cAAc,EAAE,OAAO,CAAC;IAKxB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAElD,YAAY,EAAE,MAAM,CAAC;IAGrB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAI7B,yBAAyB,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9C,oCAAoC,EAAE,MAAM,GAAG,SAAS,CAAC;IAGzD,4BAA4B,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjD,qBAAqB,EAAE,MAAM,CAAC;IAE9B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAElC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,sBAAsB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzC,UAAU,EAAE,OAAO,CAAC;IAEpB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAIhC,8BAA8B,EAAE,OAAO,CAAC;IAIxC,aAAa,EAAE,MAAM,CAAC;CACvB;AAKD,wBAAgB,SAAS,WAMxB;AAwID,wBAAgB,kBAAkB,SASjC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAsExE"}
1
+ {"version":3,"file":"configBuilder.d.ts","sourceRoot":"","sources":["../../src/shared/configBuilder.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAavC,MAAM,WAAW,MAAM;IAIrB,IAAI,EAAE,MAAM,CAAC;IAIb,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,EAAE,eAAe,CAAC;IAE1B,YAAY,EAAE,eAAe,CAAC;IAG9B,oBAAoB,EAAE,oBAAoB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAG9D,qBAAqB,EAAE,MAAM,CAAC;IAE9B,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB,cAAc,EAAE,OAAO,CAAC;IAKxB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAElD,YAAY,EAAE,MAAM,CAAC;IAGrB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAI7B,yBAAyB,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9C,oCAAoC,EAAE,MAAM,GAAG,SAAS,CAAC;IAGzD,4BAA4B,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjD,qBAAqB,EAAE,MAAM,CAAC;IAE9B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAElC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,sBAAsB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzC,UAAU,EAAE,OAAO,CAAC;IAEpB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAIhC,8BAA8B,EAAE,OAAO,CAAC;IAIxC,aAAa,EAAE,MAAM,CAAC;CACvB;AAKD,wBAAgB,SAAS,WAMxB;AA8KD,wBAAgB,kBAAkB,SAYjC;AAgCD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAyGxE"}
@@ -22,7 +22,6 @@ const DEFAULT_PORT = 3800;
22
22
  const DEFAULT_LOG_LEVEL = 'info';
23
23
  const { env } = process;
24
24
  const MAX_DEBUG_SNIPPET_LENGTH = 1000;
25
- const NODE_ENV = env.NODE_ENV || 'production';
26
25
  let config;
27
26
  let userConfig = {};
28
27
  function getConfig() {
@@ -68,6 +67,30 @@ function logLevel(level) {
68
67
  return DEFAULT_LOG_LEVEL;
69
68
  }
70
69
  }
70
+ function validatePort(port) {
71
+ if (!Number.isInteger(port) || !Number.isFinite(port) || port < 0 || port > 65535) {
72
+ return `RENDERER_PORT must be an integer between 0 and 65535. Received: ${String(port)}`;
73
+ }
74
+ return null;
75
+ }
76
+ function normalizedRuntimeEnvs() {
77
+ return [env.RAILS_ENV, env.NODE_ENV]
78
+ .filter((value) => Boolean(value))
79
+ .map((value) => value.toLowerCase());
80
+ }
81
+ function runtimeEnvsAllowDevelopmentDefaults() {
82
+ const runtimeEnvs = normalizedRuntimeEnvs();
83
+ // Fail closed: every present runtime env must be development/test before we allow
84
+ // missing-password defaults. Any production-like value, or no env at all, still
85
+ // requires an explicit password.
86
+ return runtimeEnvs.length > 0 && runtimeEnvs.every((value) => value === 'development' || value === 'test');
87
+ }
88
+ function defaultReplayServerAsyncOperationLogs() {
89
+ if (env.REPLAY_SERVER_ASYNC_OPERATION_LOGS != null) {
90
+ return (0, truthy_js_1.default)(env.REPLAY_SERVER_ASYNC_OPERATION_LOGS);
91
+ }
92
+ return env.NODE_ENV?.toLowerCase() === 'development';
93
+ }
71
94
  const defaultConfig = {
72
95
  // Use env port if we run on Heroku
73
96
  port: Number(env.RENDERER_PORT) || DEFAULT_PORT,
@@ -96,8 +119,8 @@ const defaultConfig = {
96
119
  maxDebugSnippetLength: MAX_DEBUG_SNIPPET_LENGTH,
97
120
  // default to true if empty, otherwise it is set to false
98
121
  stubTimers: env.RENDERER_STUB_TIMERS === 'true' || !env.RENDERER_STUB_TIMERS,
99
- // default to true in development, otherwise it is set to false
100
- replayServerAsyncOperationLogs: (0, truthy_js_1.default)(env.REPLAY_SERVER_ASYNC_OPERATION_LOGS ?? NODE_ENV === 'development'),
122
+ // Default to true in development, otherwise it is set to false.
123
+ replayServerAsyncOperationLogs: defaultReplayServerAsyncOperationLogs(),
101
124
  // Maximum number of VM contexts to keep in memory. Defaults to 2 since typically only two contexts
102
125
  // are needed - one for the server bundle and one for React Server Components (RSC) if enabled.
103
126
  maxVMPoolSize: (env.MAX_VM_POOL_SIZE && parseInt(env.MAX_VM_POOL_SIZE, 10)) || 2,
@@ -111,7 +134,8 @@ function envValuesUsed() {
111
134
  RENDERER_SERVER_BUNDLE_CACHE_PATH: !userConfig.serverBundleCachePath && env.RENDERER_SERVER_BUNDLE_CACHE_PATH,
112
135
  RENDERER_BUNDLE_PATH: !userConfig.serverBundleCachePath && !userConfig.bundlePath && env.RENDERER_BUNDLE_PATH,
113
136
  RENDERER_WORKERS_COUNT: !userConfig.workersCount && env.RENDERER_WORKERS_COUNT,
114
- RENDERER_PASSWORD: !userConfig.password && env.RENDERER_PASSWORD && '<MASKED>',
137
+ // Explicit password overrides, including empty strings, intentionally suppress the env-derived value here.
138
+ RENDERER_PASSWORD: userConfig.password === undefined && env.RENDERER_PASSWORD && '<MASKED>',
115
139
  RENDERER_SUPPORT_MODULES: !('supportModules' in userConfig) && env.RENDERER_SUPPORT_MODULES,
116
140
  RENDERER_STUB_TIMERS: !('stubTimers' in userConfig) && env.RENDERER_STUB_TIMERS,
117
141
  RENDERER_ALL_WORKERS_RESTART_INTERVAL: !userConfig.allWorkersRestartInterval && env.RENDERER_ALL_WORKERS_RESTART_INTERVAL,
@@ -124,10 +148,19 @@ function envValuesUsed() {
124
148
  };
125
149
  }
126
150
  function sanitizedSettings(aConfig, defaultValue) {
151
+ let sanitizedPassword = defaultValue;
152
+ if (aConfig?.password === '') {
153
+ sanitizedPassword = '<EMPTY STRING>';
154
+ }
155
+ else if (aConfig?.password) {
156
+ sanitizedPassword = '<MASKED>';
157
+ }
127
158
  return aConfig && Object.keys(aConfig).length > 0
128
159
  ? {
129
160
  ...aConfig,
130
- password: aConfig.password != null ? '<MASKED>' : defaultValue,
161
+ // Distinguish explicit empty-string overrides from truly missing passwords in diagnostics.
162
+ // Empty strings still flow through as explicit overrides and fail validation in production-like envs.
163
+ password: sanitizedPassword,
131
164
  allWorkersRestartInterval: aConfig.allWorkersRestartInterval || defaultValue,
132
165
  delayBetweenIndividualWorkerRestarts: aConfig.delayBetweenIndividualWorkerRestarts || defaultValue,
133
166
  gracefulWorkerRestartTimeout: aConfig.gracefulWorkerRestartTimeout || defaultValue,
@@ -138,18 +171,61 @@ function logSanitizedConfig() {
138
171
  log_js_1.default.info({
139
172
  'Node Renderer version': packageJson_js_1.default.version,
140
173
  'Protocol version': packageJson_js_1.default.protocolVersion,
141
- 'Default settings': defaultConfig,
174
+ 'Default settings at module load (env-backed values may lag current runtime)': sanitizedSettings(defaultConfig, '<NOT PROVIDED AT MODULE LOAD>'),
142
175
  'ENV values used for settings (use "RENDERER_" prefix)': envValuesUsed(),
143
176
  'Customized values for settings from config object (overrides ENV)': sanitizedSettings(userConfig),
144
177
  'Final renderer settings': sanitizedSettings(config, '<NOT PROVIDED>'),
145
178
  });
146
179
  }
180
+ function validatePasswordForProduction(aConfig) {
181
+ // Only a truthy password satisfies the production-like requirement. Null, undefined, and empty strings are
182
+ // all treated as missing passwords.
183
+ if (aConfig.password)
184
+ return null;
185
+ // Require all present runtime envs to be development/test; fail closed otherwise.
186
+ // If either env indicates a production-like value, or neither env is set, password is required.
187
+ // This preserves a fail-closed invariant across the renderer startup path and the Ruby-side checks.
188
+ const allowMissingPassword = runtimeEnvsAllowDevelopmentDefaults();
189
+ if (allowMissingPassword)
190
+ return null;
191
+ return ('RENDERER_PASSWORD must be set in production-like environments ' +
192
+ `(NODE_ENV: "${env.NODE_ENV ?? '(not set)'}", RAILS_ENV: "${env.RAILS_ENV ?? '(not set)'}").` +
193
+ '\n\n' +
194
+ 'In development and test environments, the renderer password is optional and no authentication\n' +
195
+ 'is required. In all other environments, you must explicitly configure a password to secure\n' +
196
+ 'communication between Rails and the Node Renderer.\n\n' +
197
+ 'To fix this, set the RENDERER_PASSWORD environment variable:\n\n' +
198
+ ' export RENDERER_PASSWORD="your-secure-password"\n\n' +
199
+ 'Or pass it in the config object:\n\n' +
200
+ ' reactOnRailsProNodeRenderer({ password: process.env.RENDERER_PASSWORD });\n\n' +
201
+ 'Environment matrix:\n' +
202
+ ' development — password optional (no authentication)\n' +
203
+ ' test — password optional (no authentication)\n' +
204
+ ' (neither set) — treated as production-like; RENDERER_PASSWORD required\n' +
205
+ ' all other environments (staging, production, qa, preview, etc.) — RENDERER_PASSWORD required');
206
+ }
147
207
  /**
148
- * Lazily create the config
208
+ * Lazily create the config.
209
+ * Passing password: undefined means "keep the env/default password", not "clear the password".
210
+ * Other undefined keys retain normal JavaScript spread semantics.
149
211
  */
150
212
  function buildConfig(providedUserConfig) {
151
213
  userConfig = providedUserConfig || {};
152
- config = { ...defaultConfig, ...userConfig };
214
+ const explicitUndefinedPassword = Object.prototype.hasOwnProperty.call(userConfig, 'password') && userConfig.password === undefined;
215
+ if (explicitUndefinedPassword && !runtimeEnvsAllowDevelopmentDefaults()) {
216
+ log_js_1.default.warn('buildConfig({ password: undefined }) preserves the env/default password rather than clearing it. ' +
217
+ 'In production-like environments, a password is always required and cannot be cleared.');
218
+ }
219
+ const runtimeDefaultConfig = {
220
+ ...defaultConfig,
221
+ password: env.RENDERER_PASSWORD,
222
+ // Re-evaluate env-derived defaults at build time in case env vars are set post-import.
223
+ replayServerAsyncOperationLogs: defaultReplayServerAsyncOperationLogs(),
224
+ };
225
+ config = { ...runtimeDefaultConfig, ...userConfig };
226
+ if (explicitUndefinedPassword) {
227
+ config.password = runtimeDefaultConfig.password;
228
+ }
153
229
  // Handle bundlePath deprecation
154
230
  if ('bundlePath' in userConfig) {
155
231
  log_js_1.default.warn('bundlePath is deprecated and will be removed in a future version. ' +
@@ -180,6 +256,15 @@ function buildConfig(providedUserConfig) {
180
256
  config.port = parseInt(val, 10);
181
257
  }
182
258
  });
259
+ // Coerce port to a number — user configs frequently pass env-derived strings
260
+ // (e.g. `port: env.RENDERER_PORT || 3800` yields the string "3800").
261
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-conversion -- runtime value may be string despite the type
262
+ config.port = Number(config.port);
263
+ const portValidationError = validatePort(config.port);
264
+ if (portValidationError) {
265
+ log_js_1.default.error(portValidationError);
266
+ process.exit(1);
267
+ }
183
268
  if ('honeybadgerApiKey' in config ||
184
269
  'sentryDsn' in config ||
185
270
  'sentryTracing' in config ||
@@ -196,6 +281,11 @@ function buildConfig(providedUserConfig) {
196
281
  log_js_1.default.error('includeTimerPolyfills is renamed to stubTimers in RoRP 4.0');
197
282
  process.exit(1);
198
283
  }
284
+ const passwordValidationError = validatePasswordForProduction(config);
285
+ if (passwordValidationError) {
286
+ log_js_1.default.error(passwordValidationError);
287
+ process.exit(1);
288
+ }
199
289
  log_js_1.default.level = config.logLevel;
200
290
  return config;
201
291
  }
@@ -1 +1 @@
1
- {"version":3,"file":"configBuilder.js","sourceRoot":"","sources":["../../src/shared/configBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configBuilder.js","sourceRoot":"","sources":["../../src/shared/configBuilder.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export interface ResponseResult {
15
15
  data?: unknown;
16
16
  stream?: Readable;
17
17
  }
18
+ export declare function badRequestResponseResult(msg: string): ResponseResult;
18
19
  export declare function errorResponseResult(msg: string, tracingContext?: TracingContext): ResponseResult;
19
20
  /**
20
21
  * @param renderingRequest The JavaScript code which threw an error
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/shared/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/shared/utils.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.delay = exports.majorVersion = exports.isErrorRenderResult = exports.handleStreamError = exports.safePipe = exports.isReadableStream = exports.SHUTDOWN_WORKER_MESSAGE = exports.TRUNCATION_FILLER = void 0;
40
40
  exports.workerIdLabel = workerIdLabel;
41
41
  exports.smartTrim = smartTrim;
42
+ exports.badRequestResponseResult = badRequestResponseResult;
42
43
  exports.errorResponseResult = errorResponseResult;
43
44
  exports.formatExceptionMessage = formatExceptionMessage;
44
45
  exports.saveMultipartFile = saveMultipartFile;
@@ -88,14 +89,18 @@ function smartTrim(value, maxLength = (0, configBuilder_js_1.getConfig)().maxDeb
88
89
  const rstrip = toRemove - lstrip;
89
90
  return string.substring(0, midpoint - lstrip) + exports.TRUNCATION_FILLER + string.substring(midpoint + rstrip);
90
91
  }
91
- function errorResponseResult(msg, tracingContext) {
92
- errorReporter.message(msg, tracingContext);
92
+ const NO_CACHE_HEADERS = { 'Cache-Control': 'no-cache, no-store, max-age=0, must-revalidate' };
93
+ function badRequestResponseResult(msg) {
93
94
  return {
94
- headers: { 'Cache-Control': 'no-cache, no-store, max-age=0, must-revalidate' },
95
+ headers: NO_CACHE_HEADERS,
95
96
  status: 400,
96
97
  data: msg,
97
98
  };
98
99
  }
100
+ function errorResponseResult(msg, tracingContext) {
101
+ errorReporter.message(msg, tracingContext);
102
+ return badRequestResponseResult(msg);
103
+ }
99
104
  /**
100
105
  * @param renderingRequest The JavaScript code which threw an error
101
106
  * @param error The error that was thrown (typed as `unknown` to minimize casts in `catch`)
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/shared/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,sCAEC;AAGD,8BAqBC;AASD,kDAOC;AAOD,wDAUC;AAKD,8CAMC;AAQD,8CAMC;AAED,8CAMC;AAED,gDASC;AAED,8BAEC;AAyDD,gDAGC;AAED,4DAGC;AAED,oCAGC;AAjMD,sDAA8B;AAC9B,gDAAwB;AAExB,uCAA8F;AAC9F,mCAAmE;AACnE,+BAAiC;AACjC,kEAAoD;AACpD,yDAA+C;AAC/C,sDAA2B;AAId,QAAA,iBAAiB,GAAG,uBAAuB,CAAC;AAE5C,QAAA,uBAAuB,GAAG,+BAA+B,CAAC;AAEvE,SAAgB,aAAa;IAC3B,OAAO,iBAAO,EAAE,MAAM,EAAE,EAAE,IAAI,cAAc,CAAC;AAC/C,CAAC;AAED,kDAAkD;AAClD,SAAgB,SAAS,CAAC,KAAc,EAAE,SAAS,GAAG,IAAA,4BAAS,GAAE,CAAC,qBAAqB;IACrF,IAAI,MAAM,CAAC;IACX,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAE/B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,GAAG,KAAK,CAAC;IACjB,CAAC;SAAM,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QACnC,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,SAAS,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IACjC,IAAI,MAAM,CAAC,MAAM,IAAI,SAAS;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,yBAAiB,CAAC;IAEvE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IACjC,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,GAAG,yBAAiB,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAC;AAC1G,CAAC;AASD,SAAgB,mBAAmB,CAAC,GAAW,EAAE,cAA+B;IAC9E,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAC3C,OAAO;QACL,OAAO,EAAE,EAAE,eAAe,EAAE,gDAAgD,EAAE;QAC9E,MAAM,EAAE,GAAG;QACX,IAAI,EAAE,GAAG;KACV,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,gBAAwB,EAAE,KAAc,EAAE,OAAgB;IAC/F,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,eAAe,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE;;EAEnD,SAAS,CAAC,gBAAgB,CAAC;;;EAG1B,KAAe,CAAC,OAAO,IAAI,KAAK;;;EAGhC,KAAe,CAAC,KAAK,EAAE,CAAC;AAC3B,CAAC;AAED,wEAAwE;AACxE,MAAM,IAAI,GAAG,IAAA,gBAAS,EAAC,iBAAQ,CAAC,CAAC;AAE1B,KAAK,UAAU,iBAAiB,CACrC,aAA4B,EAC5B,eAAuB;IAEvB,MAAM,IAAA,oBAAS,EAAC,cAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;IAC/C,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAA,4BAAiB,EAAC,eAAe,CAAC,CAAC,CAAC;AACtE,CAAC;AAQD,SAAgB,iBAAiB,CAC/B,KAAY,EACZ,eAAuB,EACvB,UAAuB,EAAE;IAEzB,OAAO,IAAA,eAAI,EAAC,KAAK,CAAC,aAAa,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED,SAAgB,iBAAiB,CAC/B,KAAY,EACZ,eAAuB,EACvB,UAAuB,EAAE;IAEzB,OAAO,IAAA,eAAI,EAAC,KAAK,CAAC,aAAa,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAEM,KAAK,UAAU,kBAAkB,CAAC,cAAuB,EAAE,eAAuB;IACvF,MAAM,kBAAkB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACtD,MAAM,wBAAwB,GAAG,cAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC5E,OAAO,iBAAiB,CAAC,KAAK,EAAE,wBAAwB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACtC,gBAAG,CAAC,IAAI,CACN,iBAAiB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,EAAE,CACnG,CAAC;AACJ,CAAC;AAED,SAAgB,SAAS,CAAI,KAAqB;IAChD,OAAO,KAAK,IAAI,OAAQ,KAAoB,CAAC,IAAI,KAAK,UAAU,CAAC;AACnE,CAAC;AAEM,MAAM,gBAAgB,GAAG,CAAC,MAAe,EAAsB,EAAE,CACtE,OAAO,MAAM,KAAK,QAAQ;IAC1B,MAAM,KAAK,IAAI;IACf,OAAQ,MAAmB,CAAC,IAAI,KAAK,UAAU;IAC/C,OAAQ,MAAmB,CAAC,IAAI,KAAK,UAAU,CAAC;AAJrC,QAAA,gBAAgB,oBAIqB;AAElD;;;;;;;;;;GAUG;AACI,MAAM,QAAQ,GAAG,CACtB,MAAgB,EAChB,WAAc,EACd,OAA8B,EAC3B,EAAE;IACL,IAAI,OAAO,EAAE,CAAC;QACZ,iFAAiF;QACjF,+EAA+E;QAC/E,2EAA2E;QAC3E,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC;IACD,uDAAuD;IACvD,qFAAqF;IACrF,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;QACxB,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;YAC/B,WAAW,CAAC,GAAG,EAAE,CAAC;QACpB,CAAC;IACH,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AArBW,QAAA,QAAQ,YAqBnB;AAEK,MAAM,iBAAiB,GAAG,CAAC,MAAgB,EAAE,OAA+B,EAAE,EAAE,CACrF,IAAA,gBAAQ,EAAC,MAAM,EAAE,IAAI,oBAAW,EAAE,EAAE,OAAO,CAAC,CAAC;AADlC,QAAA,iBAAiB,qBACiB;AAExC,MAAM,mBAAmB,GAAG,CAAC,MAAoB,EAA0C,EAAE,CAClG,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,IAAA,wBAAgB,EAAC,MAAM,CAAC,IAAI,kBAAkB,IAAI,MAAM,CAAC;AAD7E,QAAA,mBAAmB,uBAC0D;AAE1F,oEAAoE;AAC7D,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,CAAC;AAAnF,QAAA,YAAY,gBAAuE;AAEhG,kHAAkH;AAC3G,MAAM,KAAK,GAAG,CAAC,YAAoB,EAAE,EAAE,CAC5C,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;IACtB,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAHQ,QAAA,KAAK,SAGb;AAEL,SAAgB,kBAAkB,CAAC,eAAgC;IACjE,MAAM,EAAE,qBAAqB,EAAE,GAAG,IAAA,4BAAS,GAAE,CAAC;IAC9C,OAAO,cAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,GAAG,eAAe,EAAE,CAAC,CAAC;AAChE,CAAC;AAED,SAAgB,wBAAwB,CAAC,eAAgC;IACvE,MAAM,eAAe,GAAG,kBAAkB,CAAC,eAAe,CAAC,CAAC;IAC5D,OAAO,cAAI,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,eAAe,KAAK,CAAC,CAAC;AAC7D,CAAC;AAED,SAAgB,YAAY,CAAC,eAAgC,EAAE,QAAgB;IAC7E,MAAM,eAAe,GAAG,kBAAkB,CAAC,eAAe,CAAC,CAAC;IAC5D,OAAO,cAAI,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/shared/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export declare const WORKER_STARTUP_FAILURE: "NODE_RENDERER_WORKER_STARTUP_FAILURE";
2
+ export interface WorkerStartupFailureMessage {
3
+ type: typeof WORKER_STARTUP_FAILURE;
4
+ stage: 'listen';
5
+ code?: string;
6
+ errno?: number;
7
+ syscall?: string;
8
+ host: string;
9
+ port: number;
10
+ message: string;
11
+ }
12
+ export declare function isWorkerStartupFailureMessage(value: unknown): value is WorkerStartupFailureMessage;
13
+ //# sourceMappingURL=workerMessages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workerMessages.d.ts","sourceRoot":"","sources":["../../src/shared/workerMessages.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,EAAG,sCAA+C,CAAC;AAEtF,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,OAAO,sBAAsB,CAAC;IACpC,KAAK,EAAE,QAAQ,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,2BAA2B,CAoBlG"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WORKER_STARTUP_FAILURE = void 0;
4
+ exports.isWorkerStartupFailureMessage = isWorkerStartupFailureMessage;
5
+ exports.WORKER_STARTUP_FAILURE = 'NODE_RENDERER_WORKER_STARTUP_FAILURE';
6
+ function isWorkerStartupFailureMessage(value) {
7
+ if (typeof value !== 'object' || value === null) {
8
+ return false;
9
+ }
10
+ const message = value;
11
+ // stage: 'listen' is the only supported stage today. To handle pre-listen
12
+ // failures (e.g. plugin registration), add a new stage value here and
13
+ // update the master handler accordingly.
14
+ return (message.type === exports.WORKER_STARTUP_FAILURE &&
15
+ message.stage === 'listen' &&
16
+ typeof message.host === 'string' &&
17
+ typeof message.port === 'number' &&
18
+ Number.isInteger(message.port) &&
19
+ message.port >= 0 &&
20
+ message.port <= 65535 &&
21
+ typeof message.message === 'string');
22
+ }
23
+ //# sourceMappingURL=workerMessages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workerMessages.js","sourceRoot":"","sources":["../../src/shared/workerMessages.ts"],"names":[],"mappings":";;;AAaA,sEAoBC;AAjCY,QAAA,sBAAsB,GAAG,sCAA+C,CAAC;AAatF,SAAgB,6BAA6B,CAAC,KAAc;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG,KAA6C,CAAC;IAE9D,0EAA0E;IAC1E,sEAAsE;IACtE,yCAAyC;IACzC,OAAO,CACL,OAAO,CAAC,IAAI,KAAK,8BAAsB;QACvC,OAAO,CAAC,KAAK,KAAK,QAAQ;QAC1B,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAChC,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAChC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;QAC9B,OAAO,CAAC,IAAI,IAAI,CAAC;QACjB,OAAO,CAAC,IAAI,IAAI,KAAK;QACrB,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CACpC,CAAC;AACJ,CAAC"}