wavetermdev/waveterm · error
daemonize not supported on windows
Error message
daemonize not supported on windows
What it means
daemonize is a platform-specific stub on Windows that unconditionally returns this error. Daemonizing a process (detaching into the background with a log file) is only implemented for Unix; the Windows build has no equivalent. Any code path that calls daemonize on Windows will always fail.
Source
Thrown at pkg/jobmanager/jobmanager_windows.go:13
// Copyright 2026, Command Line Inc.
// SPDX-License-Identifier: Apache-2.0
//go:build windows
package jobmanager
import (
"fmt"
)
func daemonize(clientId string, jobId string) error {
return fmt.Errorf("daemonize not supported on windows")
}
View on GitHub (pinned to a4447c1563)
Solutions
- Do not use daemonization on Windows; run the job manager in the foreground or as a Windows Service.
- Guard the daemonize call with runtime.GOOS checks and skip/replace it on Windows.
- Implement a Windows-equivalent (e.g. service wrapper like kardianos/service) if background operation is required.
Example fix
// before
err := daemonize(clientId, jobId)
// after
if runtime.GOOS == "windows" {
// run in foreground or use a service manager instead
return runForeground(clientId, jobId)
}
err := daemonize(clientId, jobId) Defensive patterns
Strategy: fallback
Validate before calling
if runtime.GOOS == "windows" {
// skip daemonize path entirely
} Try / catch
if err := daemonize(id, job); err != nil {
if runtime.GOOS == "windows" {
return runForeground(id, job) // fallback
}
return err
} Prevention
- Branch on runtime.GOOS before calling daemonize
- Use a Windows service wrapper for background operation
- Document Windows limitations for job manager users
When it happens
Trigger: Calling any job-manager code path that invokes daemonize() on a Windows build of waveshell/jobmanager.
Common situations: Running the job manager or `wsh job` commands on Windows expecting background daemon behavior; CI environments on Windows runners.
Understand the failure class
Background: "unsupported platform" / "not supported on this platform" errors: what they mean and how to fix them — this error's family across 47 libraries.
Related errors
- process group id not supported on windows
- sending signals is not supported on Windows
- --pid flag is not supported on Windows
- failed to create WSL command
- failed to start command: %w
AI-assisted analysis of wavetermdev/waveterm@a4447c1563 (2026-09-01).
Data as JSON: /api/errors/8e18b6ef07998f85.
Report an issue: GitHub.