|
| 1 | +# Module sdk |
| 2 | + |
| 3 | +<!-- |
| 4 | + Licensed to the Apache Software Foundation (ASF) under one |
| 5 | + or more contributor license agreements. See the NOTICE file |
| 6 | + distributed with this work for additional information |
| 7 | + regarding copyright ownership. The ASF licenses this file |
| 8 | + to you under the Apache License, Version 2.0 (the |
| 9 | + "License"); you may not use this file except in compliance |
| 10 | + with the License. You may obtain a copy of the License at |
| 11 | +
|
| 12 | + http://www.apache.org/licenses/LICENSE-2.0 |
| 13 | +
|
| 14 | + Unless required by applicable law or agreed to in writing, |
| 15 | + software distributed under the License is distributed on an |
| 16 | + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| 17 | + KIND, either express or implied. See the License for the |
| 18 | + specific language governing permissions and limitations |
| 19 | + under the License. |
| 20 | +--> |
| 21 | + |
| 22 | +The Apache Airflow Java SDK — author and run Airflow task implementations in JVM languages. |
| 23 | + |
| 24 | +## Language SDK compatibility matrix |
| 25 | + |
| 26 | +The table below is generated from `java-sdk/capabilities.yaml` and shows which Airflow Language SDK |
| 27 | +conformance dimensions the Java SDK currently supports. The normative meaning of each dimension is |
| 28 | +defined in the Language SDK conformance specification |
| 29 | +(`contributing-docs/30_new_language_sdk.rst`). |
| 30 | + |
| 31 | +<!-- BEGIN AUTO-GENERATED LANG-SDK COMPAT MATRIX --> |
| 32 | + |
| 33 | +*Min. Airflow version: 3.3 · supervisor schema: 2026-06-16* |
| 34 | + |
| 35 | +| Dimension | Tier | Supported | Since | Notes | |
| 36 | +|---|---|---|---|---| |
| 37 | +| **TaskInstance states** | | | | | |
| 38 | +| state: `success` | MUST | ✓ | 3.3 | | |
| 39 | +| state: `failed` | MUST | ✓ | 3.3 | | |
| 40 | +| state: `up_for_retry` | MUST | ✓ | 3.3 | RetryTask | |
| 41 | +| state: `skipped` | SHOULD | ✗ | – | runtime does not emit TaskState skipped yet | |
| 42 | +| state: `deferred` | MAY | ✗ | – | runtime does not emit DeferTask yet | |
| 43 | +| state: `up_for_reschedule` | MAY | ✗ | – | runtime does not emit RescheduleTask yet | |
| 44 | +| state: `awaiting_input` | MAY | ✗ | – | runtime does not emit AwaitInputTask yet | |
| 45 | +| state: `removed` | MAY | ✓ | 3.3 | | |
| 46 | +| **Runtime capabilities** | | | | | |
| 47 | +| capability: `mixed-lang-stub-target` | MUST | ✓ | 3.3 | @task.stub | |
| 48 | +| capability: `task-logging` | MUST | ✓ | 3.3 | SLF4J + JPL bridged to the task log | |
| 49 | +| capability: `xcom-read-write` | MUST | ✓ | 3.3 | | |
| 50 | +| capability: `connection-read` | MUST | ✓ | 3.3 | | |
| 51 | +| capability: `variable-read-write` | MUST | ✗ | – | getVariable only; no write over the comm socket yet | |
| 52 | +| capability: `self-contained-bundle` | MUST | ✓ | 3.3 | Airflow metadata embedded in the jar artifact | |
| 53 | +| capability: `task-state-store` | MAY | ✗ | – | no task-facing state-store API yet | |
| 54 | +| capability: `asset-state-store` | MAY | ✗ | – | no task-facing state-store API yet | |
| 55 | +| capability: `asset-event-emit` | MAY | ✗ | – | runtime does not emit asset events yet | |
| 56 | +| capability: `asset-event-read` | MAY | ✗ | – | no task-facing asset-event API yet | |
| 57 | +| **Native-Dag authoring** | | | | | |
| 58 | +| capability: `native-dag-authoring` | SHOULD | ✗ | – | native Dag authoring not implemented yet | |
| 59 | +| capability: `task-args` | MUST † | n/a | – | | |
| 60 | +| capability: `dag-params` | MUST † | n/a | – | | |
| 61 | +| capability: `taskflow-dependencies` | MUST † | n/a | – | | |
| 62 | +| capability: `branching` | SHOULD † | n/a | – | | |
| 63 | +| capability: `dag-test` | SHOULD † | n/a | – | | |
| 64 | +| capability: `task-group` | MAY † | n/a | – | | |
| 65 | +| capability: `dynamic-task-mapping` | MAY † | n/a | – | | |
| 66 | +| capability: `asset-inlets-outlets` | MAY † | n/a | – | | |
| 67 | +| capability: `asset-scheduling` | MAY † | n/a | – | | |
| 68 | +| capability: `object-store` | MAY † | n/a | – | | |
| 69 | + |
| 70 | +*Marks: ✓ supported · ✗ not supported · n/a not applicable. A tier marked † applies only when `native-dag-authoring` is supported.* |
| 71 | + |
| 72 | +<!-- END AUTO-GENERATED LANG-SDK COMPAT MATRIX --> |
0 commit comments