EcrituresNumeriques / stylo

Stylo est un éditeur de textes pour articles scientifiques en sciences humaines et sociales.
https://stylo.huma-num.fr
GNU General Public License v3.0
53 stars 13 forks source link

Le fichier .env n'est pas pris en compte lors de npm run build #1097

Open ggrossetie opened 2 days ago

ggrossetie commented 2 days ago

La fonction loadEnv s'attend à un chemin vers un fichier mais import.meta.resolve('..') retourne une URL (i.e., file:///path/to/directory)

https://github.com/EcrituresNumeriques/stylo/blob/779e50a4274bddaa3fa7f0889cde01feed4f86b5/front/vite.config.js#L9

Il faudrait convertir l'URL en path ou utiliser import.meta.dirname afin de donner un path à la fonction loadEnv. Il est aussi envisageable de proposer à Vite/dotenv de charger un fichier à partir d'une URL/URI ?

thom4parisot commented 2 days ago

On pourrait utiliser import.meta.dirname en bumpant la version de Node ; c'est pas gênant pour le front.

Sinon y'a aussi fileURLToPath() qui fait l'affaire sans bumper de version.

import { fileURLToPath } from 'node:url'

//… 

const env = loadEnv(mode, fileURLToPath(import.meta.resolve('..')), 'SNOWPACK_')