Dear Airflow Community, I am excited to announce that the Apache Airflow Go SDK `v1.0.0-beta4` is available for testing! This is a beta release, so do not run it in production. It may contain significant issues.
The headline of this beta: **you can now define an entire Dag in Go, with no Python file at all.** The schedule, the tasks, their options, the dependencies between them, branching, task groups and triggering another Dag are all written in Go. Airflow reads the compiled bundle like any other Dag file, so the Dag shows up in the UI, runs on its schedule, and the tasks pass values to each other through XCom. You will need Go 1.25 or later to build your Dags, and you can test them with Airflow 3.4.0beta2. To set up a Go SDK project, follow the Go SDK guide [1] or the API reference [2], and to set up the Airflow core beta it runs against, follow Rahul's 3.4.0beta2 announcement [3]. Please note that this beta carries a few API breaking changes from `v1.0.0-beta3`, made to improve the authoring experience. If you encounter any issue during setup or would like to provide feedback, please discuss in the `#sig-lang-sdks` Slack channel [4]. Many thanks to everyone who wrote or reviewed the Go SDK changes that went into this beta. Special thanks to two community contributors, PoAn Yang (@FrankYang0529) and Henry Chen (@henry3260), who carried much of the work. [1] Go SDK guide: http://apache-airflow-docs.s3-website.eu-central-1.amazonaws.com/docs/apache-airflow/stable/authoring-and-scheduling/language-sdks/go.html [2] API reference on pkg.go.dev (module checksum: `h1:V8iRSNY14qE4hucGyU3OFFroEz61c7UFKaDPSkUiNws=`): https://pkg.go.dev/github.com/apache/airflow/[email protected] [3] Apache Airflow 3.4.0beta2 is available for testing: https://lists.apache.org/thread/5rks8xc05zfbp8b6dndqfrhkrs9g6s4z [4] `#sig-lang-sdks` Slack channel: https://apache-airflow.slack.com/archives/C08UCFRNAD8 Best regards, Jason
