* fix(v3): exclude node_modules from build:frontend sources glob
The `sources: "**/*"` glob in the build:frontend task causes go-task
to enumerate and checksum every file in node_modules during up-to-date
checking. With heavy dependencies (e.g. MUI), this means 50-100k+ files
are statted, causing 20-30 minute hangs especially on Windows/NTFS.
Fixes#4939
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs(v3): add changelog entry for #4939 fix
* chore: trigger CI re-run with fixed workflow
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* feat(v3): add server mode for headless HTTP deployment
Server mode allows Wails applications to run as pure HTTP servers
without native GUI dependencies. Enable with `-tags server` build tag.
Features:
- HTTP server with configurable host/port via ServerOptions
- WAILS_SERVER_HOST and WAILS_SERVER_PORT env var overrides
- WebSocket event broadcasting to connected browsers
- Browser clients represented as BrowserWindow (Window interface)
- Health check endpoint at /health
- Graceful shutdown with configurable timeout
- Docker support with Dockerfile.server template and tasks
Build and run:
wails3 task build:server
wails3 task run:server
wails3 task build:docker
wails3 task run:docker
Documentation at docs/guides/server-build.mdx
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat(v3): add server mode for headless HTTP deployment
Server mode allows Wails applications to run as pure HTTP servers
without native GUI dependencies. Enable with `-tags server` build tag.
Features:
- HTTP server with configurable host/port via ServerOptions
- WAILS_SERVER_HOST and WAILS_SERVER_PORT env var overrides
- WebSocket event broadcasting to connected browsers
- Browser clients represented as BrowserWindow (Window interface)
- Health check endpoint at /health
- Graceful shutdown with configurable timeout
- Docker support with Dockerfile.server template and tasks
Build and run:
wails3 task build:server
wails3 task run:server
wails3 task build:docker
wails3 task run:docker
Documentation at docs/guides/server-build.mdx
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix: address CodeRabbit review comments
- Fix corrupted test file with embedded terminal output
- Fix module name mismatch in gin-routing (was gin-example)
- Fix replace directive version mismatch in gin-service
- Fix placeholder module name in ios example (was changeme)
- Fix Dockerfile COPY path to work from both build contexts
- Fix bare URL in README (MD034 compliance)
- Fix comment accuracy in getScreens (returns error, not empty slice)
- Remove deprecated docker-compose version field
- Add port documentation in Taskfile template
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix: address CodeRabbit review comments
- Add note about healthcheck wget not being available in distroless images
- Add !server build constraint to menu_windows.go and menu_darwin.go
- Downgrade window-visibility-test go.mod from 1.25 to 1.24 to match CI
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
* ## Summary
I've implemented the fix for issue #4575. Here's what was changed:
### Changes Made
**File: `v3/internal/commands/build_assets/linux/Taskfile.yml`**
1. Added `generate:dotdesktop` as a dependency to `build:native` task (line 45)
2. Added `generate:dotdesktop` as a dependency to `build:docker` task (line 63)
This ensures that the `.desktop` file is generated during every Linux build (both native and Docker-based), not just during packaging operations.
### How it works
- When running `wails build` or `wails dev` on Linux, the build process now automatically generates a `.desktop` file at `build/linux/<app-name>.desktop`
- The `.desktop` file contains:
- Application name
- Executable path
- Icon reference
- Categories (defaulting to "Development")
- This allows Linux desktop environments to properly display the application icon and metadata even during development
### Testing
To test the changes:
1. Create a new Wails v3 project: `wails3 init -n testapp`
2. Build it: `cd testapp && wails3 build`
3. Verify the `.desktop` file exists: `cat build/linux/testapp.desktop`
Would you like me to run a test or make any additional changes?
* feat(linux): generate .desktop file during build (#4575)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
---------
Co-authored-by: Claude <noreply@anthropic.com>
This commit adds comprehensive Android support for Wails v3, enabling
Go applications to run as native Android apps with WebView-based UI.
Key features:
- Android-specific application implementation with JNI bridge
- WebView integration via WebViewAssetLoader for serving assets
- JavaScript runtime injection and execution via JNI callbacks
- Binding call support with async result callbacks
- Event system support for Android platform
- Full example Android app with Gradle build system
Technical details:
- Uses CGO with Android NDK for cross-compilation
- Implements JNI callbacks for Go <-> Java communication
- Supports both ARM64 and x86_64 architectures
- WebView debugging support via Chrome DevTools Protocol
- Handles empty response body case in binding calls to prevent panic
Files added:
- v3/pkg/application/*_android.go - Android platform implementations
- v3/pkg/events/events_android.go - Android event definitions
- v3/internal/*/\*_android.go - Android-specific internal packages
- v3/examples/android/ - Complete example Android application
- v3/ANDROID_ARCHITECTURE.md - Architecture documentation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>