v3.0.0-alpha.12
app.Env.GetAccentColor
to get the accent color of a user's system. Works on MacOS. by @etesam913- Add
window.ToggleFrameless()
api by @atterpac in #4137
goctl/v1.8.5
- Bug Fix: Fix for issue #4943 — fix goctl api swagger error (@kesonan)
- Bug Fix: Fixed goctl api swagger panic with nil pointer when there is a wrong field tag in the API file (#4936)
- Bug Fix: Resolved issue where
timeout: 0s
was not working in API files (#4932, @kevwan) - Bug Fix: Corrected PostgreSQL
numeric
type mapping in goctl model generation (#4992, @AnlynnLee) - Enhancement: Improved POST JSON parameter determination logic in goctl API Swagger and added unit tests (#4997, @Twilikiss)
- @wanwusangzhi made their first contribution (#4944)
- @geekeryy made their first contribution (#4979)
- @Twilikiss made their first contribution (#4997)
Full Changelog: tools/goctl/v1.8.4...tools/goctl/v1.8.5
v1.8.5
- SQL Read/Write Splitting: Introduced SQL read/write splitting for improved database performance and scalability (#4976, #4990, #5000).
- Serverless Support in REST: Added support for serverless use in REST services (#5001).
- Fixed HTTP SSE method timeout not working when timeout is set by server (#4932)
- Fixed timeout
0s
not working in API files (#4932) - Fixed panic caused by
time.Duration
type with numerical values (#4944) - Fixed duration type comparison in environment variable processing (#4979)
Full Changelog: v1.8.4...v1.8.5
v3.0.0.alpha-11
- feat: Add distribution-specific build dependencies for Linux (#4339) by @leaanthony in https://github.com/wailsapp/wails/pull/4345
- advanced bindings documentation by @atterpac in https://github.com/wailsapp/wails/pull/4404
Full Changelog: https://github.com/wailsapp/wails/compare/v3.0.0-alpha.10...v3.0.0-alpha.11
v1.64.0
In the next version of fasthttp headers delimited by just \n
(instead of \r\n
) are no longer supported!
- Add warning for deprecated newline separator by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/2031
- refact: eliminate duplication in Request/Response via struct embedding by @ksw2000 in https://github.com/valyala/fasthttp/pull/2027
- chore(deps): bump golang.org/x/sys from 0.33.0 to 0.34.0 by @dependabot[bot] in https://github.com/valyala/fasthttp/pull/2034
- chore(deps): bump golang.org/x/crypto from 0.39.0 to 0.40.0 by @dependabot[bot] in https://github.com/valyala/fasthttp/pull/2036
- chore(deps): bump golang.org/x/net from 0.41.0 to 0.42.0 by @dependabot[bot] in https://github.com/valyala/fasthttp/pull/2035
Full Changelog: https://github.com/valyala/fasthttp/compare/v1.63.0...v1.64.0
v2.9.0
- Added support for the
Partitioned
attribute on the session cookie. - Fixes applied for a race condition in various store background cleanup routines.
- Various documentation improvements.
- @earthboundkid made their first contribution in https://github.com/alexedwards/scs/pull/230
- @rmmh made their first contribution in https://github.com/alexedwards/scs/pull/213
- @pete-woods made their first contribution in https://github.com/alexedwards/scs/pull/207
- @canidam made their first contribution in https://github.com/alexedwards/scs/pull/202
Full Changelog: https://github.com/alexedwards/scs/compare/v2.8.0...v2.9.0
v4.24.0
I hope you enjoyed my work. Please consider donating or asking your company to do so. This will be appreciated, thank you ❤️
- 6ecdde77f0172cbfce33b37251b56d1f9b1b60e1 Add DNS provider for Azion (#2550)
- b82e6d88e418ef209044c710ded14dae52159f25 Add DNS provider for ConoHa v3 (#2516)
- 7571c0bd314855a0bdb61a7bbfd7fd9921826070 Add DNS provider for DynDnsFree.de (#2540)
- 65608d8bbff21776699e9c89c818c45f037f56fd Add DNS provider for RU Center (#1892)
- 1fecd31d3d5a8adede4053ce6a0d3a4bfc38d9f5 alidns: migrate to SDK v2 (#2558)
- b28d1ac67a52b0ea7ef643bc8a821e1b024184b5 azion: add pagination support (#2555)
- 17c65de6e77a04391c8b3024e8c1780b58443f4d azion: improve zone lookup (#2564)
- d6df9462231fbea5ed4b42473a09613afd158592 cloudflare: add quotation marks to TXT record (#2521)
- 476f9ed9100ed25d7a4c37eb6946d7831e3a9e09 docs(cPanel): fix examples (#2529)
- a528e280f9e95982ef0c4f0771d99ed51028c5b3 docs: update reference ACME ARI RFC 9773 in place of the draft (#2541)
- 375300f969cf56133e10ebdbf33ffba831c8e9fe exoscale: fix find record (#2535)
- 1cee2efbdc06481260c4ce306bc0ed0d49a5d953 fix: check order identifiers difference between client and server (#2520)
- 8d7ed798a73138a81f5928e1f699e47c8638597a gcloud: add service account impersonation (#2544)
- 08316e47a6f68ace8e9f3d93445945908d8e9a4c googledomains: provider deprecation (#2554)
- 990f9ac60126cd941d8e7370374d584b92a3389e mijnhost: improve record filter (#2562)
- f05362515a524dc9be5e8195ff6ff5bf6e263c08 nicmanager: fix mode env var name and value (#2534)
- 94d871230d88abf54052c0a9c4c129d004b4e83e oraclecloud: replace oci-go-sdk by a modular fork (#2556)
- e9a255df9b04195245545ae8b15c520c54beb369 pdns: improve error messages (#2526)
v2.3.7
- perf(retry): remove the waiting time after the last retry by @cannian1 in https://github.com/duke-git/lancet/pull/309
- fix(docs): correct URL link typo in documentation by @FanLu1994 in https://github.com/duke-git/lancet/pull/310
- fix: ArrayQueue.Back() implementation by @gregth in https://github.com/duke-git/lancet/pull/313
- the error returned by the Retry function contains the last error (#311) by @cannian1 in https://github.com/duke-git/lancet/pull/315
- Update slice_concurrent.go by @zoulux in https://github.com/duke-git/lancet/pull/316
- @FanLu1994 made their first contribution in https://github.com/duke-git/lancet/pull/310
- @gregth made their first contribution in https://github.com/duke-git/lancet/pull/313
- @zoulux made their first contribution in https://github.com/duke-git/lancet/pull/316
Full Changelog: https://github.com/duke-git/lancet/compare/v2.3.6...v2.3.7
v3.0.0-alpha.10
- 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
->ServiceShutdown
by @leaanthony - Moved
Path
andPaths
methods toapplication
package by @leaanthony - The application menu is now macOS only by @leaanthony
- 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
- Add diagnostics section to
wails doctor
by @leaanthony - Add window to context when calling a service method by @leaanthony
- Add
window-call
example to demonstrate how to know which window is calling a service by @leaanthony - New Menu guide by @leaanthony
- Better panic handling by @leaanthony
- New Menu guide by @leaanthony
- Add doc comments for Service API by @fbbdev in #4024
- Add function
application.NewServiceWithOptions
to initialise services with additional configuration by @leaanthony in #4024 - Improved menu control by @FalcoG and @leaanthony in #4031
- More documentation by @leaanthony
- Support cancellation of events in standard event listeners by @leaanthony
- Systray
Hide
,Show
andDestroy
support by @leaanthony - Systray
SetTooltip
support by @leaanthony. Original idea by @lujihong - Report package path in binding generator warnings about unsupported types by @fbbdev in #4045
- Add binding generator support for generic aliases by @fbbdev in #4045
- Add binding generator support for
omitzero
JSON flag by @fbbdev in #4045 - Add
//wails:ignore
directive to prevent binding generation for chosen service methods by @fbbdev in #4045 - Add
//wails:internal
directive on services and models to allow for types that are exported in Go but not in JS/TS by @fbbdev in #4045 - Add binding generator support for constants of alias type to allow for weakly typed enums by @fbbdev in #4045
- Add binding generator tests for Go 1.24 features by @fbbdev in #4068
- Add support for macOS 15 "Sequoia" to
OSInfo.Branding
for improved OS version detection in #4065 - Add
PostShutdown
hook for running custom code after the shutdown process completes by @fbbdev in #4066 - Add
FatalError
struct 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
- Add test harness for application startup/shutdown sequence and service startup/shutdown tests by @fbbdev in #4066
- Add
RegisterService
method for registering services after the application has been created by @fbbdev in #4066 - Add
MarshalError
field in application and service options for custom error handling in binding calls by @fbbdev in #4066 - Add cancellable promise wrapper that propagates cancellation requests through promise chains by @fbbdev in #4100
- Add the ability to tie binding call cancellation to an
AbortSignal
by @fbbdev in #4100 - Support
data-wml-*
attributes for WML alongside the usualwml-*
attributes by @leaanthony - Add
Configure
method on all services for late configuration/dynamic reconfiguration by @fbbdev in #4067 fileserver
service sends a 503 Service Unavailable response when unconfigured by @fbbdev in #4067kvstore
service provides an in-memory key-value store by default when unconfigured by @fbbdev in #4067- Add
Load
method onkvstore
service to reload data from file after config changes by @fbbdev in #4067 - Add
Clear
method onkvstore
service to delete all keys by @fbbdev in #4067 - Add type
Level
inlog
service to provide JS-side log-level constants by @fbbdev in #4067 - Add
Log
method onlog
service to specify log-level dynamically by @fbbdev in #4067 sqlite
service provides an in-memory DB by default when unconfigured by @fbbdev in #4067- Add method
Close
onsqlite
service to close the DB manually by @fbbdev in #4067 - Add cancellation support for query methods on
sqlite
service by @fbbdev in #4067 - Add prepared statement support to
sqlite
service with JS bindings by @fbbdev in #4067 - Gin support by Lea Anthony in PR based on the original work of @AnalogJ in PR[https://github.com/wailsapp/wails/pull/3537]
- Fix auto save and password auto save always enabled by @oSethoum in #4134
- Add
SetMenu()
on window to allow for setting a menu on a window by @leaanthony - Add Notification support by @popaprozac in #4098
- Add File Association support for mac by @wimaha in #4177
- Add
wails3 tool version
for semantic version bumping by @leaanthony - Add badging support for macOS and Windows by @popaprozac in #
- Fixed nil pointer dereference in processURLRequest for Mac by @etesam913 in #4366
- Fixed a linux bug preventing filtered dialogs by @bh90210 in #4287
- Fixed Windows+Linux Edit Menu issues by @leaanthony in #3f78a3a
- Updated 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
- Fix nil menu issue when calling RegisterContextMenu by @leaanthony
- Fixed dependency cycles in binding generator output by @fbbdev in #4001
- Fixed use-before-define errors in binding generator output by @fbbdev in #4001
- Pass build flags to binding generator by @fbbdev in #4023
- Change 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
- Fixed event deadlock for macOS by @leaanthony
- Fixed a
Parameter incorrect
error in Window initialisation on Windows when HTML provided but no JS by @leaanthony - Fixed size of response prefix used for content type sniffing in asset server by @fbbdev in #4049
- Fixed handling of non-404 responses on root index path in asset server by @fbbdev in #4049
- Fixed undefined behaviour in binding generator when testing properties of generic types by @fbbdev in #4045
- Fixed binding generator output for models when underlying type has not the same properties as named wrapper by @fbbdev in #4045
- Fixed binding generator output for map key types and preprocessing by @fbbdev in #4045
- Fixed binding generator output for structs that implement marshaler interfaces by @fbbdev in #4045
- Fixed detection of type cycles involving generic types in binding generator by @fbbdev in #4045
- Fixed 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
- Fixed 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
- Fixed non-React templates failing to display Hello World footer when using light system colour scheme by @marcus-crane in #4056
- Fixed hidden menu items on macOS by @leaanthony
- Fixed 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
- Fixed #4097 Webpack/angular discards runtime init code by @fbbdev in #4100
- Fixed initially-hidden menu items by @IanVS in #4116
- Fixed assetFileServer not serving
.html
files when non-extension request when[request]
doesn't exist but[request].html
does - Fixed icon generation paths by @robin-samuel in #4125
- Fixed
fullscreen
,unfullscreen
,unminimise
andunmaximise
events not being emitted by @oSethoum in #4130 - Fixed NSIS Error because of incorrect prefix on default version in config by @robin-samuel in #4126
- Fixed Dialogs runtime function returning escaped paths on Windows by TheGB0077 in #4188
- Fixed Webview2 detection path in HKCU by @leaanthony.
- Fixed input issue with macOS by @leaanthony.
- Fixed Windows icon generation task file name by @yulesxoxo in #4219.
- Fixed transparency issue for frameless windows by @leaanthony based on work by @kron.
- Fixed focus calls when window is disabled or minimised by @leaanthony based on work by @kron.
- Fixed system trays not showing after taskbar restarts by @leaanthony based on work by @kron.
- Fixed fallbackResponseWriter not implementing Flush() in #4245
- Fixed fallbackResponseWriter not implementing Flush() by [@superDingda] in #4236
- Fixed macOS window close with pending async Go-bound function call crashes by @joshhardy in #4354
- Fixed Windows Efficiency mode startup race condition by @leaanthony
- Fixed Windows icon handle cleanup by @leaanthony.
- Fixed
OpenFileManager
on Windows by @PPTGamer in #4375.
- Removed
application.WindowIDKey
andapplication.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.NewService
does not accept options as an optional parameter anymore (useapplication.NewServiceWithOptions
instead) by @leaanthony in #4024- Removed
nanoid
dependency by @leaanthony - Updated Window example for mica/acrylic/tabbed window styles by @leaanthony
- In JS/TS bindings,
internal.js/ts
model files have been removed; all models can now be found inmodels.js/ts
by @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
- Remove ESLint from templates by by @IanVS in #4059
- Update copyright date to 2025 by @IanVS in #4037
- Add docs for event.Sender by @IanVS in #4075
- Go 1.24 support by @leaanthony
ServiceStartup
hooks are now invoked whenApp.Run
is called, not inapplication.New
by @fbbdev in #4066ServiceStartup
errors are now returned fromApp.Run
instead 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 on 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
CancellablePromise
that rejects with aCancelError
if cancelled. The actual result of the call is discarded by @fbbdev in #4100 - Built-in service types are now consistently called
Service
by @fbbdev in #4067 - Built-in service creation functions with options are now consistently called
NewWithConfig
by @fbbdev in #4067 Select
method onsqlite
service is now namedQuery
for 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
v2.10.2
- Fixed Window size issues on Wayland PR by @lyimmi
- Fixed SaveFileDialog cancellation result PR by @FrancescoLuzzi
- Fixed issues with hot reloading and quitting not working on Windows PR by @hkere
- Updated recommendation for Svelte router in #4085 by @benmccann
- Updated documentation to clarify
WebviewGpuPolicy
default behavior on Linux in #4162 by @brianetaveras - Updated documentation to display the correct copyright year in #4243 by @nnashwin
- Added "Branding" section to
wails doctor
to correctly identify Windows 11 #3891 by @ronen25 - Added
-skipembedcreate
flag to build and dev command to improve compile and recompile speed #4143 by @josStorer - Added
DisablePanicRecovery
option to allow handle panics manually #4136 by @APshenkin
- Fixed build fails when cross compiling on Linux for Windows #4262 by @rynsf
- Fixed typescript generation of maps with key of array of structs by @joshuapare in #4209
- Fixed -m build flag for dev command not working when recompiling in #4141 by @josStorer
- Fixed window restoration behavior after minimization by @superDingda in #4109
- Fixed excessive console logging after updating to v2.10.1 by @superDingda in #4111
- Fixed incorrect Webview2 reg key in HKCU path by @leaanthony.
- Fixed long WebSocket messages being truncated in
wails dev
by @superDingda in #4211