Skip to content

🍕 Collect destructured process.env vars in Vite env collector#245

Merged
jjpaulino merged 1 commit into
masterfrom
jordan/fix-vite-env-collector-destructure
May 4, 2026
Merged

🍕 Collect destructured process.env vars in Vite env collector#245
jjpaulino merged 1 commit into
masterfrom
jordan/fix-vite-env-collector-destructure

Conversation

@jjpaulino
Copy link
Copy Markdown
Member

Summary

  • Extend lib/cmd/vite/plugins/client-env.js to collect env vars from destructuring assignments on process.env.
  • Continue collecting dot-access vars (process.env.FOO) as before.
  • Add tests for simple destructuring, aliases/defaults, and non-uppercase filtering in client-env.test.js.

Why

Some universal services use:

const { CORAL_GRAPHQL_TOKEN, CORAL_HOST_URL } = process.env;

The previous collector regex only matched process.env.FOO, so destructured keys were omitted from client-env.json and appeared undefined/null in browser runtime.

Test plan

  • npm run lint
  • npx jest lib/cmd/vite/plugins/client-env.test.js

Made with Cursor

The env collector only matched `process.env.FOO` and missed
`const { FOO } = process.env` in universal services imported into
browser bundles. Missing keys then dropped out of client-env.json,
showing up as undefined/null in client runtime.

Add destructuring support (including aliases/defaults) and tests.

Made-with: Cursor
@coveralls
Copy link
Copy Markdown

Coverage Status

coverage: 64.247% (+0.2%) from 64.054% — jordan/fix-vite-env-collector-destructure into master

@jjpaulino jjpaulino self-assigned this Apr 29, 2026
@jjpaulino jjpaulino merged commit d5cb194 into master May 4, 2026
6 checks passed
@jjpaulino jjpaulino deleted the jordan/fix-vite-env-collector-destructure branch May 4, 2026 13:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants