defineConfig drops own properties of Promise plugins (breaks Vike discovery)
Les mainteneurs répondent en général sous 1 jour
Évaluation
Cette issue n'a pas encore été évaluée.
Description
What
withoutVitePlusTestPlugins maps plugin instanceof Promise to plugin.then(withoutVitePlusTestPlugins). .then() creates a new promise that does not carry the original promise's own properties.
Impact
vike() (vike/[email protected]) returns a Promise carrying _vikeVitePluginOptions as an own property — verified present on the promise itself and absent from all 41 resolved plugins. Vike discovers its plugin by scanning the raw user config for that field, so after vp's re-wrap the field is gone: vike build warns Omitting Vike's Vite plugin and then fails inside @brillout/vite-plugin-server-entry (resolveConfig).
Current workaround is a sync marker object that copies the field (awaiting first is not an option — it destroys the marker; a lazy async factory reintroduces the same failure since it yields [Promise]).
Ask
Preserve own props across the re-wrap (e.g. copy them onto the settled wrapper), or document that Promise plugins must be prop-free so downstream authors know to use a marker.
Repro
// vite.config.ts (loaded through vp's defineConfig)
import { defineConfig } from 'vite-plus';
import vike from 'vike/plugin';
export default defineConfig({ plugins: [vike()] });
vike build fails as above. The identical config through vite's own defineConfig builds fine.
Versions
vite-plus 1.3.0, vike 0.4.268, vite-plus-core 1.3.0
- Langage dominant
- Rust
- Étoiles
- 6.3k
- Forks
- 283
- Merge moyen
- 1 j 14 h
- PR mergées (30 j)
- 231
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de voidzero-dev/vite-plus
-
pending triage
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
voidzero-dev/vite-plus#2882 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
voidzero-dev/vite-plus#2097 · 10 commentaires · 2 réactions ·
Les mainteneurs répondent en général sous 1 jour
-
`pnpm create vite-plus` and `yarn create vite-plus` fail with `spawn vp ENOENT` when `vp` is not on PATHPeut-être pris @fengmk2 l’a pris aujourd’hui. Ouvertebug
voidzero-dev/vite-plus#3177 · 1 réaction · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
vp migrate doesn't flag esbuild-specific config (minify: "esbuild") — migrated project fails to build on Vite 8Peut-être pris @john-okeefe l’a pris aujourd’hui. Ouvertecontribution welcome
voidzero-dev/vite-plus#3176 · 1 réaction · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
`vp run`: scripts get a non-blocking stdin (EAGAIN) when `run` tasks in vite.config.ts use constantsOuvertepending triage
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
voidzero-dev/vite-plus#3155 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de voidzero-dev/vite-plus
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
git-ai-project/git-ai#2434 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
peteonrails/voxtype#909 ·
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
kucherenko/jscpd#1239 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 69/100
alchemyplatform/rundler#1358 ·
Les mainteneurs répondent en général sous 3 jours