Files
bun.sh/test/regression/issue
Claude Bot 3f093fe2a0 fix(node): coerce process.env values to strings like Node.js
Node.js coerces all values assigned to process.env properties to strings.
For example, `process.env.FOO = undefined` results in `process.env.FOO`
being the string `"undefined"`, not the JavaScript `undefined` value.

Bun was storing the actual JavaScript values, which broke compatibility
with tools like Vite 8 + rolldown that expect string values.

This change:
- Adds a Proxy wrapper for process.env on non-Windows platforms (similar
  to the existing Windows implementation) that coerces values to strings
- Uses string concatenation (`'' + value`) instead of `String(value)` to
  throw for Symbols, matching Node.js behavior
- Also fixes the Windows implementation to throw for Symbols

Fixes #26388

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23 10:21:44 +00:00
..
2025-08-06 06:44:46 -07:00
2025-01-28 17:23:57 -08:00
2025-06-03 13:23:12 -07:00
2025-06-03 23:41:37 -07:00
2025-01-17 22:08:07 -08:00
2024-06-14 01:50:36 -07:00
2025-03-03 21:38:05 -08:00
2025-05-26 21:18:22 -07:00
2025-07-03 01:06:22 -07:00
2025-07-23 22:31:42 -07:00
2025-10-20 14:07:31 -07:00
2025-11-05 22:04:14 -08:00
2025-11-05 22:04:14 -08:00
2025-11-19 21:17:51 -08:00
2026-01-13 22:38:31 -08:00
2025-07-20 23:02:10 -07:00