Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

esbuild.target in vite.config is ignored when using wails dev but not when using npm run dev #3688

Open
UfukUstali opened this issue Aug 18, 2024 · 2 comments
Labels
Bug Something isn't working

Comments

@UfukUstali
Copy link

Description

When starting the project using wails dev the esbuild.target property of vite.config is ignored and is always set to "chrome87", "edge88", "es2020", "firefox78", "safari13" + 2 overrides.

Which causes features like Top-level await to not work.

The whole of the error message read as such

-> wails dev
Wails CLI v2.9.1

Executing: go mod tidy
  • Generating bindings: Done.
  • Installing frontend dependencies: Done.
  • Compiling frontend:
    > [email protected] build
    > vue-tsc --noEmit && vite build

    vite v3.2.10 building for production...
    transforming...
    ✓ 18 modules transformed.

    [vite:esbuild-transpile] Transform failed with 1 error:
    assets/index.9363a9a2.js:5871:0: ERROR: Top-level await is not available in the configured target environment ("chrome87", "edge88", "es2020", "firefox78", "safari13" + 2 overrides)

    Top-level await is not available in the configured target environment ("chrome87", "edge88", "es2020", "firefox78", "safari13" + 2 overrides)
    5868|
    5869|  const style = '';
    5870|
       |   ^
    5871|  await new Promise((resolve) => {
       |  ^
    5872|    setTimeout(() => {

    error during build:
    Error: Transform failed with 1 error:
    assets/index.9363a9a2.js:5871:0: ERROR: Top-level await is not available in the configured target environment ("chrome87", "edge88", "es2020", "firefox78", "safari13" + 2 overrides)
.... <traces>

There are no errors and the app runs as expected when i first cd into frontend and then run npm run dev

And this is the error message that i get when i intentionally set esbuild.target to es2020 and then run npm run dev

-> npm run dev

> [email protected] dev
> vite


  VITE v3.2.10  ready in 362 ms

  ➜  Local:   http://localhost:5173/
  ➜  Network: use --host to expose
18:48:59 [vite] Internal server error: Transform failed with 1 error:
C:/uni/serbest/repro/frontend/src/main.ts:5:0: ERROR: Top-level await is not available in the configured target environment ("es2020")
  Plugin: vite:esbuild
  File: C:/uni/serbest/repro/frontend/src/main.ts:5:0

  Top-level await is not available in the configured target environment ("es2020")
  2  |  import App from "./App.vue";
  3  |  import "./style.css";
  4  |
     |   ^
  5  |  await new Promise<void>((resolve) => {
     |  ^
  6  |    setTimeout(() => {
.... <traces>

To Reproduce

  1. Started a new project with wails init -n repro -t vue-ts (didn't try other templates)
  2. Changed the esbuild.target to esnext
  3. Tried to use Top-level await which is only availble after es2022
  4. Ran wails dev fails with Top-level await is not available in the configured target environment ("chrome87", "edge88", "es2020", "firefox78", "safari13" + 2 overrides)
  5. cd into frontend ran npm run dev works without issues

Expected behaviour

My vite.config should be respected and the app should ran as expected

Screenshots

No response

Attempted Fixes

No response

System Details

# Wails
Version | v2.9.1

# System
┌───────────────────────────────────────────────────────────────────────────────────────────────────┐
| OS           | Windows 10 Home  <- is actually Windows 11 Home                                                                 |
| Version      | 2009 (Build: 22631)                                                                |
| ID           | 23H2                                                                               |
| Go Version   | go1.22.3 <- is actually 1.22.6                                                                          |
| Platform     | windows                                                                            |
| Architecture | amd64                                                                              |
| CPU          | AMD Ryzen 7 5800H with Radeon Graphics                                             |
| GPU          | AMD Radeon(TM) Graphics (Advanced Micro Devices, Inc.) - Driver: 27.20.14064.11001 |
| Memory       | 16GB                                                                               |
└───────────────────────────────────────────────────────────────────────────────────────────────────┘

# Dependencies
┌────────────────────────────────────────────────────────┐
| Dependency | Package Name | Status    | Version        |
| WebView2   | N/A          | Installed | 127.0.2651.105 |
| Nodejs     | N/A          | Installed | 20.11.0        |
| npm        | N/A          | Installed | 10.2.4         |
| *upx       | N/A          | Available |                |
| *nsis      | N/A          | Available |                |
└─────────────── * - Optional Dependency ────────────────┘

# Diagnosis
Optional package(s) installation details:
  - upx : Available at https://upx.github.io/
  - nsis : More info at https://wails.io/docs/guides/windows-installer/

Additional context

No response

@UfukUstali UfukUstali added the Bug Something isn't working label Aug 18, 2024
@dumpstring
Copy link

i just ran into the same issue. when will this be fixed? :/

@leaanthony
Copy link
Member

Are you able to fix it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants