01fd572a89
## Summary Completed Phase 5 refactoring and reached the target architecture. **Architectural milestone achieved:** - Service layer owns all state and is the sole writer - UI is a thin Fyne view, all widget updates marshaled via `fyne.Do` - Core engines are stateless and injectable - Domain types are pure (no `yaml:"-"` fields) - Full module builds and `go vet ./...` clean ## Changes - Bump version: 0.3.6 → 0.4.0 - Update CHANGELOG with Phase 5 summary - Add ROADMAP "Refactoring Follow-Ups" section ## Known follow-up work 1. **Linux test build broken** — `runner_test.go` needs `//go:build windows` tag 2. **File-size limits exceeded** — `operations.go` (486 lines), `jobs_view.go` (415 lines) See ROADMAP.md for details. --------- Co-authored-by: mixeme <mix.public@ya.ru> Reviewed-on: #1
33 lines
886 B
Go
33 lines
886 B
Go
//go:build !windows && !linux
|
|
|
|
package autostart
|
|
|
|
import "fmt"
|
|
|
|
type otherManager struct{}
|
|
|
|
// New returns the stub autostart Manager for unsupported platforms.
|
|
func New() Manager { return otherManager{} }
|
|
|
|
func (otherManager) Set(enabled bool, executablePath, iconPath string) error {
|
|
return SetAutostart(enabled, executablePath, iconPath)
|
|
}
|
|
|
|
func (otherManager) Status(expectedEnabled bool, executablePath string) (bool, string) {
|
|
return AutostartStatus(expectedEnabled, executablePath)
|
|
}
|
|
|
|
func SetAutostart(enabled bool, executablePath string, iconPath string) error {
|
|
if !enabled {
|
|
return nil
|
|
}
|
|
return fmt.Errorf("autostart is not implemented for this platform")
|
|
}
|
|
|
|
func AutostartStatus(expectedEnabled bool, executablePath string) (bool, string) {
|
|
if !expectedEnabled {
|
|
return true, "Autostart is off"
|
|
}
|
|
return false, "Autostart is not implemented for this platform"
|
|
}
|