·
50 commits
to main
since this release
Minor Changes
-
#11
6a22f62Thanks @ReesMorris! - feat: separate client and server environments for enhanced securityBreaking Changes:
createDynamicEnvnow returns{ clientEnv, serverEnv }instead of a singleenvobjectDynamicEnvScriptnow only acceptsClientEnvtype- Removed backward compatibility with combined environment object
Security Fix:
- Server-only environment variables can no longer be accidentally exposed to the browser through React Server Components
Migration:
// Before const env = createDynamicEnv({ client: {...}, server: {...} }); <DynamicEnvScript env={env} /> // After const { clientEnv, serverEnv } = createDynamicEnv({ client: {...}, server: {...} }); <DynamicEnvScript clientEnv={clientEnv} />
Additional Improvements:
- Added TypeScript discriminators (
__isClientand__isServer) for compile-time type safety - Made
processEnvironmentVariablesa pure function - Removed duplicate key checking as environments are now separate