Catatan Perubahan
Legenda:
- - macOS
- ⊞ - Windows
- 🐧 - Linux
/*— Semua perubahan penting pada proyek ini akan didokumentasikan dalam file ini.
Format mengikuti Keep a Changelog, dan proyek ini mengikuti Semantic Versioning.
Addeduntuk fitur baru.Changeduntuk perubahan pada fungsionalitas yang ada.Deprecateduntuk fitur yang akan segera dihapus.Removeduntuk fitur yang sudah dihapus.Fixeduntuk perbaikan bug.Securityjika ada kerentanan.
*/
/*
** JANGAN PERBARUI FILE INI **
Pembaruan harus ditambahkan ke v3/UNRELEASED_CHANGELOG.md
Terima kasih!
*/
[Belum Dirilis]
Section titled “[Belum Dirilis]”v3.0.0-alpha2.108 - 2026-06-28
Section titled “v3.0.0-alpha2.108 - 2026-06-28”Ditambahkan
Section titled “Ditambahkan”- Tambahkan pintasan keyboard global (sistem-lebar) melalui
app.GlobalShortcut(Register,Unregister,UnregisterAll,IsRegistered,GetAll). Pintasan aktif bahkan saat aplikasi tidak difokuskan. Diimplementasikan secara native per platform tanpa dependensi pihak ketiga: Carbon hot keys di macOS,RegisterHotKeydi Windows,XGrabKeydi X11, dan antarmuka XDG Desktop Portal global shortcuts di Wayland. - Tambahkan MCP server bawaan: server Model Context Protocol yang dimulai secara otomatis saat aplikasi di-build dengan tag
mcp, memungkinkan agen LLM menguji dan mengontrol aplikasi Wails yang sedang berjalan — kontrol window, inspeksi DOM, evaluasi JavaScript, pemanggilan method terikat, event, dan simulasi input mouse/keyboard yang dirender dengan kursor animasi di layar. Tidak diperlukan kode pengguna: tagmcpditambahkan secara otomatis olehwails3 build/wails3 devsaatWAILS_MCP=1diatur. Dikonfigurasi sepenuhnya melalui variabel lingkungan (WAILS_MCP_HOST,WAILS_MCP_PORT,WAILS_MCP_TIMEOUT,WAILS_MCP_HIDE_CURSOR).
Diperbaiki
Section titled “Diperbaiki”- Perbaiki
Menu.Update()yang tidak membangun ulang menu native di GTK4 Linux (#5659, didiagnosis dan diperbaiki secara independen oleh @puneetdixit200 di #5539) - Perbaiki crash saat menghitung layar macOS pada perubahan display dengan menyalin string id/nama layar dan mengambil snapshot jumlahnya (#5565, didiagnosis dan diperbaiki secara independen oleh @x-haose di #5584)
v3.0.0-alpha2.107 - 2026-06-27
Section titled “v3.0.0-alpha2.107 - 2026-06-27”Ditambahkan
Section titled “Ditambahkan”- Tambahkan dokumentasi Wake eksperimental dengan navigasi sidebar dalam PR oleh @leaanthony
v3.0.0-alpha2.106 - 2026-06-24
Section titled “v3.0.0-alpha2.106 - 2026-06-24”Diubah
Section titled “Diubah”- Tingkatkan
webview2ke v1.0.27.- ci(webview2): perbaiki release build (cross-compile Windows + complete go.sum) (#5671) Full diff: https://github.com/wailsapp/wails/compare/webview2/v1.0.26…webview2/v1.0.27
- Hapus go vet dari workflow release webview2 cross-compilation dalam PR oleh @taliesin-ai
- Perbarui model OpenRouter auto-changelog ke google/gemini-2.5-flash-lite dalam PR oleh @taliesin-ai
- Tingkatkan
webview2ke v1.0.26.
Perbaikan
Section titled “Perbaikan”- Pulih dari error COM runtime sementara alih-alih keluar (#5658, #5580).
Chromium.errorCallbacksebelumnya memanggilos.Exit(1)untuk setiap error COM, sehingga gangguan yang dapat dipulihkan setelah startup mematikan seluruh aplikasi. Path runtime (Resize/GetClientRect,Navigate/NavigateToString,Init,MessageReceived,PutZoomFactor,OpenDevToolsWindow) kini mencatat log dan memulihkan. Khususnya, web message yang salah bentuk/tidak tepercaya diMessageReceivedkini dibuang alih-alih mematikan proses. Ini mengatasi kelas crash monitor mixed-DPI (#5544, #5650). Path pembuatan environment/controller tetap fatal. Full diff: https://github.com/wailsapp/wails/compare/webview2/v1.0.25…webview2/v1.0.26
Diperbaiki
Section titled “Diperbaiki”- Perbaiki workflow release-webview2 agar menangani file go.sum dengan benar dalam PR oleh @taliesin-ai
- Perbaiki pembaruan menu GTK4 Linux dengan menghapus dan membangun ulang menu native dalam PR oleh @taliesin-ai
v3.0.0-alpha2.105 - 2026-06-21
Section titled “v3.0.0-alpha2.105 - 2026-06-21”Ditambahkan
Section titled “Ditambahkan”- Tambahkan
application.Systemuntuk deteksi platform runtime dari kode bersama:System.IsMobile()(iOS/Android),System.IsDesktop()(macOS/Windows/Linux),System.IsServer()(build tagserver), danSystem.IsPlatform(application.PlatformMacOS|PlatformWindows|PlatformLinux|PlatformIOS|PlatformAndroid|PlatformServer)untuk menguji target tunggal secara langsung. Dapat dikompilasi di setiap target sehingga Anda dapat bercabang tanpa build tag. Helper frontend yang sesuai (System.IsMobile/IsDesktop/IsIOS/IsAndroid/...) tersedia di@wailsio/runtime - Tambahkan panduan “Using Other Frontend Frameworks” yang menunjukkan cara memasukkan proyek Vite Anda sendiri ke
frontend/(mencakup Solid, Preact, Lit, SvelteKit, Qwik, Angular, dll.) - Wizard
wails3 setupsekarang memeriksa toolchain mobile (iOS/Android) — Xcode dan runtime iOS Simulator, JDK, Android SDK/NDK dan emulator — dengan instalasi satu klik dan perbaikan konfigurasi shell yang dapat disalin jika diperlukan - Proyek yang di-generate menyertakan
frontend/.npmrcdenganminimum-release-age7 hari untuk mengurangi paparan paket yang baru dipublikasikan (berpotensi compromised) (dihormati oleh pnpm dan bun; diabaikan tanpa efek oleh npm)
Diubah
Section titled “Diubah”- Desain ulang semua starter template bawaan dengan tampilan hero neon-mountain baru (web, iOS dan Android)
- TypeScript sekarang menjadi default untuk starter template dan memiliki nama template dasar.
wails3 init(tanpa-t) membuat proyek TypeScript;-t vanilla,-t react,-t vuedan-t svelteadalah TypeScript, dengan varian JavaScript di-t vanilla-js,-t react-js,-t vue-jsdan-t svelte-js. Template bawaan mendeklarasikan bahasanya dengantypescript:ditemplate.yaml; template komunitas yang memakai suffix-tstetap berfungsi sebagai fallback - Desain ulang wizard
wails3 setupdengan tema neon “digital Wails” (frosted-glass vibrancy di atas latar gunung)
Diperbaiki
Section titled “Diperbaiki”- Perbaiki crash di Windows saat memulihkan aplikasi yang diminimalkan cukup lama hingga WebView2 suspend atau proses render/GPU-nya di-recycle. Resync DPI minimise/restore (#5544) sekarang hanya menyentuh controller WebView2 ketika DPI window benar-benar berubah, menghindari panggilan COM fatal ke controller yang suspend pada restore same-DPI yang umum (#5605)
- Perbaiki crash native
SIGABRT/SIGSEGVberulang (biasanya di dalamg_object_unrefselama GTK main loop) pada aplikasi Linux jangka panjang dengan beban asset/media yang sering. Asset server menyelesaikanWebKitURISchemeRequestdari goroutine worker, memanggil fungsi WebKit2GTK yang tidak thread-safe di luar GTK main thread; penyelesaian (webkit_uri_scheme_request_finish_with_response/finish_error) sekarang berjalan di main thread. Melengkapi perbaikan parsial di #5566. Mempengaruhi build GTK3 dan GTK4/WebKitGTK 6.0 (#5631, #5557) - Perbaiki
fatal error: invalid pointer found on stackintermiten disetupSignalHandlerspada Linux/GTK3. ID window yang diteruskan sebagaiuser_datasignal disimpan di lokal Gounsafe.Pointer, sehingga garbage collector abort saat memindai nilai (non-pointer) selama stack copy. ID sekarang disimpan bertipe integer (uintptr_t) di sisi Go, back-porting ke jalur GTK3 legacy perbaikan yang sama #4958 terapkan ke jalur GTK4 (yang mengganti fungsi signal C keuintptr_tuntuk menghilangkan error-race/checkptr) (#5631)
Dihapus
Section titled “Dihapus”- Hapus starter template
react-swc,preact,lit,solid,qwikdansveltekit(beserta varian-ts-nya). Set bawaan yang didukung sekarangvanilla,react,vuedansvelte— masing-masing TypeScript secara default, dengan varian-jsJavaScript. Framework lain masih dapat digunakan dengan membawa frontend sendiri atau via custom template
v3.0.0-alpha2.104 - 2026-06-18
Section titled “v3.0.0-alpha2.104 - 2026-06-18”Diperbaiki
Section titled “Diperbaiki”- Perbaiki an iOS crash (SIGABRT) ketika method layanan Go yang terikat mengembalikan string kosong. Penulis respons aset iOS melindungi pointer body dengan
buf != nilalih-alih panjangnya, sehingga body dengan panjang nol membuat&buf[0]panic; sekarang melindungi berdasarkan panjang, sesuai dengan penulis desktop
v3.0.0-alpha2.103 - 2026-06-15
Section titled “v3.0.0-alpha2.103 - 2026-06-15”Diubah
Section titled “Diubah”- Pindahkan fitur native iOS dan Android ke platform manager: panggil melalui
application.IOS.*andapplication.Android.*(e.g.application.IOS.Haptic("medium"),application.Android.Share(payload)) alih-alihapplication.IOS*/application.Android*fungsi bebas (#5602) - Ganti nama event mobile bridge: event cross-platform sekarang menggunakan the
common:*prefix (e.g.common:haptic,common:location) and event eksklusif platform menggunakanios:*/android:*(e.g.ios:backgroundTask,android:foregroundService); thenative:*prefix tidak lagi digunakan (#5602)
v3.0.0-alpha.102 - 2026-06-14
Section titled “v3.0.0-alpha.102 - 2026-06-14”Ditambahkan
Section titled “Ditambahkan”- Tambahkan eksperimental
wails3 setupwizard untuk setup proyek interaktif dan pemeriksaan dependency - Tambahkan
--jsonflag kewails3 doctoruntuk output yang dapat dibaca mesin - Tambahkan signing status bagian ke
wails3 doctorperintah
Diperbaiki
Section titled “Diperbaiki”- Perbaiki npm detection di Linux to check PATH in addition to package manager
v3.0.0-alpha.101 - 2026-06-13
Section titled “v3.0.0-alpha.101 - 2026-06-13”Ditambahkan
Section titled “Ditambahkan”- iOS: dialog pesan native (UIAlertController) and dialog buka file/files/direktori (UIDocumentPickerViewController); save dialogs mengembalikan error eksplisit
- iOS: dukungan clipboard via UIPasteboard
- iOS: metrik layar nyata via UIScreen (points, pixels, scale, safe-area work area)
- iOS: build perangkat (
IOS_PLATFORM=device), identitas code-signing / provisioning profile / dukungan entitlements,.ipapackaging, anddeploy-devicevia devicectl - iOS: versi iOS minimum yang dapat dikonfigurasi (
ios.minIOSVersionin build/config.yml) - iOS:
wails3 doctorreports Xcode and iOS SDK availability di macOS - iOS: event sistem — battery, network, theme, screen-lock and low-memory muncul sebagai
events.IOS.*and platform-neutralevents.Common.*event aplikasi - iOS: jembatan fitur mobile native (exported
application.IOS*) — share sheet, open URL, keep-awake, torch, safe-area insets, brightness, app info, orientation lock, status bar, biometrics (Face ID/Touch ID), local notifications and Keychain secure storage - iOS: sensor & perangkat keras — haptics, one-shot geolocation, accelerometer, proximity, text-to-speech, storage info, power/battery state, network status, keyboard insets and screen-capture detection
- iOS: dokumentasi (IOS.md and a docs-site panduan)
- Android: dialog pesan native (AlertDialog) and open file/files dialogs (Storage Access Framework, imported as cache copies); open-directory and save dialogs mengembalikan error eksplisit
- Android: dukungan clipboard via ClipboardManager
- Android: metrik layar nyata via WindowMetrics/DisplayMetrics (dp, pixels, scale, system-bar work area)
- Android: haptics (
Android.Haptics.Vibrate), device info (Android.Device.Info) and toast (Android.Toast.Show) runtime methods - Android: typed lifecycle events (
events.Android.*, generated from events.txt) withActivityCreatedmapped toCommon.ApplicationStarted - Android: pipeline build menghasilkan APK debug dan release (
android:run,android:package,android:package:fat); release signing via debug keystore secara default atau keystore nyata melaluiANDROID_KEYSTORE_*env vars - Android:
wails3 doctormelaporkan Android SDK, NDK dan JDK - Android: event sistem — battery, network, theme, screen-lock and low-memory muncul sebagai
events.Android.*and platform-neutralevents.Common.*event aplikasi - Android: jembatan fitur mobile native (exported
application.Android*) — share, open URL, keep-awake, torch, safe-area insets, brightness, app info, orientation lock, status bar, biometrics (BiometricPrompt), local notifications and EncryptedSharedPreferences secure storage - Android: sensor & perangkat keras — haptics, one-shot geolocation, accelerometer, proximity, text-to-speech, storage info, power/battery state, network status, keyboard insets and FLAG_SECURE screen-capture blocking
- Android: dokumentasi (ANDROID.md and a docs-site panduan)
- Example: the
mobilekitchen sink mendapat tab Mobile dan Hardware yang mendemonstrasikan the native feature bridge di iOS dan Android (pill tabs wrap ke beberapa baris) - Mobile: battery — the accelerometer, proximity sensor, torch and the example’s periodic clock dijeda saat aplikasi di-background dan dipulihkan saat kembali (Android menjaga proses berjalan di background, and the torch adalah state perangkat keras yang persist di iOS), and Android system-event receivers hanya didaftarkan saat aplikasi di foreground
- iOS: capture kamera —
application.IOSCapturePhoto/IOSCaptureVideo(UIImagePickerController → anative:captureevent with a base64 thumbnail) - iOS: eksekusi background —
application.IOSBeginBackgroundTask/IOSEndBackgroundTask(a UIApplication jendela background-task) and a configurableios.backgroundModes(build/config.yml) yang men-templatingUIBackgroundModeske Info.plist yang dihasilkan - Android: capture kamera —
application.AndroidCapturePhoto/AndroidCaptureVideo(system camera via FileProvider → anative:captureevent) - Android: foreground service —
application.AndroidStartForegroundService/AndroidStopForegroundService(aWailsForegroundServicedengan notifikasi ongoing menjaga proses tetap hidup untuk pekerjaan background jangka panjang) - Example: a Camera tab demonstrating photo/video capture and eksekusi background (foreground service on Android, jendela background-task on iOS)
Diperbaiki
Section titled “Diperbaiki”- Perbaiki
getUserMediaselalu gagal denganNotAllowedErrordi Linux: WebKitGTK menolak permintaan izin yang tidak ditangani siapapun, and thepermission-requestsignal tidak terhubung. Camera/microphone sekarang ditangani melaluiWebviewWindowOptions.Permissionsmap (map[PermissionType]Permission), dihormati di Linux (WebKitGTK) dan Windows (WebView2). On Linux, yang tidak memiliki prompt native, camera/microphone default ke allowed (memulihkangetUserMedia) dan dapat dimatikan denganPermissionDeny(#5552) - iOS:
GOOS=ioscompile lagi (exportedevents.IOS, mobile method-name stubs) and build production-tagged compile (perbaikan build-tag di pkg/application and several services) - iOS: Go→JS event dan ExecJS sekarang berfungsi — the page tidak lagi dimuat dua kali saat startup and the
wails:runtime:readyhandshake tidak lagi bisa hilang - iOS:
ApplicationDidFinishLaunching/ApplicationStartedtidak lagi race app startup; menghapus sleep startup 2 detik yang tetap - iOS: fixed a kebocoran C-string pada setiap eksekusi JavaScript Go→JS
- iOS:
hasListenerssekarang mencerminkan registrasi listener nyata - iOS: framework debug logging dikompilasi keluar dari build production
- Android:
GOOS=androidcompile lagi — definedevents.Android, removed the out-of-boundsevents_android.golistener array, added the mobile method-name stub, and stopped desktop-Linux files (linux_cgo.*,events_linux.*,environment_linux.go) leaking into Android builds - Android: JS→Go bindings sekarang berfungsi — the WebView tidak dapat mengirimkan
fetch()body POST keshouldInterceptRequest, sehingga panggilan runtime dirutekan melalui a JavascriptInterface transport (nativeHandleRuntimeCall) alih-alih crash pada request body nil - Android:
Screens.*panggilan runtime mengembalikan data nyata — the ScreenManager sekarang diisi saat startup (tidak pernah di-wire, sehinggaGetAllmengembalikan nil) - Android: framework debug logging dikompilasi keluar dari build production and dirutekan melalui logcat di bawah tag
Wailsdi build debug - Android: real
hasListenersregistry, penanganan referensi/exception JNI, and a siklus hidup halaman single-load (tanpa navigasi ganda) - Perbaiki
wails3 generate bindingsfailing with “Access is denied” di Windows when the Vite dev server is running, dengan mensinkronkan file yang dihasilkan ke direktori output alih-alih rename di atasnya (#5515) - Perbaiki intermittent fatal crash di macOS when reading screen information after a display change: the screen id and name menyimpan pointer ke
UTF8Stringbuffer yang dapat dibebaskan sebelum Go menyalinnya (use-after-free). String sekarangstrdup’d dan dibebaskan setelah konversi, and enumerasi layar berjalan di autorelease pool eksplisit sehingga tidak lagi bocor saat dipanggil dari goroutine Go (#5556) - Perbaiki intermittent SIGSEGV di Linux saat assetserver menutup
WebKitURISchemeRequest: yang terakhirg_object_unrefberjalan di goroutine assetserver, memfinalisasi WebKit GObject di luar thread utama GTK. Unref sekarang di-marshal ke konteks utama GTK viag_main_context_invoke(#5557)
v3.0.0-alpha.100 - 2026-06-13
Section titled “v3.0.0-alpha.100 - 2026-06-13”Ditambahkan
Section titled “Ditambahkan”- Perluas
MacWebviewPreferencesdengan tambahan WKWebView opsi konfigurasi:EnableAutoplayWithoutUserAction,AllowsAirPlayForMediaPlayback,AllowsMagnification,JavaScriptCanOpenWindowsAutomatically,MinimumFontSize, andApplicationNameForUserAgent(#5549)
Diperbaiki
Section titled “Diperbaiki”- Perbaiki
wails3 generate bindingsfailing with “Access is denied” di Windows when the Vite dev server is running, dengan mensinkronkan file yang dihasilkan ke direktori output alih-alih rename di atasnya (#5561) - Perbaiki JS resize events not firing for frameless windows di Linux; fix deteksi edge scrollbar untuk window frameless (#5368)
- Perbaiki updater di Windows gagal dengan “invalid cross-device link” saat direktori temp berada di volume berbeda dari direktori instalasi (#5560)
v3.0.0-alpha.99 - 2026-06-10
Section titled “v3.0.0-alpha.99 - 2026-06-10”Diperbaiki
Section titled “Diperbaiki”- Perbaiki
wails3 generate bindingsfailing with “Access is denied” di Windows when the Vite dev server is running, dengan mensinkronkan file yang dihasilkan ke direktori output alih-alih rename di atasnya (#5515)
v3.0.0-alpha.98 - 2026-06-03
Section titled “v3.0.0-alpha.98 - 2026-06-03”Diperbaiki
Section titled “Diperbaiki”- Perbaiki WebKit UI freeze di Linux when idle (e.g. with the inspector open) dengan tidak lagi memaksa
SA_ONSTACKonSIGUSR1, yang merusak sinkronisasi thread GC JavaScriptCore (#5527)
v3.0.0-alpha.97 - 2026-05-31
Section titled “v3.0.0-alpha.97 - 2026-05-31”Ditambahkan
Section titled “Ditambahkan”- Tambahkan halaman debugging dan bekerja dengan
runtime/trace
Diubah
Section titled “Diubah”- Hapus some tidak perlu
_ "embed"import membersihkan kode sedikit
Diperbaiki
Section titled “Diperbaiki”- Perbaiki minimum width/height constraints not enforced after window unmaximise di Windows (#4593)
- Perbaiki mouse click-through dalam mode fullscreen dengan opsi window Frameless + Transparent (#4408)
v3.0.0-alpha.96 - 2026-05-25
Section titled “v3.0.0-alpha.96 - 2026-05-25”Ditambahkan
Section titled “Ditambahkan”- Tambahkan Garble dukungan obfuscation (#4563): ID method binding yang stabil, plumbing build/Taskfile (
build --obfuscated --garbleargs,generate bindings -obfuscated), and tag struct JSON pada setiap payload runtime-facing (EnvironmentInfo,OSInfo,Screen,Rect,Point,Size,Capabilities) sehingga format wire bertahan dari penggantian nama field exported Garble.
v3.0.0-alpha.95 - 2026-05-20
Section titled “v3.0.0-alpha.95 - 2026-05-20”Ditambahkan
Section titled “Ditambahkan”- Tambahkan missing halaman struktur proyek
Diubah
Section titled “Diubah”- Docs: Ubah menjadi beberapa diagram di halaman arsitektur menggunakan sequence diagram untuk tampilan lebih bersih
- Docs: Sertakan catatan tentang installing D2 sebagai prasyarat untuk menjalankan
Diperbaiki
Section titled “Diperbaiki”- Perbaiki
wails3 generate appimageon the GTK4 default: the bundler now detects the GTK stack from the binary before searching for runtime files, so it pickslibwebkitgtkinjectedbundle.so(underwebkitgtk-6.0/) for GTK4 builds andlibwebkit2gtkinjectedbundle.so(underwebkit2gtk-4.1/) for-tags gtk3builds. The.relr.dynprobe also checkslibgtk-4.so.1so stripping is correctly disabled on modern toolchains regardless of stack. (#5475) - Perbaiki
wails3 generate appimagefailing when invoked with a relative-builddir: the bundler now resolves-binary,-icon,-desktopfile,-builddirand-outputdirto absolute paths up-front so the mid-flows.CDdoesn’t break the AppRun download goroutine or the post-copylddprobe. - Perbaiki
wails3 generate appimagefailing to move yang terakhir AppImage to-outputdirwhen the desktopName=field doesn’t match the binary basename: the bundler now forces linuxdeploy’s appimage plugin (via theOUTPUTenv var) to write the AppImage to<binary>-<arch>.AppImageinstead of the name derived from the desktop file. - Perbaiki
events.Common.ApplicationStarted,Common.ThemeChanged,Common.SystemWillSleepandCommon.SystemDidWakenot firing di Linux after the GTK4 + WebKitGTK 6.0 stack was promoted to the default in alpha.93. The new defaultapplication_linux.gorun()wasn’t callingsetupCommonEvents()(which forwardsLinux.*events to theirCommon.*counterparts) ormonitorPowerEvents(). The DBus power-monitor helper is now shared between the GTK3 and GTK4 build paths viaapplication_linux_dbus.go. (#5474)
v3.0.0-alpha.94 - 2026-05-19
Section titled “v3.0.0-alpha.94 - 2026-05-19”Diperbaiki
Section titled “Diperbaiki”- Perbaiki
events.Common.ApplicationStarted,Common.ThemeChanged,Common.SystemWillSleepandCommon.SystemDidWakenot firing di Linux after the GTK4 + WebKitGTK 6.0 stack was promoted to the default in alpha.93. The new defaultapplication_linux.gorun()wasn’t callingsetupCommonEvents()(which forwardsLinux.*events to theirCommon.*counterparts) ormonitorPowerEvents(). The DBus power-monitor helper is now shared between the GTK3 and GTK4 build paths viaapplication_linux_dbus.go. (#5474)
v3.0.0-alpha.93 - 2026-05-17
Section titled “v3.0.0-alpha.93 - 2026-05-17”Ditambahkan
Section titled “Ditambahkan”- Tambahkan
XDG_SESSION_TYPEtowails3 doctoroutput di Linux oleh @leaanthony
Diperbaiki
Section titled “Diperbaiki”- Perbaiki window menu crash on Wayland caused by appmenu-gtk-module accessing unrealized window (#4769) oleh @leaanthony
- Perbaiki GTK application crash when app name contains invalid characters (spaces, parentheses, etc.) oleh @leaanthony
- Perbaiki “not enough memory” error when initializing drag and drop di Windows (#4701) oleh @overlordtm
- Perbaiki race condition in mainthread callback store using incorrect RLock for map deletion (Linux, macOS, iOS) (#4424) oleh @leaanthony
- Perbaiki variable handling when passing perintah-line arguments to tasks. CLI variables specified as KEY=VALUE pairs are now properly initialized and propagated throughout task execution.
- Perbaiki NSWindowZoomButton conflict di macOS:
MaximiseButtonStateandFullscreenButtonStatenow apply the more restrictive state at both startup and runtime; neither setter can silently override the other (#5319) - Perbaiki a cluster of pre-existing bugs in the legacy GTK3 build path (
-tags gtk3) surfaced by CodeRabbit on #5463: file-association launches no longer skip startup handlers;getThemeis bounds- and type-safe;appNameno longer frees GLib-owned memory;clipboardGetno longer leaks thegchar*returned by GTK;Callocnow uses pointer receivers (andNewCallocreturns*Calloc) so the pool actually tracks allocations;zoomOutuses the reciprocal ofzoomInFactorinstead of a negative multiplier that clamped to 1.0;execJSreuses the preallocated empty world-name instead of leaking aC.CString("")per call; a developmentfmt.Printlnwas removed frommenuItem.setAccelerator. Menyelesaikan #5465. - Perbaiki the same
Callocvalue-receiver leak in the default GTK4 build path (linux_cgo.go): pointer receivers +NewCalloc() *Callocso per-windowc.String(...)allocations are actually tracked and freed.
v3.0.0-alpha.92 - 2026-05-15
Section titled “v3.0.0-alpha.92 - 2026-05-15”Ditambahkan
Section titled “Ditambahkan”- Modifikasi the Taskfiles to allow control of frontend package manager used via
PACKAGE_MANAGERoption - Enrich template data with
{{.Opn}}and{{.Cls}}to make writing Taskfile templates more predictable
Diubah
Section titled “Diubah”- Modifikasi a couple of the existing Taskfiles to make use of
{{.Opn}} and {{.Cls}}
Diperbaiki
Section titled “Diperbaiki”- Perbaiki
concurrent map read and map writeruntime fatal inlinuxSystemTraywhen the tray menu is updated while the panel reads it. - Use
loginstead offmtfor WebView2 error and stack trace output so messages aren’t lost when the app runs without an attached console di Windows.
v3.0.0-alpha.91 - 2026-05-12
Section titled “v3.0.0-alpha.91 - 2026-05-12”Diubah
Section titled “Diubah”- Perbarui sponsors SVG in PR oleh @github-actions[bot]
- BREAKING (macOS): Normalise the macOS coordinate system so
GetScreens,Position, andSetPositionall use the same space — logical points, Y-down, with(0,0)at the top-left of the primary screen. This matches Windows, GTK and the public APIs of Electron and the web. Screens physically above the primary now report negativeBounds.Y(previously positive), andPosition()/SetPosition()values are now in logical points instead ofpoints × primaryScale. Round-trippingPosition()→SetPosition()is preserved; absolute values logged from earlier alpha builds or hand-computed workarounds (e.g. multiplying byprimaryScaleor flipping Y against a screen height) will need to be updated. Menyelesaikan #5117.
Diperbaiki
Section titled “Diperbaiki”- Defensively validate DBus signal name and body length to prevent panics in PR oleh @leaanthony
- Perbaiki memory safety issue in GTK menu handling di Linux in PR oleh @leaanthony
- Detect NVIDIA GPUs and disable DMA-BUF renderer di Linux in PR oleh @leaanthony
- Perbaiki
SetPositioncross-screen Y conversion di macOS: use primary screen height as global reference so windows land at the correct position on monitors that are vertically offset from the primary display in #5117 - Perbaiki git PR template to point to the correct feedback URL in PR oleh @wayneforrest
- Perbaiki a family of Windows systray
SetMenucrashes caused by a brokenDestroyMenusyscall that was passing four arguments instead of one, so every call returned FALSE and freed nothing. Also release HMENU and HBITMAP handles (including those allocated at runtime viaMenuItem.SetBitmap) on menu rebuilds, reset stale checkbox/radio maps inWin32Menu.Update, and drop a redundantUpdate()call insystemtray.updateMenuthat doubled allocations. Long-running systray apps no longer leak GDI/USER objects on each menu rebuild.
v3.0.0-alpha.90 - 2026-05-11
Section titled “v3.0.0-alpha.90 - 2026-05-11”Ditambahkan
Section titled “Ditambahkan”- Tambahkan configurable application name for WKWebView User-Agent di macOS in PR oleh @vinhvoit225
- Adds indirect dependency github.com/coder/websocket to gin-service example in PR oleh @taliesin-ai
- Tambahkan deep equality comparison support to build assets tests in PR oleh @leaanthony
Diubah
Section titled “Diubah”- Consolidate build output into assets directory in PR oleh @taliesin-ai
- Perbarui sponsors SVG in PR oleh @github-actions[bot]
Diperbaiki
Section titled “Diperbaiki”- Use notification object for macOS single-instance message in PR oleh @overlordtm
- Batch Windows callbacks to prevent promise loss under heavy load in PR oleh @taliesin-ai
v3.0.0-alpha.89 - 2026-05-10
Section titled “v3.0.0-alpha.89 - 2026-05-10”Ditambahkan
Section titled “Ditambahkan”- Tambahkan go_test_results job to aggregate Go test results in PR oleh @leaanthony
Diubah
Section titled “Diubah”- Conditionally split large RPC payloads into chunked POST requests in PR oleh @leaanthony
- Upgrade Vite from 5.x.x to 8.0.0 across all frontend templates in PR oleh @leaanthony
- Migrate Vite dev server port configuration to environment variables in PR oleh @leaanthony
- Configure Vite dev server to bind to 127.0.0.1 in all templates in PR oleh @leaanthony
- Perbarui sponsors SVG in PR oleh @github-actions[bot]
Diperbaiki
Section titled “Diperbaiki”- Sanitize Info.plist template stubs during build-assets update in PR oleh @leaanthony
- Perbaiki stale state in macOS menus by applying the menu item mutators (
setMenuItemChecked(),setMenuItemLabel(),setMenuItemDisabled(),setMenuItemHidden(),setMenuItemTooltip()) synchronously on the main thread, eliminating thedispatch_asyncrace that left menus rendering the previous state when reopened quickly (#5002) - Ignore *_test.go files in dev mode to prevent tidak perlu rebuilds in PR oleh @leaanthony
- Prevent Menu.Update() segfault when app is not running in PR oleh @wucm667
- Use lastSizeWParam to gate menubar redraws di Windows in PR oleh @taliesin-ai
v3.0.0-alpha.88 - 2026-05-09
Section titled “v3.0.0-alpha.88 - 2026-05-09”Diubah
Section titled “Diubah”- Switch HiddenOnTaskbar to use WS_EX_TOOLWINDOW in PR oleh @leaanthony
- Reorder dependencies and remove webview2 replace directive in go.mod in PR oleh @atterpac
- Perbarui sponsors SVG in PR oleh @github-actions[bot]
Diperbaiki
Section titled “Diperbaiki”- Hapus generic indirection aliases and consolidate map key types in PR oleh @fbbdev
Dihapus
Section titled “Dihapus”- Delete PR-master workflow, removing dokumentasi, Go tests, and skip tests in PR oleh @leaanthony
v3.0.0-alpha.87 - 2026-05-07
Section titled “v3.0.0-alpha.87 - 2026-05-07”Ditambahkan
Section titled “Ditambahkan”- Tambahkan Korean dokumentasi for Wails v3 in PR oleh @leaanthony
- Tambahkan French dokumentasi for installation and quick start in PR oleh @leaanthony
- Tambahkan Portuguese dokumentasi for quick start, concepts, and community in PR oleh @leaanthony
v3.0.0-alpha.86 - 2026-05-06
Section titled “v3.0.0-alpha.86 - 2026-05-06”Ditambahkan
Section titled “Ditambahkan”- Tambahkan French dokumentasi localization in PR oleh @leaanthony
- Tambahkan German locale to Astro dokumentasi site in PR oleh @leaanthony
Diubah
Section titled “Diubah”- Register all 8 translated locales in Starlight config in PR oleh @leaanthony
- Perbarui various Windows related files for WebView2 in PR oleh @leaanthony
Diperbaiki
Section titled “Diperbaiki”- Split dialog dispatch between GTK3 and GTK4 for Linux in PR oleh @leaanthony
- Ensure dialog callbacks execute on the GTK thread, fixing segfaults in PR oleh @leaanthony
v3.0.0-alpha.85 - 2026-05-05
Section titled “v3.0.0-alpha.85 - 2026-05-05”Ditambahkan
Section titled “Ditambahkan”- Tambahkan PR template URL to the repository in PR oleh @leaanthony
- Tambahkan German dokumentasi for Wails v3 in PR oleh @leaanthony
v3.0.0-alpha.84 - 2026-05-03
Section titled “v3.0.0-alpha.84 - 2026-05-03”Ditambahkan
Section titled “Ditambahkan”- Tambahkan option to disable Escape key exiting fullscreen di macOS in PR oleh @leaanthony
- Tambahkan option to disable Escape key exiting fullscreen di macOS in PR oleh @leaanthony
- Adds Pausa community showcase dokumentasi in PR oleh @yuseferi
Diubah
Section titled “Diubah”- Perbarui sponsors SVG in PR oleh @github-actions[bot]
- Perbarui icon generation perintah to handle unsupported platforms in PR oleh @leaanthony
- Replace boolean fullscreen API with tri-state ButtonState, implement platform bindings in PR oleh @leaanthony
Diperbaiki
Section titled “Diperbaiki”- Guard WebView2 focus operations against nil controller state in PR oleh @leaanthony
- Perbarui GitHub Actions workflow to correctly reference PR base branch in PR oleh @leaanthony
- Ignore *_test.go files in dev mode to prevent tidak perlu rebuilds in PR oleh @leaanthony
- Prevent Menu.Update() segfault when app is not running in PR oleh @wucm667
v3.0.0-alpha.83 - 2026-05-02
Section titled “v3.0.0-alpha.83 - 2026-05-02”Ditambahkan
Section titled “Ditambahkan”- Tambahkan InstallScope flag and build option for machine/user install in PR oleh @symball
- Tambahkan no-op SetScreen method to BrowserWindow to satisfy Window interface in PR oleh @leaanthony
Diperbaiki
Section titled “Diperbaiki”- Detect NVIDIA GPUs and disable DMA-BUF renderer di Linux in PR oleh @leaanthony
- Perbaiki git PR template to point to the correct feedback URL in PR oleh @wayneforrest
- Perbaiki a family of Windows systray
SetMenucrashes caused by a brokenDestroyMenusyscall that was passing four arguments instead of one, so every call returned FALSE and freed nothing. Also release HMENU and HBITMAP handles (including those allocated at runtime viaMenuItem.SetBitmap) on menu rebuilds, reset stale checkbox/radio maps inWin32Menu.Update, and drop a redundantUpdate()call insystemtray.updateMenuthat doubled allocations. Long-running systray apps no longer leak GDI/USER objects on each menu rebuild.
v3.0.0-alpha.82 - 2026-05-01
Section titled “v3.0.0-alpha.82 - 2026-05-01”Diperbaiki
Section titled “Diperbaiki”- Perbaiki desktop file generation to correctly handle the desktop name in PR oleh @leaanthony
v3.0.0-alpha.81 - 2026-04-30
Section titled “v3.0.0-alpha.81 - 2026-04-30”Diubah
Section titled “Diubah”- Adjust nightly release schedule to 15:00 UTC in PR oleh @leaanthony
Diperbaiki
Section titled “Diperbaiki”- Perbaiki halved Screen Bounds, WorkArea, and Size values on Retina Macs - (#5168)
v3.0.0-alpha.80 - 2026-04-29
Section titled “v3.0.0-alpha.80 - 2026-04-29”Diubah
Section titled “Diubah”- Perbarui dokumentasi dependencies and content collection loaders in PR oleh @leaanthony
v3.0.0-alpha.79 - 2026-04-29
Section titled “v3.0.0-alpha.79 - 2026-04-29”Ditambahkan
Section titled “Ditambahkan”- Grant actions: write permission to trigger-release job in PR oleh @leaanthony
Diubah
Section titled “Diubah”- Release task defaults to master branch and updates changelog wording in PR oleh @leaanthony
- Perbarui auto-changelog workflow to use the latest version in PR oleh @leaanthony
- Improve workflow efficiency by adding path filters and removing dead workflows in PR oleh @leaanthony
- Perbarui dokumentasi to reference master branch for example links in PR oleh @leaanthony
- Perbarui dokumentasi and examples for v3 in PR oleh @leaanthony
Diperbaiki
Section titled “Diperbaiki”- Enhance reverse proxy with retry logic and IPv4 forcing for development in PR oleh @AkagiYui
- Rewrite unreleased changelog trigger workflow in PR oleh @leaanthony
Dihapus
Section titled “Dihapus”- Hapus shell test scripts for various testing purposes in PR oleh @leaanthony
- Delete v3-alpha dokumentasi deployment workflow and CNAME record in PR oleh @leaanthony
Ditambahkan
Section titled “Ditambahkan”- Tambahkan Frontend Routing entry to the sidebar navigation in PR oleh @leaanthony
- Tambahkan frontend routing panduan with framework-specific recommendations in PR oleh @leaanthony
- Tambahkan support for modal sheets (macOS)
- Bumped ghw version for better Apple device support oleh @leaanthony (#4977)
- Tambahkan
GetBadgemethod to the dock service - Tambahkan
-tagsflag kewails3 buildperintah for passing custom Go build tags (e.g.,wails3 build -tags gtk4) (#4957) - Tambahkan dokumentasi for automatic enum generation in binding generator, including dedicated Enums page and sidebar navigation (#4972)
- Tambahkan
-tagsflag kewails3 buildperintah for passing custom Go build tags (e.g.,wails3 build -tags gtk4) (#4957) - Tambahkan Web API examples in
v3/examples/web-apis/demonstrating 41 browser APIs including Storage (localStorage, sessionStorage, IndexedDB, Cache API), Network (Fetch, WebSocket, XMLHttpRequest, EventSource, Beacon), Media (Canvas, WebGL, Web Audio, MediaDevices, MediaRecorder, Speech Synthesis), Device (Geolocation, Clipboard, Fullscreen, Device Orientation, Vibration, Gamepad), Performance (Performance API, Mutation Observer, Intersection/Resize Observer), UI (Web Components, Pointer Events, Selection, Dialog, Drag and Drop), and more - Tambahkan WebView API compatibility checker example (
v3/examples/webview-api-check/) that tests 200+ browser APIs across platforms - Tambahkan
internal/libpathpackage for finding native library paths di Linux with parallel search, caching, and support for Flatpak/Snap/Nix - WIP: Add eksperimental WebKitGTK 6.0 / GTK4 support for Linux, available via
-tags gtk4(GTK3/WebKit2GTK 4.1 remains the default) - Note: On tiling window managers (e.g., Hyprland, Sway), Minimize/Maximize operations may not work as expected since the WM controls window geometry
- Tambahkan how to do
One Time Handlersin the docs forListening to Events in JavaScriptoleh @AbdelhadiSeddar - Tambahkan
UseApplicationMenuoption toWebviewWindowOptionsallowing windows di Windows/Linux to inherit the application menu set viaapp.Menu.Set()oleh @leaanthony - Tambahkan support for using
.iconfiles (Apple Icon Composer format) for generating Liquid Glass icons and asset catalogs (macOS) (#4934) oleh @wimaha - Tambahkan eksperimental server mode for headless/web deployments (
-tags server). Enables running Wails apps as HTTP servers without native GUI dependencies. Build withwails3 task build:server. Seeexamples/serverfor details. - Tambahkan
internal/libpathpackage for finding native library paths di Linux with parallel search, caching, and support for Flatpak/Snap/Nix - Tambahkan
CollectionBehavioroption toMacWindowfor controlling window behavior across macOS Spaces and fullscreen (#4756) oleh @leaanthony - Tambahkan unit tests for pkg/application oleh @leaanthony
- Tambahkan custom protocol support to MSIX packaging oleh @leaanthony
- Tambahkan desktop environment detection on linux PR #4797
- Tambahkan
Window.Print()method to JavaScript runtime for triggering print dialog from frontend (#4290) oleh @leaanthony - Tambahkan
XDG_SESSION_TYPEtowails3 doctoroutput di Linux oleh @leaanthony - Tambahkan additional WebKit2 load-change events for Linux:
WindowLoadStarted,WindowLoadRedirected,WindowLoadCommitted,WindowLoadFinished(#3896) oleh @leaanthony - Tambahkan
XDG_SESSION_TYPEtowails3 doctoroutput di Linux oleh @leaanthony - Generate
.desktopfile during Linux build, not just packaging (#4575) - Tambahkan Linux runtime dependencies dokumentasi with distro-specific package names and nfpm packaging examples (#4339) oleh @leaanthony
- Tambahkan NVIDIA driver version info to
wails3 doctoroutput di Linux oleh @leaanthony - Tambahkan origin to raw message handler oleh @APshenkin in PR
- Tambahkan universal link support for macOS oleh @APshenkin in PR
- Refactor binding transport layer oleh @APshenkin in PR
- Tambahkan aria-label identifiers to the helloworld templates so that the example app can be easily tested by Appium test clients oleh @chinenual in PR
- Tambahkan origin to raw message handler oleh @APshenkin in PR
- Tambahkan universal link support for macOS oleh @APshenkin in PR
- Refactor binding transport layer oleh @APshenkin in PR
- Typed Events oleh @fbbdev and @ianvs in #4633
- Tambahkan
systray-clockexample showing a headless tray with live tooltip updates (#4653). - Tambahkan NSIS Protocol template for Windows oleh @Tolfx in #4510
- Tambahkan tests for build-assets oleh @Tolfx in #4510
- macOS: Shows native window controls in the menu bar in #4588 oleh @nidib
- Tambahkan macOS Dock service to hide/show app icon in the dock @popaprozac in PR
- Tambahkan macOS Dock service to hide/show app icon in the dock @popaprozac in PR
- Tambahkan native Liquid Glass effect support for macOS with NSGlassEffectView (macOS 15.0+) and NSVisualEffectView fallback, including comprehensive material customization options oleh @leaanthony in #4534
- Browser URL Sanitisation oleh @leaanthony in #4500. Based on #4484 oleh @APShenkin.
- Tambahkan Content Protection di Windows/Mac by @leaanthony based on the original work of @Taiterbase in this PR
- Tambahkan support for passing CLI variables to Task commands through
wails3 buildandwails3 packagealiases (#4422) oleh @leaanthony in PR - Support for dropzones with event sourcing dropped element data @atterpac in #4318
- Tambahkan
AdditionalLaunchArgstoWindowsWindowoptions to allow for additional perintah line arguments to be passed to the WebView2 browser. in PR - Tambahkan Run go mod tidy automatically after wails init @triadmoko in PR
- Windows Snapassist feature oleh @leaanthony in PR
- Tambahkan
AdditionalLaunchArgstoWindowsWindowoptions to allow for additional perintah line arguments to be passed to the WebView2 browser. in PR - Tambahkan Run go mod tidy automatically after wails init @triadmoko in PR
- Windows Snapassist feature oleh @leaanthony in PR
- Tambahkan Windows
getAccentColorimplementation by @almas-x in PR - Tambahkan Windows
getAccentColorimplementation by @almas-x in PR - Windows dark theme menus + menubar. By @leaanthony in a29b4f0861b1d0a700e9eb213c6f1076ec40efd5
- Rename built-in services for clearer JS/TS bindings oleh @popaprozac in PR
app.Env.GetAccentColorto get the accent color of a user’s system. Works on MacOS. by @etesam913- Tambahkan
window.ToggleFrameless()api by @atterpac in #4137 - Tambahkan distribution-specific build dependencies for Linux oleh @leaanthony in PR
- Tambahkan bindings panduan oleh @atterpac in PR
- Organized Testing Infrastructure: Moved Docker test files to dedicated
test/docker/directory with optimized images and enhanced build reliability by @leaanthony in #4359 - Improved Resource Management Patterns: Added proper event handler cleanup and context-aware goroutine management in examples by @leaanthony in #4359
- Support aarch64 AppImage builds by @AkshayKalose in #3981
- Tambahkan diagnostics bagian ke
wails doctorby @leaanthony - Tambahkan window to context when calling a service method by @leaanthony
- Tambahkan
window-callexample to demonstrate how to know which window is calling a service by @leaanthony - New Menu panduan by @leaanthony
- Better panic handling by @leaanthony
- New Menu panduan by @leaanthony
- Tambahkan doc comments for Service API by @fbbdev in #4024
- Tambahkan function
application.NewServiceWithOptionsto initialise services dengan tambahan configuration by @leaanthony in #4024 - Improved menu control by @FalcoG and @leaanthony in #4031
- More dokumentasi by @leaanthony
- Support cancellation of events in standard event listeners by @leaanthony
- Systray
Hide,ShowandDestroysupport by @leaanthony - Systray
SetTooltipsupport by @leaanthony. Original idea by @lujihong - Report package path in binding generator warnings about unsupported types by @fbbdev in #4045
- Tambahkan binding generator support for generic aliases by @fbbdev in #4045
- Tambahkan binding generator support for
omitzeroJSON flag by @fbbdev in #4045 - Tambahkan
//wails:ignoredirective to prevent binding generation for chosen service methods by @fbbdev in #4045 - Tambahkan
//wails:internaldirective on services and models to allow for types that are exported in Go but not in JS/TS by @fbbdev in #4045 - Tambahkan binding generator support for constants of alias type to allow for weakly typed enums by @fbbdev in #4045
- Tambahkan binding generator tests for Go 1.24 features by @fbbdev in #4068
- Tambahkan support for macOS 15 “Sequoia” to
OSInfo.Brandingfor improved OS version detection in #4065 - Tambahkan
PostShutdownhook for running custom code after the shutdown process completes by @fbbdev in #4066 - Tambahkan
FatalErrorstruct to support detection of fatal errors in custom error handlers by @fbbdev in #4066 - Standardise and document service startup and shutdown order by @fbbdev in #4066
- Tambahkan test harness for application startup/shutdown sequence and service startup/shutdown tests by @fbbdev in #4066
- Tambahkan
RegisterServicemethod for registering services after the application has been created by @fbbdev in #4066 - Tambahkan
MarshalErrorfield in application and service options for custom error handling in binding calls by @fbbdev in #4066 - Tambahkan cancellable promise wrapper that propagates cancellation requests through promise chains by @fbbdev in #4100
- Tambahkan the ability to tie binding call cancellation to an
AbortSignalby @fbbdev in #4100 - Support
data-wml-*attributes for WML alongside the usualwml-*attributes by @leaanthony - Tambahkan
Configuremethod on all services for late configuration/dynamic reconfiguration by @fbbdev in #4067 fileserverservice sends a 503 Service Unavailable response when unconfigured by @fbbdev in #4067kvstoreservice provides an in-memory key-value store by default when unconfigured by @fbbdev in #4067- Tambahkan
Loadmethod onkvstoreservice to reload data from file after config changes by @fbbdev in #4067 - Tambahkan
Clearmethod onkvstoreservice to delete all keys by @fbbdev in #4067 - Tambahkan type
Levelinlogservice to provide JS-side log-level constants by @fbbdev in #4067 - Tambahkan
Logmethod onlogservice to specify log-level dynamically by @fbbdev in #4067 sqliteservice provides an in-memory DB by default when unconfigured by @fbbdev in #4067- Tambahkan method
Closeonsqliteservice to close the DB manually by @fbbdev in #4067 - Tambahkan cancellation support for query methods on
sqliteservice by @fbbdev in #4067 - Tambahkan prepared statement support to
sqliteservice with JS bindings by @fbbdev in #4067 - Gin support by Lea Anthony in PR based on the original work of @AnalogJ in this PR
- Perbaiki auto save and password auto save always enabled by @oSethoum in #4134
- Tambahkan
SetMenu()on window to allow for setting a menu on a window by @leaanthony - Tambahkan Notification support by @popaprozac in #4098
- Add File Association support for mac by @wimaha in #4177
- Tambahkan
wails3 tool versionfor semantic version bumping by @leaanthony - Tambahkan badging support for macOS dan Windows by @popaprozac in #
- Tambahkan support for registered/strictly-typed events by @fbbdev and @IanVS in #4161
- Tambahkan the ability to register hooks for custom events by @fbbdev and @IanVS in #4161
app.OpenFileManager(path string, selectFile bool)to open the system file manager to the pathpathwith optional highlighting viaselectFileby @Krzysztofz01 @rcalixte- New
-gitflag forwails3 initperintah by @leaanthony - New
wails3 generate webview2bootstrapperperintah by @leaanthony - Tambahkan
init()method in runtime to allow manual initialisation of the runtime by @leaanthony - Tambahkan
WindowDidMoveDebounceMSoption to Window’s WindowOptions by @leaanthony - Tambahkan Single Instance feature by @leaanthony. Based on the v2 PR oleh @APshenkin.
wails3 generate templateperintah by @leaanthonywails3 releasenotesperintah by @leaanthonywails3 update cliperintah by @leaanthony-cleanoption forwails3 generate bindingsperintah by @leaanthony- Allow for aarch64 (arm64) AppImage Linux builds by @AkshayKalose in #3981
- Tambahkan hyperlink for sponsor oleh @ansxuman in #3958
- Support of linux packaging of deb,rpm, and arch linux packager builds by
- Tambahkan Support for darwin universal builds and packages by
- Events dokumentasi to the website by
- Templates for sveltekit and sveltekit-ts that are set for non-SSR development
- Perbarui build assets using new
wails3 update build-assetsperintah by - Example to test the HTML Drag and Drop API by
- File Association support by leaanthony in
- New
wails3 generate runtimeperintah by - New
InitialPositionoption to specify if the window should be centered or - Tambahkan
Path&Pathsmethods toapplicationpackage by - Tambahkan
GeneralAutofillEnabledandPasswordAutosaveEnabledWindows options - Tambahkan the ability to retrieve the window calling a service method by
- Tambahkan
EnabledFeaturesandDisabledFeaturesoptions for Webview2 by - ⊞ New DIP system for Enhanced High DPI Monitor Support by
- ⊞ Window class name option by windom in
- Services have been expanded to provide plugin functionality. By
- 🐧 WindowDidMove / WindowDidResize events in
- ⊞ WindowDidResize event in
- add Event ApplicationShouldHandleReopen to be able to handle dock
- add getPrimaryScreen/getScreens to impl oleh @tmclane in
- add option for showing the toolbar in fullscreen mode di macOS by
- 🐧 add onKeyPress logic to convert linux keypress into an accelerator
- 🐧 add task
run:linuxby - Export
SetIconmethod by @almas-x in - Improve
OnShutdownby @almas-x in - Restore
ToggleMaximisemethod inWindowinterface by - Tambahkan more information to
Environment(). By @leaanthony in - Expose the
WebviewWindow.IsFocusedmethod on theWindowinterface by - Support multiple space-separated trigger events in the WML system by
- Tambahkan ESM exports from the bundled JS runtime script by
- Tambahkan binding generator flag for using the bundled JS runtime script instead of
- Implement
setIconon linux by @abichinger - Tambahkan flag
-portto dev perintah and support environment variable - Tambahkan tests for bound method calls by
- ⊞ add
SetIgnoreMouseEventsfor already created window by - Add ability to set a window’s stacking level (order) by
Diperbaiki
Section titled “Diperbaiki”- Perbaiki halved
Screen.Bounds,WorkArea, andSizeon Retina Macs by converting NSScreen point values to device pixels in thePhysical*fields, and populate top-levelScreen.X/Yso multi-monitor touching detection and work-area placement are correct in PR oleh @wayneforrest - Perbaiki data race in ScreenManager that causes WebKit DisplayLink deadlock on display configuration change (e.g. external monitor hot-plug during sleep/wake)
- Directly sets CFBundleIconName to appicon when Assets.car exists in PR oleh @symball
- Perbaiki
wails3 doctorreporting incorrect WebKitGTK packages on Fedora, openSUSE, Arch, and NixOS — 4.0 fallback entries have been removed since v3 requires the 4.1 API at compile time (#5071) - Perbaiki openSUSE webkit2gtk doctor package name (
webkit2gtk4_1-devel→webkit2gtk3-devel, the correct openSUSE package name) (#5071) - Perbaiki
Unexpected token '<'error when/wails/custom.jsis missing in desktop dev mode. Added explicit 404 handler for/wails/custom.jsand case-insensitiveContent-Typevalidation inloadOptionalScriptto prevent HTML SPA fallbacks from being injected as JavaScript. (#5068) - Perbaiki system tray menu highlight state di macOS - icon now shows selected state when menu is open (#4910)
- Perbaiki system tray attached window appearing behind other windows di macOS - now uses proper popup window level (#4910)
- Perbaiki incorrect
@wailsio/runtimeimport examples across dokumentasi (#4989) - Perbaiki frameless window cannot be minimized on darwin (#4294)
- Perbaiki 20-30 minute hangs during
wails3 buildandwails3 devby excludingnode_modules/from go-task’s up-to-date checking. Previously, thesources: "**/*"glob caused go-task to enumerate and checksum every file innode_modules/(50-100k+ files with heavy dependencies like MUI), especially slow di Windows/NTFS (#4939) - Perbaiki GTK4 build failure caused by C
Screentypedef colliding with X11 Xlib.h (#4957) - Perbaiki dock badge methods consistency di macOS
- Perbaiki
InvisibleTitleBarHeightbeing applied to all macOS windows instead of only frameless or transparent title bar windows (#4960) - Perbaiki window shaking/jitter when resizing from top corners with
InvisibleTitleBarHeightenabled, by skipping drag initiation near window edges (#4960) - Perbaiki generation of mapped types with enum keys in JS/TS bindings (#4437) oleh @fbbdev
- Perbaiki file drag-and-drop di Windows not working at non-100% display scaling
- Perbaiki HTML5 internal drag-and-drop being broken when file drop was enabled di Windows
- Perbaiki file drop coordinates being in wrong pixel space di Windows (physical vs CSS pixels)
- Perbaiki file drag-and-drop di Linux not working reliably with hover effects
- Perbaiki HTML5 internal drag-and-drop being broken when file drop was enabled di Linux
- Perbaiki window show/hide di Linux/GTK4 sometimes memulihkan to minimized state by using
gtk_window_present()(#4957) - Perbaiki window position get/set di Linux/GTK4 always returning 0,0 by adding X11-conditional support via
XTranslateCoordinates/XMoveWindow(#4957) - Perbaiki max window size not being enforced di Linux/GTK4 by adding signal-based size clamping to replace removed
gtk_window_set_geometry_hints(#4957) - Perbaiki DPI scaling di Linux/GTK4 by implementing proper PhysicalBounds calculation and fractional scaling support via
gdk_monitor_get_scale(GTK 4.14+) - Perbaiki menu items duplicating when creating new windows di Linux/GTK4
- Perbaiki generation of mapped types with enum keys in JS/TS bindings (#4437) oleh @fbbdev
- Perbaiki file drag-and-drop di Windows not working at non-100% display scaling
- Perbaiki HTML5 internal drag-and-drop being broken when file drop was enabled di Windows
- Perbaiki file drop coordinates being in wrong pixel space di Windows (physical vs CSS pixels)
- Perbaiki file drag-and-drop di Linux not working reliably with hover effects
- Perbaiki HTML5 internal drag-and-drop being broken when file drop was enabled di Linux
- Perbaiki DPI scaling di Linux/GTK4 by implementing proper PhysicalBounds calculation and fractional scaling support via
gdk_monitor_get_scale(GTK 4.14+) - Perbaiki menu items duplicating when creating new windows di Linux/GTK4
- Perbaiki generation of mapped types with enum keys in JS/TS bindings (#4437) oleh @fbbdev
- Perbaiki “ghost windows” issue di macOS caused by not accessing AppKit APIs from the Main Thread in App.Window.Current() (#4947) oleh @wimaha
- Perbaiki HTML
<input type="file">not working di macOS by implementing WKUIDelegate runOpenPanelWithParameters (#4862) - Perbaiki native file drag-and-drop not working when using
@wailsio/runtimenpm module di macOS/Linux (#4953) oleh @leaanthony - Perbaiki binding generation for cross-package type aliases (#4578) oleh @fbbdev
- Perbaiki OpenFileDialog crash di Linux due to GTK thread safety violation (#3683) oleh @ddmoney420
- Perbaiki SIGSEGV crash when calling
Focus()on a hidden or destroyed window (#4890) oleh @ddmoney420 - Perbaiki potential panic when setting empty icon or bitmap di Linux (#4923) oleh @ddmoney420
- Perbaiki ErrorDialog crash when called from service binding di macOS (#3631) oleh @leaanthony
- Make menus to be displayed di Windows OS in
v3\examples\dialogsoleh @ndianabasi - Perbaiki race condition causing TypeError during page reload (#4872) oleh @ddmoney420
- Perbaiki incorrect output from binding generator tests by removing global state in the
Collector.IsVoidAlias()method (#4941) oleh @fbbdev - Perbaiki
<input type="file">file picker not working di macOS (#4862) oleh @leaanthony - Perbaiki
Position()andSetPosition()using inconsistent coordinate systems di macOS, causing window position drift when saving/memulihkan state (#4816) oleh @leaanthony - Perbaiki SetProcessDpiAwarenessContext “Access is denied” error when DPI awareness is already set via application manifest (#4803)
- Perbarui the docs page for keyboard shortcuts and corrects the type of the callback parameter for
KeyBinding.Addoleh @ndianabasi - Perbaiki dokumentasi regarding generating custom binding, must use
-d Stringinstead of-o String - Perbaiki menu not clearing children on
menu.Update() - Perbaiki outdated Manager API references in dokumentasi (31 files updated to use new pattern like
app.Window.New(),app.Event.Emit(), etc.) oleh @leaanthony - Perbaiki Linux crash on panic in JS-bound Go methods due to WebKit overriding signal handlers (#3965) oleh @leaanthony
- Perbaiki SaveFileDialog.SetFilename() having no effect di Linux (#4841) oleh @samstanier
- Perbaiki drop coordinates showing as undefined in drag-n-drop example
- Perbaiki macOS app bundle creation failing when APP_NAME contains spaces (brace expansion issue)
- Perbaiki index out of bounds panic di Windows when calling service methods (revert goccy/go-json)
- Perbaiki file drag-and-drop di Windows not working at non-100% display scaling
- Perbaiki HTML5 internal drag-and-drop being broken when file drop was enabled di Windows
- Perbaiki file drop coordinates being in wrong pixel space di Windows (physical vs CSS pixels)
- Perbaiki file drag-and-drop di Linux not working reliably with hover effects
- Perbaiki HTML5 internal drag-and-drop being broken when file drop was enabled di Linux
- Perbarui all commands in Taskfile.yml files for all operating systems to accommodate spaces in variables such as
APP_NAMEoleh @ndianabasi - Perbaiki perintah argument error when executing ‘build:universal:lipo:go’ task di Linux oleh @wux1an
- Perbaiki Docker error “undefined symbol: ___ubsan_handle_xxxxxxx” when running ‘wails3 build GOOS=darwin GOARCH=arm64’ di Linux oleh @wux1an
- Consolidate custom protocol dokumentasi and add Universal Links sections oleh @leaanthony
- Perbaiki Windows systray menu crash when clicking icon repeatedly by adding guard against concurrent TrackPopupMenuEx calls (#4151) oleh @leaanthony
- Prevent app crashing when calling systray.Run() before app.Run() oleh @leaanthony
- Perbaiki crash di macOS when toggling window visibility via Hide()/Show() with ApplicationShouldTerminateAfterLastWindowClosed enabled (#4389) oleh @leaanthony
- Perbaiki memory leak in context menus di macOS dan Windows when repeatedly opening menus (#4012) oleh @leaanthony
- Perbaiki context menu native resources not being reused di macOS, causing fresh menu creation on each display (#4012) oleh @leaanthony
- Perbaiki macOS dock icon click not showing hidden windows when app started with
Hidden: true(#4583) oleh @leaanthony - Perbaiki macOS print dialog not opening due to incorrect window pointer type in CGO call (#4290) oleh @leaanthony
- Perbaiki window menu crash on Wayland caused by appmenu-gtk-module accessing unrealized window (#4769) oleh @leaanthony
- Perbaiki GTK application crash when app name contains invalid characters (spaces, parentheses, etc.) oleh @leaanthony
- Perbaiki “not enough memory” error when initializing drag and drop di Windows (#4701) oleh @overlordtm
- Perbaiki file explorer opening wrong directory di Linux due to incorrect URI escaping (#4397) oleh @leaanthony
- Perbaiki AppImage build failure on modern Linux distributions (Arch, Fedora 39+, Ubuntu 24.04+) by auto-detecting
.relr.dynELF sections and disabling stripping (#4642) oleh @leaanthony - Perbaiki
wails doctorfalsely reporting webkit packages as installed on Fedora/DNF-based systems (#4457) oleh @leaanthony - Perbaiki default
config.ymlwould runwails3 devwith a production build oleh @mbaklor - Perbaiki iOS service stubs causing build failures due to non-existent package import oleh @leaanthony
- Perbaiki structured logging in debug/info methods causing “no formatting directives” errors oleh @leaanthony
- Hapus temporary debug print statements accidentally included from mobile platform merge oleh @leaanthony
- Perbaiki WebKitGTK crash on Wayland with NVIDIA GPUs (Error 71 Protocol error) by auto-disabling DMA-BUF renderer oleh @leaanthony
- Resolve alpha value being ignored in
application.WebviewWindowOptions.BackgroundColourdi Linux (#4722, @BradHacker) - Perbaiki Windows systray icon not defaulting to application icon when no custom icon is provided (#4704)
- Track
HICONownership so only user-created handles are destroyed, preventing Explorer recycling crashes (#4653). - Release the Windows system-theme listener and retained tray icons during destroy to stop leaking goroutines and device contexts (#4653).
- Truncate tray tooltips at 127 UTF-16 units to avoid corrupting surrogate pairs and multi-byte glyphs (#4653).
- Perbaiki Windows package task failure (#4667)
- Perbaiki Linux appimage appicon variable in Linux taskfile PR #4644
- Perbaiki Windows build error caused by go-webview2 v1.0.22 signature change (#4513, #4645)
- Perbaiki Linux appimage appicon variable in Linux taskfile PR #4644
- Perbaiki linux desktop.tmpl protocol range, by removing
<.Info.Protocol>to<.Protocol>oleh @Tolfx in #4510 - Perbaiki redefinition error for liquid glass demo in #4542 oleh @Etesam913
- Perbaiki systray menu updates di Linux #4604 by @JackDoan
- Perbaiki the white window appearing di Windows when creating a hidden window oleh @leaanthony in #4612
- Perbaiki notifications package import path in dokumentasi oleh @rxliuli in #4617
- Perbaiki drag-and-drop not working when using npm package @wailsio/runtime (#4489) oleh @leaanthony in #4616
- Windows: Flicker of window at start and hidden windows being shown incorrectly in PR oleh @leaanthony.
- Perbaiki Wayland window size maximising issues (https://github.com/wailsapp/wails/issues/4429) by @samstanier
- Perbaiki Wayland window size maximising issues (https://github.com/wailsapp/wails/issues/4429) by @samstanier
- Perbaiki redefinition error for liquid glass demo in #4542 oleh @Etesam913
- Perbaiki issue where AssetServer can crash on MacOS in #4576 oleh @jghiloni
- Perbaiki compilation issue when building with NextJs. Fixed in #4585 oleh @rev42
- Perbaiki pipelines for nightly release in #4597 oleh @riadafridishibly
- Perbaiki redefinition error for liquid glass demo in #4542 oleh @Etesam913
- Perbaiki issue where AssetServer can crash on MacOS in #4576 oleh @jghiloni
- Perbaiki compilation issue when building with NextJs. Fixed in #4585 oleh @rev42
- Perbaiki pipelines for nightly release in #4597 oleh @riadafridishibly
- Perbaiki redefinition error for liquid glass demo in #4542 oleh @Etesam913
- Perbaiki SetBackgroundColour di Windows oleh @PPTGamer in PR
- Perbarui docs to reflect changes from Manager API Refactoring oleh @yulesxoxo in PR #4476
- Perbaiki Linux .desktop file appicon variable in Linux taskfile PR #4477
- Perbarui docs to reflect changes from Manager API Refactoring oleh @yulesxoxo in PR #4476
- Perbaiki Windows nil pointer dereference bug reported in #4456 oleh @leaanthony in #4460
- Tambahkan support for
allowsBackForwardNavigationGesturesin macOS WKWebView to enable two-finger swipe navigation gestures (#1857) - Fixes issue where onClick didn’t work for menu items initially set as disabled oleh @leaanthony in PR #4469. Thanks to @IanVS for the initial investigation.
- Perbaiki Vite server not being cleaned up when build fails (#4403)
- Perbaiki panic when closing or cancelling a
SaveFileDialogon windows. Fixed in PR oleh @hkhere - Perbaiki HTML level drag and drop di Windows by @mbaklor in #4259
- Tambahkan support for
allowsBackForwardNavigationGesturesin macOS WKWebView to enable two-finger swipe navigation gestures (#1857) - Fixes issue where onClick didn’t work for menu items initially set as disabled oleh @leaanthony in PR #4469. Thanks to @IanVS for the initial investigation.
- Perbaiki Vite server not being cleaned up when build fails (#4403)
- Perbaiki notification parsing di Windows @popaprozac in PR
- Perbaiki doctor perintah to check for Windows SDK dependencies by @kodumulo in #4390
- Perbaiki nil pointer dereference in processURLRequest for Mac by @etesam913 in #4366
- Perbaiki a linux bug preventing filtered dialogs by @bh90210 in #4287
- Perbaiki Windows+Linux Edit Menu issues by @leaanthony in #3f78a3a
- Perbarui the minimum system version in macOS .plist files from 10.13.0 to 10.15.0 by @AkshayKalose in #3981
- Window ID skip issue by @leaanthony
- Perbaiki nil menu issue when calling RegisterContextMenu by @leaanthony
- Perbaiki dependency cycles in binding generator output by @fbbdev in #4001
- Perbaiki use-before-define errors in binding generator output by @fbbdev in #4001
- Pass build flags to binding generator by @fbbdev in #4023
- Ubah paths in windows Taskfile to forward slashes to ensure it works on non-Windows platforms by @leaanthony
- Mac + Mac JS events now fixed by @leaanthony
- Perbaiki event deadlock for macOS by @leaanthony
- Perbaiki a
Parameter incorrecterror in Window initialisation di Windows when HTML provided but no JS by @leaanthony - Perbaiki size of response prefix used for content type sniffing in asset server by @fbbdev in #4049
- Perbaiki handling of non-404 responses on root index path in asset server by @fbbdev in #4049
- Perbaiki undefined behaviour in binding generator when testing properties of generic types by @fbbdev in #4045
- Perbaiki binding generator output for models when underlying type has not the same properties as named wrapper by @fbbdev in #4045
- Perbaiki binding generator output for map key types and preprocessing by @fbbdev in #4045
- Perbaiki binding generator output for structs that implement marshaler interfaces by @fbbdev in #4045
- Perbaiki detection of type cycles involving generic types in binding generator by @fbbdev in #4045
- Perbaiki invalid references to unexported models in binding generator output by @fbbdev in #4045
- Moved injected code to the end of service files by @fbbdev in #4045
- Perbaiki handling of errors from file close operations in binding generator by @fbbdev in #4045
- Suppressed warnings for services that define lifecycle or http methods but no other bound methods by @fbbdev in #4045
- Perbaiki non-React templates failing to display Hello World footer when using light system colour scheme by @marcus-crane in #4056
- Perbaiki hidden menu items di macOS by @leaanthony
- Perbaiki handling and formatting of errors in message processors by @fbbdev in #4066
- Fixed skipped service shutdown when quitting application by @fbbdev in #4066
- Ensure menu updates occur on the main thread by @leaanthony
- The dragging and resizing mechanism is now more robust and matches expected platform behaviour more closely by @fbbdev in #4100
- Perbaiki #4097 Webpack/angular discards runtime init code by @fbbdev in #4100
- Perbaiki initially-hidden menu items by @IanVS in #4116
- Perbaiki assetFileServer not serving
.htmlfiles when non-extension request when[request]doesn’t exist but[request].htmldoes - Perbaiki icon generation paths by @robin-samuel in #4125
- Perbaiki
fullscreen,unfullscreen,unminimiseandunmaximiseevents not being emitted by @oSethoum in #4130 - Perbaiki NSIS Error because of incorrect prefix on default version in config by @robin-samuel in #4126
- Perbaiki Dialogs runtime function returning escaped paths di Windows by TheGB0077 in #4188
- Perbaiki Webview2 detection path in HKCU by @leaanthony.
- Perbaiki input issue with macOS by @leaanthony.
- Perbaiki Windows icon generation task file name by @yulesxoxo in #4219.
- Perbaiki transparency issue for frameless windows by @leaanthony based on work oleh @kron.
- Perbaiki focus calls when window is disabled or minimised by @leaanthony based on work oleh @kron.
- Perbaiki system trays not showing after taskbar restarts by @leaanthony based on work oleh @kron.
- Perbaiki fallbackResponseWriter not implementing Flush() in #4245
- Perbaiki fallbackResponseWriter not implementing Flush() by [@superDingda] in #4236
- Perbaiki macOS window close with pending async Go-bound function call crashes by @joshhardy in #4354
- Perbaiki Windows Efficiency mode startup race condition by @leaanthony
- Perbaiki Windows icon handle cleanup by @leaanthony.
- Perbaiki
OpenFileManagerdi Windows by @PPTGamer in #4375. - Perbaiki min/max width options for linux oleh @atterpac in #3979
- Typescript templates types definitions via npm version bump oleh @atterpac in #3966
- Perbaiki Sveltekit template CSS referance oleh @atterpac in #3945
- Ensure key callbacks in window run() are called on the main thread by @leaanthony
- Perbaiki dialog directory chooser examples by @leaanthony
- Created new Chinese error page when index.html is missing by @leaanthony
- Ensure
windowDidBecomeKeycallback is running on main thread by @leaanthony - Support fullscreen for frameless windows by @leaanthony
- Improved window destroying logic by @leaanthony
- Fix window position logic when attached to system trays by @leaanthony
- Support fullscreen for frameless windows by @leaanthony
- Perbaiki event handling by @leaanthony
- Perbaiki window shutdown logic by @leaanthony
- Common taskfile now defaults to generating Typescript bindings for Typescript templates by @leaanthony
- Perbaiki Close application on WM_CLOSE message when no windows are open/systray only by @mmalcek in #3990
- Perbaiki garble build oleh @5aaee9 in #3192
- Perbaiki windows nsis builds by @leaanthony
- Perbaiki deadlock in Linux dialog for multiple selections caused by unclosed
- Perbaiki cross-platform cleanup for .syso files during Windows build by
- Perbaiki amd64 appimage compile oleh @atterpac in
- Perbaiki build assets update oleh @ansxuman in
- Perbaiki Linux systray
OnClickandOnRightClickimplementation oleh @atterpac - Perbaiki
AlwaysOnTopnot working on Mac by - Fixed
application.NewEditMenuincluding a duplicate - 🐧 Fixed aarch64 compilation
- ⊞ Fixed radio group menu items by
- Perbaiki error on building runnable .app on MacOS when ‘name’ and ‘outputfilename’
- Perbaiki bug with usage of customEventProcessor in drag-n-drop example by
- 🐧 Fixed linux compile error introduced by IgnoreMouseEvents addition by
- ⊞ Fixed syso icon file generation bug by
- 🐧 Fix to run natively in wayland incorporated from
- Do not bind internal service methods in
- ⊞ Fixed system tray startup panic in
- Do not bind internal service methods in
- ⊞ Fixed system tray startup panic in
- Major menu item refactor and event handling. Mainly improves macOS for now. By
- Perbaiki tests after plugins and event refactor in
- ⊞ Fixed
Failed to unregister class Chrome_WidgetWin_0warning. By - Module issues
- Perbaiki resize event messaging by atterpac in
- 🐧Fixed theme handling error on NixOS by
- Perbaiki cross volume project install for windows by
- Perbaiki react template css to show footer by
- Perbaiki zombie processes when working in devmode by updating to latest refresh
- Perbaiki appimage webkit file sourcing by Atterpac
- Perbaiki Doctor apt package verify by Atterpac in
- Perbaiki application frozen when quit (Darwin) oleh @5aaee9 in
- Perbaiki background colours of examples di Windows by
- Perbaiki default context menus by mmghv in
- Perbaiki hex values for arrow keys on Darwin by
- Set drag-n-drop for windows to working. Added by
- Perbaiki bug for linux in doctor in the event user doesn’t have proper drivers
- Perbaiki dpi scaling on start up (windows). Changed by @almas-x in
- Perbaiki replace line in
go.modto use relative paths. Fixes Windows paths with - Perbaiki MacOS systray click handling when no attached window by
- Perbaiki failing Windows build due to unknown option by
- Perbaiki crash on windows left clicking the systray icon when not having an
- Perbaiki wrong baseURL when open window twice oleh @5aaee9 in PR
- Perbaiki ordering of if branches in
WebviewWindow.Restoremethod by - Correctly compute
startURLacross multipleGetStartURLinvocations when - Perbaiki the JS type of the
Screenstruct to match its Go counterpart by - Perbaiki the
WML.Reloadmethod to ensure proper cleanup of registered event - Perbaiki custom context menu closing immediately on linux by
- Perbaiki the output path and extension of model files produced by the binding
- Perbaiki the import paths of model files in JS code produced by the binding
- Perbaiki drag-n-drop on some linux distros by
- Perbaiki missing task for macOS when using
wails3 task devby - Perbaiki registering events causing a nil map assignment by
- Perbaiki unmarshaling of bound method parameters by
- Perbaiki handling of multiple return values from bound methods by
- Perbaiki doctor detection of npm that is not installed with system package manager
- Perbaiki missing MicrosoftEdgeWebview2Setup.exe. Thanks to
- Perbaiki random crash on linux due to window ID handling oleh @leaanthony. Based on
- Perbaiki systemTray.setIcon crashing di Linux by
- Perbaiki Ensure Window Frame is Applied on First Call in
setFramelessFunction on
Diubah
Section titled “Diubah”- BREAKING: Map keys in generated JS/TS bindings are now marked optional to accurately reflect Go map semantics. Map value access in Typescript now returns
T | undefinedinstead ofT, requiring null checks or assertions (#4943) by@fbbdev - Ubah the use of
EventintoEventsaccording to changes in@wailsio/runtimeand appropriate function calls in the docs inFeatures/Events/Event Systemoleh @AbdelhadiSeddar - Move
EnabledFeatures,DisabledFeatures, andAdditionalBrowserArgsfrom per-window options to application-levelOptions.Windows(#4559) oleh @leaanthony - Perbarui the README for the
Drag N Dropexample and highlights thatInternal Drag and Dropis demonstrated with the example @ndianabasi - Replace various debug logs from Info to Debug (oleh @mbaklor)
- BREAKING: Rename
EnableDragAndDroptoEnableFileDropin window options - BREAKING: Rename
DropZoneDetailstoDropTargetDetailsin event context - BREAKING: Rename
DropZoneDetails()method toDropTargetDetails()onWindowEventContext - BREAKING: Remove
WindowDropZoneFilesDroppedevent, useWindowFilesDroppedinstead - BREAKING: Change HTML attribute from
data-wails-dropzonetodata-file-drop-target - BREAKING: Change CSS hover class from
wails-dropzone-hovertofile-drop-target-active - BREAKING: Remove
DragEffect,OnEnterEffect,OnOverEffectoptions from Windows (were part of removed IDropTarget) - Switch to goccy/go-json for all runtime JSON processing (method bindings, events, webview requests, notifications, kvstore), improving performance by 21-63% and reducing memory allocations by 40-60%
- Optimize BoundMethod struct layout and cache isVariadic flag ke reduce per-call overhead
- Use stack-allocated argument buffer for methods with
<=8arguments to avoid heap allocations - Optimize result collection in method calls to avoid slice allocation for single return values
- Use sync.Map for MIME type cache to improve concurrent performance
- Use buffer pool for HTTP transport request body reading
- Lazily allocate CloseNotify channel in content type sniffer to reduce per-request allocations
- Hapus debug CSS logging from asset server
- Expand MIME type extension map to cover 50+ common web formats (fonts, audio, video, etc.)
- Perbarui the dokumentasi for Window
X/Yoptions @ruhuang2001 - Perbarui the
Frontend Runtimedokumentasi by adding more options for generating frontend bindings oleh @ndianabasi - Perbarui the dokumentasi page for Wails v3 Asset Server oleh @ndianabasi
- BREAKING: Remove package-level dialog functions (
application.InfoDialog(),application.QuestionDialog(), etc.). Use theapp.Dialogmanager instead:app.Dialog.Info(),app.Dialog.Question(),app.Dialog.Warning(),app.Dialog.Error(),app.Dialog.OpenFile(),app.Dialog.SaveFile() - Perbarui dialogs dokumentasi to match actual API: use
app.Dialog.*,AddButton()with callbacks (notSetTombol()),SetDefaultButton(*Button)(not string),AddFilter()(notSetFilters()),SetFilename()(notSetDefaultFilename()), andapp.Dialog.OpenFile().CanChooseDirectories(true)for folder selection - BREAKING: Production builds are now the default. To create dev builds, set
DEV=truein your Taskfiles. Generate a new project for examples oleh @leaanthony - When emitting a custom event with zero or one data argument, the data value will be assigned directly to the Data field without wrapping it in a slice by @fbbdev in #4633
- Windows trays now honor
SystemTray.Show()/Hide()by togglingNIS_HIDDEN, so apps can truly disappear and return (#4653). - Tray registration reuses resolved icons, sets
NOTIFYICON_VERSION_4once, and enablesNIF_SHOWTIPso tooltips recover after Explorer restarts (#4653). - macOS: Use
visibleFrameinstead offramefor window centering to exclude menu bar and dock areas - macOS: Use
visibleFrameinstead offramefor window centering to exclude menu bar and dock areas - When running
wails3 update build-assetswith the-configparameter, values set via the-product*parameters are window.NativeWindowHandle()->window.NativeWindow()oleh @leaanthony in #4471- Refactor internal window handling oleh @leaanthony in #4471
- Hapus
application.WindowIDKeyandapplication.WindowNameKey(replaced byapplication.WindowKey) by @leaanthony - ContextMenuData now returns a string instead of any by @leaanthony
- In JS/TS bindings, class fields of fixed-length array types are now initialized with their expected length instead of being empty by @fbbdev in #4001
- ContextMenuData now returns a string instead of any by @leaanthony
application.NewServicedoes not accept options as an optional parameter anymore (useapplication.NewServiceWithOptionsinstead) by @leaanthony in #4024- Hapus
nanoiddependency by @leaanthony - Perbarui Window example for mica/acrylic/tabbed window styles by @leaanthony
- In JS/TS bindings,
internal.js/tsmodel files have been removed; all models can now be found inmodels.js/tsby @fbbdev in #4045 - In JS/TS bindings, named types are never rendered as aliases for other named types; the old behaviour is now restricted to aliases by @fbbdev in #4045
- In JS/TS bindings, in class mode, struct fields whose type is a type parameter are marked optional and never initialised automatically by @fbbdev in #4045
- Hapus ESLint from templates by by @IanVS in #4059
- Perbarui copyright date to 2025 by @IanVS in #4037
- Tambahkan docs for event.Sender by @IanVS in #4075
- Go 1.24 support by @leaanthony
ServiceStartuphooks are now invoked whenApp.Runis called, not inapplication.Newby @fbbdev in #4066ServiceStartuperrors are now returned fromApp.Runinstead of terminating the process by @fbbdev in #4066- Binding and dialog calls from JS now reject with error objects instead of strings by @fbbdev in #4066
- Improved systray menu positioning di Windows by @leaanthony
- The JS runtime has been ported to TypeScript by @fbbdev in #4100
- The runtime initialises as soon as it is imported, no need to wait for the window to load by @fbbdev in #4100
- The runtime does not export an init method anymore. A side effects import can be used to initialise it by @fbbdev in #4100
- Bound methods now return a
CancellablePromisethat rejects with aCancelErrorif cancelled. The actual result of the call is discarded by @fbbdev in #4100 - Built-in service types are now consistently called
Serviceby @fbbdev in #4067 - Built-in service creation functions with options are now consistently called
NewWithConfigby @fbbdev in #4067 Selectmethod onsqliteservice is now namedQueryfor consistency with Go APIs by @fbbdev in #4067- Templates: moved runtime to “dependencies”, organized package.json files by @IanVS in #4133
- Creates and ad-hoc signs app bundles in dev to enable certain macOS APIs by @popaprozac in #4171
- Moved build assets to platform specific directories by @leaanthony
- Moved and renamed Taskfiles to platform specific directories by @leaanthony
- Created a much better experience when
index.htmlis missing by @leaanthony - [Windows] Improved performance of minimise and restore by @leaanthony. Based on original PR by 562589540
- Hapus
ShouldCloseoption (Register a hook for events.Common.WindowClosing instead) by @leaanthony - [Windows] Reduced flicker when opening a window by @leaanthony
- Hapus
Window.Destroyas this was intended to be an internal function by @leaanthony - Renamed
WindowCloseevents toWindowClosingby @leaanthony - Frontend builds now use vite environment “development” or “production” depending on build type by @leaanthony
- Perbarui to go-webview2 v1.19 by @leaanthony
- Ensure fork of taskfile is used oleh @leaanthony
- Perbarui fork of Taskfile to fix version issues when installing using
- Using fork of Taskfile to fix version issues when installing using
service.OnStartupnow shutdowns the application on error and runs- Refactored systray click messaging to better align with user interactions by
- Asset embed to include
all:frontend/distto support frameworks that generate - Taskfile refactor by leaanthony in
- Upgrade to
go-webview2v1.0.16 by - Perbaiki
Screentype to includeIDnotIdby - Perbarui
go.mod.tmplwails version to supportapplication.ServiceOptionsby - Perbaiki service name determination by windom in
- mkdocs serve now uses docker by leaanthony
- Consolidated dev config into
config.ymlby - Systray dialog now defaults to the application icon if available (Windows) by
- Better reporting of GPU + Memory for macOS by
- Hapus
WebviewGpuIsDisabledandEnableFraudulentWebsiteWarnings - Events API change:
On/Emit-> user events,OnApplicationEvent-> - Perbaiki for Events API di Linux by TheGB0077 in
- [CI] improvements to actions & enable to run actions also in forks and
- Renamed
AbsolutePosition()toPosition()by - Perbarui linux webkit dependency to webkit2gtk-4.1 over webkitgtk2-4.0 to
- The bundled JS runtime script is now an ESM module: script tags importing it
- The
@wailsio/runtimepackage does not publish its API on thewindow.wails - The Window API module
@wailsio/runtime/src/windownow exposes the containing - The JS window API has been updated to match the current Go
WebviewWindow - The binding generator now uses calls by ID by default. The
-idCLI option - New binding code layout: output files were previously organised in folders
- The struct field
application.Options.Bindhas been renamed to - New syntax for binding services: service instances must now be wrapped in a
- Disable spinner on Non-Terminal or CI Environment by
Dihapus
Section titled “Dihapus”- BREAKING: Remove
EnabledFeatures,DisabledFeatures, andAdditionalLaunchArgsfrom per-windowWindowsWindowoptions. Use application-levelOptions.Windows.EnabledFeatures,Options.Windows.DisabledFeatures, andOptions.Windows.AdditionalBrowserArgsinstead. These flags apply globally to the shared WebView2 environment (#4559) oleh @leaanthony - Hapus native
IDropTargetimplementation di Windows in favor of JavaScript-based approach (matches v2 behavior) - Hapus github.com/wailsapp/mimetype dependency in favor of expanded extension map + stdlib http.DetectContentType, reducing binary size by ~1.2MB
- Hapus gopkg.in/ini.v1 dependency by implementing minimal .desktop file parser for Linux file explorer, saving ~45KB
- Hapus samber/lo from runtime code by using Go 1.21+ stdlib slices package and minimal internal helpers, saving ~310KB
- Hapus debug printf statements from Darwin URL scheme handler (#4834)
- BREAKING: Remove
linux:WindowLoadChangedevent - uselinux:WindowLoadFinishedinstead for detecting when WebView has finished loading (#3896) oleh @leaanthony
Breaking Changes
Section titled “Breaking Changes”- Manager API Refactoring: Reorganized application API from flat structure to organized managers for better code organization and discoverability by @leaanthony in #4359
app.NewWebviewWindow()→app.Window.New()app.CurrentWindow()→app.Window.Current()app.GetAllWindows()→app.Window.GetAll()app.WindowByName()→app.Window.GetByName()app.EmitEvent()→app.Event.Emit()app.OnApplicationEvent()→app.Event.OnApplicationEvent()app.OnWindowEvent()→app.Event.OnWindowEvent()app.SetApplicationMenu()→app.Menu.SetApplicationMenu()app.OpenFileDialog()→app.Dialog.OpenFile()app.SaveFileDialog()→app.Dialog.SaveFile()app.MessageDialog()→app.Dialog.Message()app.InfoDialog()→app.Dialog.Info()app.WarningDialog()→app.Dialog.Warning()app.ErrorDialog()→app.Dialog.Error()app.QuestionDialog()→app.Dialog.Question()app.NewSystemTray()→app.SystemTray.New()app.GetSystemTray()→app.SystemTray.Get()app.ShowContextMenu()→app.ContextMenu.Show()app.RegisterKeybinding()→app.KeyBinding.Register()app.UnregisterKeybinding()→app.KeyBinding.Unregister()app.GetPrimaryScreen()→app.Screen.GetPrimary()app.GetAllScreens()→app.Screen.GetAll()app.BrowserOpenURL()→app.Browser.OpenURL()app.Environment()→app.Env.GetAll()app.ClipboardGetText()→app.Clipboard.Text()app.ClipboardSetText()→app.Clipboard.SetText()- Renamed Service methods:
Name->ServiceName,OnStartup->ServiceStartup,OnShutdown->ServiceShutdownby @leaanthony - Moved
PathandPathsmethods toapplicationpackage by @leaanthony - The application menu is now macOS only by @leaanthony
v3.0.0-alpha.78 - 2026-04-21
Section titled “v3.0.0-alpha.78 - 2026-04-21”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.77 - 2026-04-18
Section titled “v3.0.0-alpha.77 - 2026-04-18”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.76 - 2026-04-17
Section titled “v3.0.0-alpha.76 - 2026-04-17”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.75 - 2026-04-16
Section titled “v3.0.0-alpha.75 - 2026-04-16”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.74 - 2026-03-01
Section titled “v3.0.0-alpha.74 - 2026-03-01”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.73 - 2026-02-27
Section titled “v3.0.0-alpha.73 - 2026-02-27”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.72 - 2026-02-16
Section titled “v3.0.0-alpha.72 - 2026-02-16”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.71 - 2026-02-10
Section titled “v3.0.0-alpha.71 - 2026-02-10”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.70 - 2026-02-09
Section titled “v3.0.0-alpha.70 - 2026-02-09”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.69 - 2026-02-08
Section titled “v3.0.0-alpha.69 - 2026-02-08”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.68 - 2026-02-07
Section titled “v3.0.0-alpha.68 - 2026-02-07”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.67 - 2026-02-04
Section titled “v3.0.0-alpha.67 - 2026-02-04”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.66 - 2026-02-03
Section titled “v3.0.0-alpha.66 - 2026-02-03”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”Dihapus
Section titled “Dihapus”v3.0.0-alpha.65 - 2026-02-01
Section titled “v3.0.0-alpha.65 - 2026-02-01”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.64 - 2026-01-26
Section titled “v3.0.0-alpha.64 - 2026-01-26”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.63 - 2026-01-25
Section titled “v3.0.0-alpha.63 - 2026-01-25”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.62 - 2026-01-22
Section titled “v3.0.0-alpha.62 - 2026-01-22”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.61 - 2026-01-20
Section titled “v3.0.0-alpha.61 - 2026-01-20”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.60 - 2026-01-14
Section titled “v3.0.0-alpha.60 - 2026-01-14”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.59 - 2026-01-11
Section titled “v3.0.0-alpha.59 - 2026-01-11”Diubah
Section titled “Diubah”v3.0.0-alpha.58 - 2026-01-09
Section titled “v3.0.0-alpha.58 - 2026-01-09”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.57 - 2026-01-05
Section titled “v3.0.0-alpha.57 - 2026-01-05”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.56 - 2026-01-04
Section titled “v3.0.0-alpha.56 - 2026-01-04”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”Dihapus
Section titled “Dihapus”v3.0.0-alpha.55 - 2026-01-02
Section titled “v3.0.0-alpha.55 - 2026-01-02”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”Dihapus
Section titled “Dihapus”v3.0.0-alpha.54 - 2025-12-29
Section titled “v3.0.0-alpha.54 - 2025-12-29”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”Dihapus
Section titled “Dihapus”v3.0.0-alpha.53 - 2025-12-27
Section titled “v3.0.0-alpha.53 - 2025-12-27”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.52 - 2025-12-26
Section titled “v3.0.0-alpha.52 - 2025-12-26”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.51 - 2025-12-23
Section titled “v3.0.0-alpha.51 - 2025-12-23”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.50 - 2025-12-21
Section titled “v3.0.0-alpha.50 - 2025-12-21”Diubah
Section titled “Diubah”v3.0.0-alpha.49 - 2025-12-18
Section titled “v3.0.0-alpha.49 - 2025-12-18”Diubah
Section titled “Diubah”v3.0.0-alpha.48 - 2025-12-16
Section titled “v3.0.0-alpha.48 - 2025-12-16”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.47 - 2025-12-15
Section titled “v3.0.0-alpha.47 - 2025-12-15”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.46 - 2025-12-14
Section titled “v3.0.0-alpha.46 - 2025-12-14”Ditambahkan
Section titled “Ditambahkan”Dihapus
Section titled “Dihapus”v3.0.0-alpha.45 - 2025-12-13
Section titled “v3.0.0-alpha.45 - 2025-12-13”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.44 - 2025-12-12
Section titled “v3.0.0-alpha.44 - 2025-12-12”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.43 - 2025-12-11
Section titled “v3.0.0-alpha.43 - 2025-12-11”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.42 - 2025-12-10
Section titled “v3.0.0-alpha.42 - 2025-12-10”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.41 - 2025-11-23
Section titled “v3.0.0-alpha.41 - 2025-11-23”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.40 - 2025-11-13
Section titled “v3.0.0-alpha.40 - 2025-11-13”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.39 - 2025-11-12
Section titled “v3.0.0-alpha.39 - 2025-11-12”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”v3.0.0-alpha.38 - 2025-11-04
Section titled “v3.0.0-alpha.38 - 2025-11-04”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.37 - 2025-11-02
Section titled “v3.0.0-alpha.37 - 2025-11-02”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.36 - 2025-10-15
Section titled “v3.0.0-alpha.36 - 2025-10-15”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.35 - 2025-10-14
Section titled “v3.0.0-alpha.35 - 2025-10-14”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.34 - 2025-10-06
Section titled “v3.0.0-alpha.34 - 2025-10-06”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.33 - 2025-10-04
Section titled “v3.0.0-alpha.33 - 2025-10-04”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.32 - 2025-10-02
Section titled “v3.0.0-alpha.32 - 2025-10-02”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.31 - 2025-09-27
Section titled “v3.0.0-alpha.31 - 2025-09-27”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.30 - 2025-09-26
Section titled “v3.0.0-alpha.30 - 2025-09-26”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.29 - 2025-09-25
Section titled “v3.0.0-alpha.29 - 2025-09-25”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.29 - 2025-09-25
Section titled “v3.0.0-alpha.29 - 2025-09-25”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.27 - 2025-09-07
Section titled “v3.0.0-alpha.27 - 2025-09-07”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.26 - 2025-08-24
Section titled “v3.0.0-alpha.26 - 2025-08-24”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.25 - 2025-08-16
Section titled “v3.0.0-alpha.25 - 2025-08-16”Diubah
Section titled “Diubah”no longer ignored, and override the config value.
v3.0.0-alpha.24 - 2025-08-13
Section titled “v3.0.0-alpha.24 - 2025-08-13”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.23 - 2025-08-11
Section titled “v3.0.0-alpha.23 - 2025-08-11”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.22 - 2025-08-10
Section titled “v3.0.0-alpha.22 - 2025-08-10”Ditambahkan
Section titled “Ditambahkan”Diubah
Section titled “Diubah”- Fix extra-broad Linux package dependencies, fix outdated RPM dependencies.
v3.0.0-alpha.21 - 2025-08-07
Section titled “v3.0.0-alpha.21 - 2025-08-07”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.20 - 2025-08-06
Section titled “v3.0.0-alpha.20 - 2025-08-06”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.19 - 2025-08-05
Section titled “v3.0.0-alpha.19 - 2025-08-05”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.18 - 2025-08-03
Section titled “v3.0.0-alpha.18 - 2025-08-03”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.17 - 2025-07-31
Section titled “v3.0.0-alpha.17 - 2025-07-31”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.16 - 2025-07-25
Section titled “v3.0.0-alpha.16 - 2025-07-25”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.15 - 2025-07-25
Section titled “v3.0.0-alpha.15 - 2025-07-25”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.14 - 2025-07-25
Section titled “v3.0.0-alpha.14 - 2025-07-25”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.12 - 2025-07-15
Section titled “v3.0.0-alpha.12 - 2025-07-15”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.11 - 2025-07-12
Section titled “v3.0.0-alpha.11 - 2025-07-12”Ditambahkan
Section titled “Ditambahkan”v3.0.0-alpha.10 - 2025-07-06
Section titled “v3.0.0-alpha.10 - 2025-07-06”Breaking Changes
Section titled “Breaking Changes”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”Diubah
Section titled “Diubah”v3.0.0-alpha.9 - 2025-01-13
Section titled “v3.0.0-alpha.9 - 2025-01-13”Ditambahkan
Section titled “Ditambahkan”Diperbaiki
Section titled “Diperbaiki”Diubah
Section titled “Diubah”v3.0.0-alpha.8.3 - 2024-12-07
Section titled “v3.0.0-alpha.8.3 - 2024-12-07”Diubah
Section titled “Diubah”v3.0.0-alpha.8.2 - 2024-12-07
Section titled “v3.0.0-alpha.8.2 - 2024-12-07”Diubah
Section titled “Diubah”go install oleh @leaanthony
v3.0.0-alpha.8.1 - 2024-12-07
Section titled “v3.0.0-alpha.8.1 - 2024-12-07”Diubah
Section titled “Diubah”go install oleh @leaanthony
v3.0.0-alpha.8 - 2024-12-06
Section titled “v3.0.0-alpha.8 - 2024-12-06”Ditambahkan
Section titled “Ditambahkan”@atterpac in #3909 ansxuman in #3902 atterpac in #3867 by atterpac in #3829 leaanthony FerroO2000 in #3856 #3873 leaanthony positioned at the given X/Y location by leaanthony in #3885 ansxuman and leaanthony in #3823 by leaanthony in #3766 leaanthony in #3888 leaanthony.
Section titled “@atterpac in #3909 ansxuman in #3902 atterpac in #3867 by atterpac in #3829 leaanthony FerroO2000 in #3856 #3873 leaanthony positioned at the given X/Y location by leaanthony in #3885 ansxuman and leaanthony in #3823 by leaanthony in #3766 leaanthony in #3888 leaanthony.”Diubah
Section titled “Diubah”service.OnShutdownfor any prior services that started oleh @atterpac in
#3920
@atterpac in #3907
subfolders oleh @atterpac in
#3887
#3748
leaanthony
etesam913 in
#3778
northes in
#3836
#3827
leaanthony
@leaanthony
@leaanthony
(superseded by EnabledFeatures and DisabledFeatures options) by
leaanthony
Diperbaiki
Section titled “Diperbaiki”channel variable oleh @michael-freling in
#3925
ansxuman in
#3924
#3898
#3901
in #3886
leaanthony in
#3841
PasteAndMatchStyle role in the edit menu on Darwin by
johnmccabe in
#3839
#3840 in
#3854 by
kodflow
@leaanthony
are different. oleh @nickisworking in
#3789
v3.0.0-alpha.7 - 2024-09-18
Section titled “v3.0.0-alpha.7 - 2024-09-18”Ditambahkan
Section titled “Ditambahkan”mmghv in #3665 #3682 atterpac and leaanthony in #3570
Diubah
Section titled “Diubah”Event Aplikasi OnWindowEvent -> Window Events, by
leaanthony
#3734
branches prefixed with v3/ or v3- by
stendler in
#3747
Diperbaiki
Section titled “Diperbaiki”etesam913 in #3742 atterpac in #3721 atterpac in #3675 #1811 in #3614 by @stendler #3720 by leaanthony #3693 by @DeltaLaboratory #3720 by leaanthony #3693 by @DeltaLaboratory leaanthony #3746 by @stendler leaanthony
v3.0.0-alpha.6 - 2024-07-30
Section titled “v3.0.0-alpha.6 - 2024-07-30”Diperbaiki
Section titled “Diperbaiki”v3.0.0-alpha.5 - 2024-07-30
Section titled “v3.0.0-alpha.5 - 2024-07-30”Ditambahkan
Section titled “Ditambahkan”#3580
#3580
icon click oleh @5aaee9 in #2991
#2618
@fbbdev in
#3282
@Atterpac
in#3022
@marcus-crane in
#3146
PR
PR
@fbbdev in
#3281
aba82cc
based on PR oleh @Mai-Lapyst
@fbbdev in
#3295
@fbbdev in
#3295
@fbbdev in
#3295
the npm package by @fbbdev in
#3334
in #3354
WAILS_VITE_PORT by @abichinger in
#3429
@abichinger in
#3431
@bruxaodev in
#3667
@OlegGulevskyy in
#3674
Diperbaiki
Section titled “Diperbaiki”#3606
tmclane in
#3515
atterpac in
#3512
atterpac in
#3477
by Atterpac in
#3320.
in #3306.
#2972.
#2982
mmghv in
#2750.
#2753.
jaybeecave in
#3052.
@pylotlight in
PR
installed. Added by @pylotlight in
PR
PR
spaces - @leaanthony.
thomas-senechal in PR
#3207
thomas-senechal in PR
#3208
attached window tw1nk in PR
#3271
#3273
@fbbdev in
#3279
FRONTEND_DEVSERVER_URL is present.
#3299
@fbbdev in
#3295
listeners by @fbbdev in
#3295
@abichinger in
#3330
generator by @fbbdev in
#3334
generator by @fbbdev in
#3334
@abichinger in
#3346
@hfoxy in
#3417
@hfoxy in
#3426
@fbbdev in
#3431
@fbbdev in
#3431
by @pekim in
#3458
@robin-samuel.
PR #3466 by
@5aaee9.
@windom in
#3636.
Windows by @bruxaodev in
#3691.
Diubah
Section titled “Diubah”mmghv in
#3611
support Ubuntu 24.04 LTS by atterpac in
#3461
must have the type="module" attribute. By
@fbbdev in
#3295
object, and does not start the WML system. This has been done to improve
encapsulation. The WML system can be started manually if desired by calling
the new WML.Enable method. The bundled JS runtime script still performs both
operations automatically. By @fbbdev in
#3295
window object as a default export. It is not possible anymore to import
individual methods through ESM named or namespace import syntax.
API. Some methods have changed name or prototype, specifically: Screen
becomes GetScreen; GetZoomLevel/SetZoomLevel become GetZoom/SetZoom;
GetZoom, Width and Height now return values directly instead of wrapping
them within objects. By @fbbdev in
#3295
has been removed. Use the -names CLI option to switch back to calls by name.
By @fbbdev in
#3468
named after their containing package; now full Go import paths are used,
including the module path. By @fbbdev in
#3468
application.Options.Services. By @fbbdev in
#3468
call to application.NewService. By @fbbdev in
#3468
@DeltaLaboratory in
#3574