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

  1. Do not use daemonization on Windows; run the job manager in the foreground or as a Windows Service.
  2. Guard the daemonize call with runtime.GOOS checks and skip/replace it on Windows.
  3. 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

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


AI-assisted analysis of wavetermdev/waveterm@a4447c1563 (2026-09-01). Data as JSON: /api/errors/8e18b6ef07998f85. Report an issue: GitHub.