Skip to content

Java SDK: Rename annotation namespace from Builder to Airflow - #74604

Merged
jason810496 merged 1 commit into
apache:mainfrom
jason810496:refactor/java-sdk/airflow-annotation-namespace
Oct 13, 2026
Merged

jason810496 merged 1 commit into
apache:mainfrom
jason810496:refactor/java-sdk/airflow-annotation-namespace

Conversation

@jason810496

Copy link
Copy Markdown
Member

Why

@Airflow.* makes it clear that they declare Airflow Dags and tasks.

What

  • Rename the annotation container org.apache.airflow.sdk.Builder to org.apache.airflow.sdk.Airflow.
// Before
@Builder.Dag(id = "my_pipeline", schedule = "@daily")
public class MyPipeline {
  @Builder.Task(id = "extract", retries = 2)
  public long extract(Client client) { ... }

  @Builder.Deps
  static class Wiring implements MyPipelineDeps { ... }
}

// After
@Airflow.Dag(id = "my_pipeline", schedule = "@daily")
public class MyPipeline {
  @Airflow.Task(id = "extract", retries = 2)
  public long extract(Client client) { ... }

  @Airflow.Deps
  static class Wiring implements MyPipelineDeps { ... }
}
  • The same rename applies to @Airflow.If, @Airflow.Switch, @Airflow.TaskGroup and @Airflow.TaskHandler.
  • The generated <Class>Builder class and its build() method do not change.
  • Rename BuilderProcessor to AirflowProcessor, and its test to match.
  • Update the user docs, README, module docs, examples, e2e and k8s test bundles. ADRs are left as historical records.

Was generative AI tooling used to co-author this PR?
  • Yes (please specify the tool below)

Generated-by: Claude Code (Opus 5.5) following the guidelines

Co-Authored-By: Claude <noreply@anthropic.com>
@jason810496
jason810496 merged commit d479721 into apache:main Oct 13, 2026
100 of 101 checks passed
@jason810496
jason810496 deleted the refactor/java-sdk/airflow-annotation-namespace branch October 13, 2026 17:57
@github-actions

Copy link
Copy Markdown
Contributor

Backport successfully created: v3-4-test

Note: As of Merging PRs targeted for Airflow 3.X
the committer who merges the PR is responsible for backporting the PRs that are bug fixes (generally speaking) to the maintenance branches.

In matter of doubt please ask in #release-management Slack channel.

Status Branch Result
✅ v3-4-test PR Link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants