cloudflare/vinext

Webpack loaders that mutate `process.env` at build time not supported

Open

#1 500 ouverte le 22 mai 2026

Voir sur GitHub
 (0 commentaires) (0 réactions) (0 assignés)TypeScript (329 forks)github user discovery
adapter-api-e2ehelp wanted

Métriques du dépôt

Stars
 (8 120 stars)
Métriques de merge PR
 (Merge moyen 1j 1h) (462 PRs mergées en 30 j)

Description

This issue was created by an agent analysing CI failures from the Next.js Deploy Suite (vinext main vs Next.js v16.2.6, 2026-05-22).

Problem

Next.js allows webpack loaders to set environment variables during the build (e.g. via process.env.X = ...), which then become available in user code. vinext (Vite/Rolldown-based) does not run webpack loaders, so these env vars are absent and the test app renders the default error page.

Webpack loader sets process.env.X at build time; user code reads undefined

Estimated Impact

~1 test failures across the deploy suite.

Affected Test Suites

  • test/e2e/app-dir/webpack-loader-set-environment-variable/webpack-loader-set-environment-variable.test.ts

Recommendation

  1. Reproduce first in vinext's own test suite. Add a fixture with a webpack loader that sets process.env.MY_VAR and a page that prints process.env.MY_VAR. Confirm the page does not see the value.

  2. Decide on a vinext equivalent. Either implement a Vite plugin that runs at build start and can mutate the define map, or document that webpack loaders are not portable. Update fixture / triage decision accordingly.

Guide contributeur