On the other hand, durable execution in dbos is implemented in libraries so you have different features for different languages (the Go one doesn't support SQLite as a backend for example while the Python one does), whereas Temporal and Restate are not embedded like this.
go-workflows has always been the good alternative, but I’m sure dbos is a bit better supported. Dbos always had some weird gaps (I don’t remember why exactly, I just remember saying “oh well I can’t use this then” more than once), but maybe they’ll close them with the go sdk
See "DBOS vs. other systems" on the github repository page[1]
1: https://github.com/dbos-inc/dbos-transact-golang?tab=readme-...
DagGo is a type based workflow tool with observably written in Go. Jobs are compile time safe. I’m planning to bring it to feature parity with tools like Dagster over the next few months.
I've used it pretty heavily in production, ~30m workflows of various types from various projects through it at this point. No capacity to support it as OSS though, and my internal persistence backend isn't easily extricable from monorepo, but it's just an interface with conformance tests.