Repository navigation
Releases: bindreams/goetia
Release list
v0.2.0
What's Changed
- chore(deps): update rust crate clap to v4.6.7 by @renovate[bot] in #43
- chore(deps): update rust crate rand to v0.10.3 by @renovate[bot] in #44
- chore(deps): update rust crate skuld to v0.3.1 by @renovate[bot] in #45
- chore(deps): update astral-sh/setup-uv action to v10.2.0 by @renovate[bot] in #46
- chore(deps): update rust crate thiserror to v2.0.21 by @renovate[bot] in #47
- chore(deps): update dependency prek to v0.5.4 by @renovate[bot] in #48
- chore(deps): update dtolnay/rust-toolchain digest to 89b1218 by @renovate[bot] in #53
- docs: add project CLAUDE.md (pre-v1 version-support rule) by @bindreams in #54
- chore(deps): update dependency prek to v0.5.5 by @renovate[bot] in #55
- chore(deps): update github actions by @renovate[bot] in #56
- chore(deps): update astral-sh/setup-uv action to v10.3.0 by @renovate[bot] in #57
- chore(deps): update dtolnay/rust-toolchain digest to b725eda by @renovate[bot] in #58
- fix(shim): stop unit tests writing the Windows Event Log by @bindreams in #50
- fix(launchd): refuse a changed spec over a loaded job by @bindreams in #82
- ci(release): publish to crates.io via trusted publishing by @bindreams in #87
- fix(systemd): do not check existing cwd/log directories at install by @bindreams in #88
- feat(cli): add daemon kill by @bindreams in #85
- chore(deps): update dependency prek to v0.5.6 by @renovate[bot] in #93
- fix(spec): refuse restart: always for the scm backend by @bindreams in #83
- feat(shim): transparent adapter, SCM recovery actions do every restart by @bindreams in #90
- fix(scm): a --timeout over ~49.7 days no longer expires early by @bindreams in #95
Full Changelog: v0.1.0...v0.2.0
v0.1.0
A cross-platform CLI and library that installs system daemons described in a
goetia.yaml manifest as native services: systemd on Linux, launchd on macOS,
and the Service Control Manager on Windows.
This is the first release. Everything documented in the README — the
manifest's interpolation syntax, the .env grammar, the --json document, and
the exit codes — is pre-1.0 and may still change between releases. Pin a
specific released version, or a specific commit if working ahead of one.
goetia requires systemd 242+ (2019) on Linux, and refuses to act on an older
one before writing or running anything.
Binaries below are published for five targets, with SHA256SUMS and a sigstore
attestation bundle. The crate is on crates.io.
What's Changed
- feat: goetia.yaml spec types, parsing, resolution, and validation by @bindreams in #1
- test: marker inertness probe by @bindreams in #2
- chore: pin GitHub Action digests and bump them with Renovate by @bindreams in #3
- chore: scaffold backend modules and the shared Identity type by @bindreams in #4
- chore(deps): update dependency prek to v0.4.14 by @renovate[bot] in #6
- feat: artifact-level and spec-level diff rendering by @bindreams in #8
- feat: canonical metadata blob encoding by @bindreams in #9
- chore(deps): update actions/checkout action to v7 by @renovate[bot] in #11
- feat: shared install decision function by @bindreams in #12
- feat: SCM registration builder by @bindreams in #13
- feat: systemd unit generator by @bindreams in #14
- feat: launchd plist generator by @bindreams in #15
- fix: reject trailing backslashes and XML noncharacters before emission by @bindreams in #16
- fix: SCM registration builder review findings by @bindreams in #17
- feat: ServiceManager trait, conformance suite, and CLI by @bindreams in #19
- fix: resolve paths against an absolute base dir so blobs stay decodable by @bindreams in #20
- feat: launchd backend (effectful, macOS) by @bindreams in #21
- feat: SCM backend (effectful, Windows, type: managed) by @bindreams in #22
- fix: report unreadable services once, not per service by @bindreams in #23
- feat: systemd backend (effectful, Linux) by @bindreams in #24
- chore(deps): update actions/upload-artifact action to v7 by @renovate[bot] in #18
- chore(deps): update rand to 0.10 and follow its RngExt move by @bindreams in #25
- fix(deps): update rust crates by @renovate[bot] in #26
- feat: goetia-shim (Windows service host) and the type: simple path by @bindreams in #27
- fix: launchd start must not be fooled by a stale job holding the label by @bindreams in #28
- feat: .env interpolation, --json for list/status, and one exit-code vocabulary by @bindreams in #30
- fix: report daemons goetia cannot read instead of omitting them by @bindreams in #31
- fix(deps): update rust crate cosca to 0.3 by @renovate[bot] in #32
- ci: the v0.1.0 release pipeline by @bindreams in #33
- fix: reject an explicit YAML null everywhere in the manifest by @bindreams in #35
- feat: per-backend manifest overrides by @bindreams in #34
- chore(deps): replace serde_yaml_ng with yaml_serde by @bindreams in #37
- fix(deps): update rust crate cosca to 0.4 by @renovate[bot] in #38
- chore(deps): update astral-sh/setup-uv action to v10.1.0 by @renovate[bot] in #40
- feat: start waits for the service manager, bounded by --timeout by @bindreams in #39
- chore(deps): update dependency prek to v0.5.3 by @renovate[bot] in #29
- chore: auto-merge non-major bumps to the version-pinned CI tools too by @bindreams in #41
- fix(shim): make the daemon's waiter thread before spawning it by @bindreams in #42
New Contributors
- @bindreams made their first contribution in #1
- @renovate[bot] made their first contribution in #6
Full Changelog: https://github.com/bindreams/goetia/commits/v0.1.0