Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Releases: apache/airflow

airflow-ctl/0.1.2

25 Feb 21:45
airflow-ctl/0.1.2
This tag was signed with the committer's verified signature.
bugraoz93 Bugra Ozturk
SSH Key Fingerprint: 0lg2Qt6+q7+MIM/dzQJeMSypS5E3oHDo5JdNE0ue1ao
Verified
Learn about vigilant mode.
42cb911
This commit was created on GitHub.com and signed with GitHub's verified signature.
GPG key ID: B5690EEEBB952194
Verified
Learn about vigilant mode.

Choose a tag to compare

PyPI: https://pypi.org/project/apache-airflow-ctl/0.1.2/
Docs: https://airflow.apache.org/docs/apache-airflow-ctl/0.1.2/
Release Notes: https://airflow.apache.org/docs/apache-airflow-ctl/0.1.2/release_notes.html

Thanks to all the contributors who made this possible. Next time, Release notes will be available through public documentation.

Significant Changes

  • Add XCom CLI commands to airflowctl (#61021)
  • Add auth list-envs command to list CLI environments and their auth status (#61426)
  • Add allowed_run_types to whitelist specific dag run types (#61833)
  • Default logical_date to now in airflowctl dagrun trigger to match UI behavior (#61047)

Bug Fixes

  • Allow listing dag runs without specifying dag_id (#61525)
  • Fix infinite password retry loop in airflowctl EncryptedKeyring initialization (#61329)
  • Fix airflowctl auth login reporting success when keyring backend is unavailable (#61296)
  • Fix airflowctl crash when incorrect keyring password is entered (#61042)
  • Strip api-url for airflowctl auth login which fails with trailing slash (#61245)
  • Fix airflow-ctl-tests files not triggering pre-commit integration tests (#61023)

Improvements

  • Print debug mode warning to stderr to avoid polluting stdout JSON output (#61302)
  • Refactor datamodel defaulting logic into dedicated method (#61236)
  • Alias run_after for XComResponse (#61443)
  • Add test for sensitive config masking in airflowctl (#60361)
Assets 11
Loading
SilentProgrammer-max and charlesdassonville reacted with thumbs up emoji
2 people reacted

Apache Airflow Helm Chart 1.19.0

17 Feb 19:54
helm-chart/1.19.0
This tag was signed with the committer's verified signature. The key has expired.
jedcunningham Jed Cunningham
GPG key ID: 0BB7163892A2E48E
Expired
Verified
Learn about vigilant mode.
f17d6ff
This commit was created on GitHub.com and signed with GitHub's verified signature.
GPG key ID: B5690EEEBB952194
Verified
Learn about vigilant mode.

Choose a tag to compare

Significant Changes

StatsD metrics aggregation now supports configurable TTL-enabled LRU cache to prevent memory growth in long-running daemons (#60933)

The Helm Chart now includes new configuration options for StatsD aggregation management:

  • statsd.cache.type - Enable TTL-enabled lru cache or random cache for metrics aggregation (default: lru)
  • statsd.cache.size - Maximum number of metrics to cache (default: 1000)
  • statsd.cache.ttl - Time-to-live for cached metrics in seconds (0s is TTL disabled) (default: 0s)

This feature addresses uncontrolled memory growth in StatsD daemons by automatically cleaning up stale or unused metric entries. When enabled, the cache uses both LRU (Least Recently Used) eviction and TTL (Time To Live) expiration to manage memory usage effectively.

To maintain backward compatibility, the default behaviour remains unchanged. Users experiencing memory growth issues with StatsD can enable this feature by setting statsd.cache.ttl to value higher than 0 in their Helm values.

Support for Multiple Celery Worker Sets in the Helm Chart (#58547)

This change introduces support for advanced Celery Workers topologies to Apache Airflow Helm Chart, enabling more flexible resource allocation and precise autoscaling configurations.

Flexible Worker Topologies: The new workers.celery.enableDefault flag allows users to configure a deployment consisting only of specialized worker sets defined in workers.celery.sets section.

Multi-Queue Autoscaling Support: Updates the KEDA ScaledObject generation to support comma-separated queue lists. By using the SQL IN (...) clause, we ensure that KEDA scales worker sets based on the precise aggregate workload of all their assigned queues.

Granular Configuration Overrides: This change allows for overwrite of any currently available workers configuration per worker set. For example, a user can enable KEDA globally, but explicitly disable it for a specific worker set that requires a static number of replicas.

Options to create a default user have been moved under the createUserJob section

Please update your configuration accordingly:

  • webserver.defaultUser section is now deprecated in favor of createUserJob (#59767)

The previous configuration options are still working but are deprecated and will be removed in a future version.

Note that the previous documentation described also the option apiServer.defaultUser, which was never implemented in the chart. The only supported option is now createUserJob. Using apiServer.defaultUser will raise an error.

Celery specific config options have been moved under the celery section in workers

Please update your configuration accordingly:

  • workers.replicas command is now deprecated in favor of workers.celery.replicas (#59730)
  • workers.revisionHistoryLimit command is now deprecated in favor of workers.celery.revisionHistoryLimit (#60056)
  • workers.args command is now deprecated in favor of workers.celery.args (#60163)
  • workers.livenessProbe section is now deprecated in favor of workers.celery.livenessProbe (#60186)
  • workers.updateStrategy section is now deprecated in favor of workers.celery.updateStrategy (#60351)
  • workers.strategy section is now deprecated in favor of workers.celery.strategy (#60354)
  • workers.podManagementPolicy section is now deprecated in favor of workers.celery.podManagementPolicy (#60359)
  • workers.persistence section is now deprecated in favor of workers.celery.persistence (#60238)

The previous configuration options are still working but are deprecated and will be removed in a future version.

Manual Service Account Token Volume configuration for pod-launching executors (#59156)

Added support for manual Service Account Token Volume configuration when using pod-launching executors
(CeleryExecutor, CeleryKubernetesExecutor, KubernetesExecutor, LocalKubernetesExecutor).
This implements defense-in-depth security with both ServiceAccount and Pod-level controls, providing
compatibility with security policies like Kyverno and enabling container-specific privilege assignment
following the Principle of Least Privilege.

Add imagePullSecrets option (#58094)

Add .Values.imagePullSecrets as the new mechanism for configuring registry credentials,
deprecating both .Values.registry.secretName and the automatic creation of the -registry secret from .Values.registry.connection.

Default Airflow image is updated to 3.1.7 (#61447)

The default Airflow image that is used with the Chart is now 3.1.7, previously it was 3.0.2.

Default git-sync image is updated to 4.4.2 (#54085)

The default git-sync image that is used with the Chart is now 4.4.2, previously it was 4.3.0.

New Features

  • Add PodDisruptionBudget for Dag Processor (#60294)
  • Add PodDisruptionBudget for Triggerer and Workers (#59068)
  • Add HorizontalPodAutoscaler (HPA) for API Server (#52392)
  • Add support for launching jobs with KubernetesJobOperator (#52024)
  • Add CronJob to clean old records in the database (#58155)

Improvements

  • Improve dag_bundle_config_list Configuration (#60645)
  • Add workers.celery.kerberosInitContainer & workers.kubernetes.kerberosInitContainer (#60751, #60427)
  • Add workers.celery.securityContexts & workers.kubernetes.securityContexts (#60396)
  • Add workers.celery.podManagementPolicy field (#60359)
  • Add workers.celery.strategy field (#60354)
  • Add workers.celery.updateStrategy field (#60351)
  • Add workers.celery.persistence section (#60238)
  • Add workers.celery.livenessProbe section (#60186)
  • Add workers.celery.args field (#60163)
  • Add workers.celery.command & workers.kubernetes.command (#60067)
  • Allow custom volumeClaimTemplates when logs.persistence.enabled is true (#60118)
  • Add checksum for JWT secret in API server and scheduler deployments (#60111)
  • Add workers.celery.revisionHistoryLimit field (#60056)
  • Add Redis StatefulSet persistentVolumeClaimRetentionPolicy support (#59955)
  • Add workers.celery.replicas field (#59730)
  • Add custom envs to database cleanup (#59804)
  • Extend airflow_ti_running metrics by scheduled, queued and deferred (#58819)
  • Create an explicit control for createUserJob (#56057)
  • Make cleanup cronjob conditional on kubernetes executor (#58695)
  • Add database cleanup options and remove deprecated securityContext field (#58663)
  • Add ability to disable API Server (#56493)
  • Add registry.secretNames and registry.connections options (#58094)
  • Allow custom labels in StatsD, redis and Dag Processor (#55832)
  • Allow setting restartPolicy for batch jobs in chart (#54354)
  • Add readiness and liveliness support for git sync relay sidecars (#50218)
  • Allow overriding schedulerName on worker/tasks pods (#53983)
  • Allow additional PodDisruptionBudget config properties (#58864)
  • Add EdgeExecutor to KEDA query (#55560)
  • Allow revisionHistoryLimit to be set to 0 (#60340)
  • Allow optional subPath for logs volume mount (#52350)
  • Move triggerer from pod-log-reader-role to pod-launcher-role (#56872)

Bug Fixes

  • Remove kedaNetworkPolicySelector from helpers (#61564)
  • Use the bitnamilegacy/postgresql image (#61156)
  • Fix Compatibility of Celery Worker Sets with Workers Separation (#60420)
  • Fix database cleanup cronjob ImagePullSecrets (#58626)
  • Remove workers.celery breaking change (#61049)
  • Fix missing templating in API Server extraInitContainers (#60812)
  • Fix securityContext.containers/ingress.apiServer in values.schema.json (#60575)
  • Remove unused containerLifecycleHooks field (#60239)
  • Remove unneeded logic in api-server (#60147)
  • Remove defaultUser from API Server in values.schema.json (#59762)
  • Isolate defaultUser handling in createUserJob (#59767)
  • Fix rendering condition of git_sync_ssh_key_volume (#59418)
  • Add watch for events to the Pod launcher role (#59080)
  • Ensure that git-sync actually runs when dags.gitSync.enabled=true and dags.persistence.enabled=true (#59123)
  • Don't add labels to non-existent configuration options (#59213)
  • Add log volume to init container for scheduler, triggerer and worker (#56418)
  • Correctly derive celery sync_parallelism from scheduler CPU limits (#58733)
  • Fix ingress notes (#59122)
  • Fix Liveness / Readiness / Startup probe path for Airflow 3.x (#58734)
  • Fix flower network policy condition when multiple executors (#58635)
  • Missing SCC Role bindings for redis and api-server (#57985)
  • Ensure graceful Redis shutdown(#58432)
  • Start Redis directly, not via shell (#58790)
  • Add missing airflow.fullname on kubernetes objects (#52953)
  • StatsD deployment volume mount without subpath for live reloading (#54986)
  • Fix KEDA query for Kubernetes Executor (#55559)
  • Add API Server config in k8s pod template (#53533)
  • Fix helm schema validation for executor value (#54682)
  • Correct watch verb quoting in Airflow Job Launcher Role (#53822)
  • Trim non-alphanumeric characters from the executor label (#53534)
  • Fix KEDA Query to Use executor Field Instead of queue for Multiple Executors (#52840)

Doc only changes

  • Document how to run the API server behind a reverse proxy (#61095)
  • Clarify ingress settings for Airflow 2 vs 3 in values.yaml (#60434)
  • Add database cleanup docs to Helm productions docs (#58707)
  • KEDA best practices + better documentation (#58246)
  • Update chart info about built-in secrets and environment variables (#58317)
  • Fix typo in PgBouncer section of the Production Guide (#56754)
  • Update webserver secr...
Read more
Loading
nico-arianto, oopjot, n-badtke-cg, ronaldorcampos, SilentProgrammer-max, and peter-cheon reacted with thumbs up emoji
6 people reacted

Apache Airflow 3.1.7

04 Feb 12:20
3.1.7
This tag was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.
83ff6ec
This commit was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.

Choose a tag to compare

PyPI: https://pypi.org/project/apache-airflow/3.1.7/
Docs: https://airflow.apache.org/docs/apache-airflow/3.1.7/
Release Notes: https://airflow.apache.org/docs/apache-airflow/3.1.7/release_notes.html
Docker Image: "docker pull apache/airflow:3.1.7"
Constraints: https://github.com/apache/airflow/tree/constraints-3.1.7

Significant Changes

No significant changes.

Bug Fixes

  • Fix JWT token generation with unset issuer/audience config (#61331)
  • Fix callback files losing priority during queue resort (#61232) (#61243)
  • Fix Dag callback for versioned bundles in the processor (#60734) (#61230)
  • Add 404 handling for non-existent Dag (#61131) (#61225)
  • Add guardrail to handle Dag deserialization errors in scheduler (#61162) (#61210)
  • Fix asset scheduling for stale Dags (#59337) (#60022) (#61106)
  • Fix unnecessary Dag version churn when Dag file paths change (#60799)
  • Fix missing warning when Bundle path may not be accessible to impersonated user (#60278)
  • Fix TriggerDagRunOperator deferring when wait_for_completion=False (#60052)
  • Fix NoneType error when updating serialized Dag (#56422)
  • Fix Pool API slots validation (#61071) (#61114)
  • Fix DagBag parsing by adding bundle_path temporarily to sys.path (#55894) (#61053)
  • Fix API to respect maximum page limit (#60989) (#61073)
  • Prevent Triggerer from crashing when a trigger event isn't serializable (#60152) (#60981)
  • Fix permissions on get_event_logs endpoint (#60936) (#60958)
  • Fix Dag access control for dag_id in query param (#60935) (#60959)
  • Fix root logger to use log_level instead of hardcoded INFO level (#60784) (#60970)
  • Fix Dag processor OOM by Avoid loading all TaskInstances when checking DagVersion in write_dag (#60937) (#60962)
  • Fix worker startup Dag load failures by rescheduling tasks instead of exiting (#59604) (#60926)
  • Fix permissions check in import error APIs (#60801) (#60884)
  • Fix refresh-token invalidation by logging out the user (#60781) (#60881)
  • Fix connection test API to restore masked password/extra from existing connections (#59643) (#60873)
  • Fix Dag processor overhead by applying gc.freeze (#60505) (#60845)
  • Fix Dag processor crashing due to MySQL deadlock errors (#60166) (#60418)
  • Ensure unique run_id across manually triggered Dags with schedules (#59477) (#60468)
  • UI: Avoid gantt annotation error during resize (#60877)
  • UI: Fix react apps plugins router (#61206)
  • UI: Reset pagination on search in all pages (#61169)
  • UI: Explicitly set UI table ordering (#60609) (#61216)
  • UI: Plugins pagination fix #61055 (#61059) (#61129)
  • UI: Fix ui get dags permission endpoint for user without Dag run permissions (#60979) (#60988)
  • UI: Convert Tasks Table from card to table mode (#60830) (#60874)
  • UI: Fix slow log scrolling for large task logs (#60806) (#60875)
  • UI: Grey out trigger button on API 403 (#60648) (#60777)
  • UI: Remove API error from disabling submit (#60473) (#60658)
  • UI: Added toasters for permission denied (#57966) (#58016) (#60646)
  • UI: Move row count and display toggle into DataTable (#57680) (#60639)
  • UI: Fix/backfill permission error handling (#60582) (#60587)
  • UI: Improve Dags Filter UI (#60346) (#60547)
  • UI: Update PoolBar to separate Scheduled and Deferred slots (#59270) (#60538)
  • UI: Correct the access for the externalLogUrl (#60412) (#60479)
  • UI: Fix gantt chart styling (#60347) (#60457)
  • UI: Reset pagination on DagList search (#60326) (#60336)
  • UI: Move dags list filters to buttongroups (#60298) (#60337)
  • UI: Fix table filters resetting when deleting a Dag (#60279) (#60287)
  • UI: Fix sidebar visibility issue when main content exceeds viewport height (#59660) (#60286)
  • UI: Add virtualization to grid view (#60241) (#60285)

Miscellaneous

Doc Only Changes

  • Fix minor display issue with migration to airflow 3 docs (#60749)
  • Fix airflow.utils.context.Context import path in Airflow 3 migration doc (#59937)
  • Add missing links to airflow.sdk classes and functions in public interface docs (#61005) (#61012)
  • Clarify BaseSensorOperator parameters in Sensors guide (#60275)
  • Fix docstring for RuntimeTaskInstance.xcom_pull (#60220) (#60252)
  • Fix broken syntax highlighting in AIR rules note section (#59188)
Loading
nico-arianto, justinpakzad, FemiEngr, Ea3124, showmidelo, andriiroiko, sarth-akvaish, and DesarrollosLascondes reacted with thumbs up emoji
8 people reacted

Apache Airflow 3.1.6

13 Jan 11:08
3.1.6
This tag was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.
d6a009b
This commit was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.

Choose a tag to compare

PyPI: https://pypi.org/project/apache-airflow/3.1.6/
Docs: https://airflow.apache.org/docs/apache-airflow/3.1.6/
Release Notes: https://airflow.apache.org/docs/apache-airflow/3.1.6/release_notes.html
Docker Image: "docker pull apache/airflow:3.1.6"
Constraints: https://github.com/apache/airflow/tree/constraints-3.1.6

Significant Changes

is_authorized_hitl_task() method now available in auth managers(#59399).

This method is now available in auth managers to check whether a user is authorized to approve a HITL task

proxy and proxies added to DEFAULT_SENSITIVE_FIELDS (#59688)

proxy and proxies have been added to DEFAULT_SENSITIVE_FIELDS in secrets_masker to treat proxy configurations as sensitive by default

Bug Fixes

  • Protect against hanging thread in aiosqlite 0.22+ (#60217) (#60245)
  • Fix log task instance sqlalchemy join query (#59973) (#60222)
  • Fix invalid uri created when extras contains non string elements (#59339) (#60219)
  • Fix operator template fields via callable serialization that causes unstable DAG serialization (#60065) (#60221)
  • Fix real-time extra links updates for TriggerDagRunOperator (#59507) (#60225)
  • Fix signal handling in triggerer job runner (#60190) (#60214)
  • Added state validation to delete dag run endpoint (#60195) (#60207)
  • Fix text overflow issue (#60080)
  • UI: Add toggle functionality to Dags state filters (#59089)
  • Fix deprecated_options entry for dag_file_processor_timeout (#59181) (#60162)
  • Fix ApprovalOperator with SimpleAuthManager when all_admins=True (#59399) (#60116)
  • Record missing ti_failure metrics for tasks (#59731) (#59964)
  • Fix missing TaskInstanceHistory on scheduler TI resets (#59639) (#59752)
  • Add proxy and proxies as sensitive fields in DEFAULT_SENSITIVE_FIELDS (#59688) (#59792)
  • Fix compat deprecation handling for [webserver] base_url (#59659) (#59781)
  • Fix Execution API refresh token (#58782) (#59713)
  • Fix eager-loading DagRun asset relationships before creating DagRunContext (#59714) (#59732)
  • Redact secrets in rendered templates properly when truncating it (#59566) (#59704)
  • Add Content-Type to request headers in Task SDK calls when missing (#59676) (#59687)
  • UI: Fix Expand+Collapse Translation Key (#59672) (#59674)
  • Fix server context for connections (#59624) (#59652)
  • Fix clear task instance dialog tasks states (#59363) (#59580)
  • Add log record when listening dag is partitioned but run has no key (#59375) (#59582)
  • Fix Dag Processor logging crash (#59317) (#59581)
  • Flush session before processing Event Buffer in dag test (#59314) (#59559)
  • Add task group ID filtering support to task instance query (#58092) (#59511)
  • Fix message of _read_from_logs_server when status_code is 403 (#59489) (#59504)
  • Fix import errors not cleared for files without Dags (#58242) (#59500)
  • Fix backfill run_on_latest_version defaulting to False instead of True (#59304) (#59328)
  • Add toaster notifications for Connection Test (#59354) (#59368)
  • Fix .airflowignore negation not working in subfolders (#58740) (#59305)
  • Fix XCom key handling when keys contain special characters like slash (#58344) (#59311)
  • Fix an odd import of pendulum from sqlalchemy_utils instead of elsewhere. (#59258) (#59265)
  • Fix links for DurationChart (#59095) (#59237)
  • Fix misleading error message when GitHook creation fails (#59236)
  • Show asset extra in asset list (#59195) (#59201)
  • Prevent dag processor crash on encountering excel files in the Dag directory (#59069) (#59170)
  • Fix DagRun.queued_at not updating when clearing (#59066) (#59177)
  • Fix Rendered Templates not showing dictionary items (#58071) (#59176)
  • UI: Change task log source display to hidden by default (#58749) (#59045)
  • Fix button to go back from FAB iframe (#58997) (#59007)
  • Fix task instance and run tooltips in Grid view (#58359) (#59013)

Miscellaneous

  • Don't depend upon FastAPI inside Task-SDK client (#59250) (#59257)
  • Align the term Dag in all translations (#59155)

Doc Only Changes

Loading
nico-arianto, pedro-cf, matthieuauger, bastienmenis, and ronaldorcampos reacted with hooray emoji pedro-cf, iretiola-007, matthieuauger, SonuShaikh, and ronaldorcampos reacted with heart emoji
7 people reacted

Apache Airflow Ctl (airflowctl) 0.1.1

13 Jan 21:57
airflow-ctl/0.1.1
This tag was signed with the committer's verified signature.
potiuk Jarek Potiuk
SSH Key Fingerprint: ZiIaAP4ThLajjRCLug0hAmVxXndi2Svyzy/6Z2jgTkY
Verified
Learn about vigilant mode.
d950fd8
This commit was created on GitHub.com and signed with GitHub's verified signature.
GPG key ID: B5690EEEBB952194
Verified
Learn about vigilant mode.

Choose a tag to compare

PyPI: https://pypi.org/project/apache-airflow-ctl/0.1.1/
Docs: https://airflow.apache.org/docs/apache-airflow-ctl/0.1.1/
Release Notes: https://github.com/apache/airflow/blob/airflow-ctl/0.1.1/airflow-ctl/RELEASE_NOTES.rst

Thanks to all the contributors who made this possible. Next time, Release notes will be available through public documentation.

Significant Changes

  • Make pause/unpause commands positional for improved CLI consistency (#59936)
    Provides separate airflowctl dags pause/unpause dag_id
  • Remove deprecated export functionality from airflowctl (#59850)
    airflowctl won't export from
  • Add team_name to connection commands (#59336)
    Team name feature added to connections command
  • Add team_id to variable commands (#57102)
  • Add pre-commit checks for airflowctl test coverage (#58856)
    Provided more coverage and further checks on integration tests to release with more confidence.
  • Display active DAG run count in header with auto-refresh support (#58332)
    active_runs_count has been added to the dags command.

Bug Fixes

  • Simplify airflowctl exception handling in safe_call_command (#59808)
  • Fix backfill default behavior for run_on_latest_version (#59304)
  • Update BulkDeleteAction to use generic typing (#59207)
  • Bump minimum supported prek version to 0.2.0 (#58952)
  • Fix RST formatting to ensure blank lines before bullet lists (#58760)
  • Update Python compatibility requirements and airflowctl documentation (#58653)
  • Consistently exclude unsupported Python 3.14 (#58657)
  • Improve cross-distribution dependency management (#58430)
  • Synchronize documentation between official and convenience source installs (#58379)
  • Add retry multiplier support (#56866)
  • Fix documentation issues for installing from source distributions (#58366)
  • Update pyproject.toml files to support pytest>=9.0.0 TOML syntax (#58182)
Loading
SonuShaikh and Rituahirwar reacted with thumbs up emoji
2 people reacted

Apache Airflow 3.1.5

10 Dec 09:11
3.1.5
This tag was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.
a42f2fb
This commit was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.

Choose a tag to compare

PyPI: https://pypi.org/project/apache-airflow/3.1.5/
Docs: https://airflow.apache.org/docs/apache-airflow/3.1.5/
Task SDK Docs: https://airflow.apache.org/docs/task-sdk/1.1.5/
Release Notes: https://airflow.apache.org/docs/apache-airflow/3.1.5/release_notes.html
Docker Image: "docker pull apache/airflow:3.1.5"
Constraints: https://github.com/apache/airflow/tree/constraints-3.1.5

Significant Changes

No significant changes.

Bug Fixes

Handle invalid token in JWTRefreshMiddleware (#56904)
Fix inconsistent Dag hashes when template fields contain unordered dicts (#59091) (#59175)
Fix assets used only as inlets being incorrectly orphaned (#58986)
Fix exception when logging stdout with a custom %-format string (#58963)
Fix backfill max_active_runs race condition with concurrent schedulers (#58935)
Fix LocalExecutor memory spike by applying gc.freeze (#58934)
Fix string to datetime pydantic conversion (#58916)
Fix deadlines being incorrectly pruned for DAG runs with the same run_id (#58910)
Fix handling of pre-AIP-39 DAG runs (#58773)
Mask secrets properly when using deprecated import path (#58726)
Preserve Asset.extra when using AssetAlias (#58712)
Fix timeout_after in run_trigger method of TriggerRunner (#58703)
Fix connection retrieval from secrets backend without conn_type (#58664)
Fix task retry logic to respect retries for all exit codes (#58478)
Respect default_args in DAG when set to a "falsy" value (#58396)
Fix airflow config list output for multi-line values (#58378)
Fix TriggerDagRunOperator stuck in deferred state with reset_dag_run=True (#58333)
Fix HITLTrigger params serialization (#58297)
Fix atomicity issue in SerializedDagModel.write_dag preventing orphaned DAG versions (#58281)
Mask kwargs when illegal arguments are passed (#58283)
Fix supervisor communications not reconnecting when using dag.test() (#58266)
Fix supervisor communications and logs not reconnecting in task subprocesses (#58263)
Make pool description optional when patching pools (#58169)
Fix check_files.py script after source tarball was renamed (#58192)
Fix db cleanup logging behavior and docstrings (#58523)
Fix Asset URI normalization for user info without password (#58485)
UI: Fix object rendering in Human-in-the-Loop (HITL) interface (#58611)
UI: Fix "Consuming Tasks" section not in asset header (#58060)
UI: Fix timezone string parsing to use dayjs correctly (#57880)
UI: Ensure task instance endDate is not null (#58435)
UI: Fix trigger parameter field showing as dict when param.value is null (#58899)
UI: Remove unnecessary refresh state consumption for DAG header (#58692)
UI: Fix mobile responsiveness of Dashboard sections (#58853)
UI: Fix incorrect backfill duration calculation in Grid view (#58816)
UI: Redact secrets in rendered templates to not expose them in UI (#58772)
UI: Add fallback value of 1 for number of DAG runs in Grid view (#58735)
UI: Update refresh token flow (#58649)
UI: Fix 404 handling with fallback route for invalid URLs (#58629)
UI: Fix excessive database queries in UI grid endpoint by adding query count guard (#57977, #58632)
UI: Fix DAG documentation markdown display issue (#58627)
UI: Fix duration chart duration format (#58564)
UI: Fix TaskGroup nodes not being properly highlighted when selected in Graph view (#58559)
UI: Fix tag filter with special characters (#58558)
UI: Fix group task instance tab memory leak (#58557)
UI: Fix popup automatically closing when DAG run completes (#58538)
UI: Fix operator extra links not appearing on failed tasks (#58508)
UI: Fix TypeError in parseStreamingLogContent for non-string data (#58399)
UI: Fix Dag tag order (#58904)

Miscellaneous

Do not remove .pyc and .pyo files after building Python (#58947)
Improve cross-distribution dependency management (#58472)
Bump glob from 10.4.5 to 10.5.0 in simple auth manager UI (#58463)
Bump glob in React core UI (#58461)

Doc Only Changes

Fix Chinese (Traditional) translations for trigger-related terminology (#58989)
Close translation gaps in German (#58971)
Add missing Polish translations (#58939)
Clarify that Connection extra JSON masking is keyword-dependent (#58587)
Add migration guide for Airflow 2 users accessing database in tasks (#57479)
Update UIAlert import path and usage for v3 (#58891)
Add clarifying documentation for TaskGroup parameters (#58880)
Enhance asset extra field documentation (#58830)
Update mask_secret documentation to use the latest import path (#58534)
Improve disable_bundle_versioning configuration documentation (#58405)
Fix documentation for installing from sources (#58373)
Fix broken link on installing-from-sources page (#58324)
Add missing DAG run table translations (#58572)

Loading
nico-arianto, showmidelo, tvc12, ptsonev, kairos03, DesayoEm, zhudajing, georgeshreeve-mongodb, liuchenyue-dev, kkumar-chwy, and Epico1525 reacted with rocket emoji
11 people reacted

Apache Airflow 3.1.3

14 Nov 14:47
3.1.3
This tag was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.
df94ff6
This commit was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.

Choose a tag to compare

PyPI: https://pypi.org/project/apache-airflow/3.1.3/
Docs: https://airflow.apache.org/docs/apache-airflow/3.1.3/
Release Notes: https://airflow.apache.org/docs/apache-airflow/3.1.3/release_notes.html
Docker Image: "docker pull apache/airflow:3.1.3"
Constraints: https://github.com/apache/airflow/tree/constraints-3.1.3

Significant Changes

Fix Connection & Variable access in API server contexts (plugins, log handlers)(#56583)

Previously, hooks used in API server contexts (plugins, middlewares, log handlers) would fail with an ImportError
for SUPERVISOR_COMMS, because SUPERVISOR_COMMS only exists in task runner child processes.

This has been fixed by implementing automatic context detection with three separate secrets backend chains:

Context Detection:

  1. Client contexts (task runner in worker): Detected via SUPERVISOR_COMMS presence
  2. Server contexts (API server, scheduler): Explicitly marked with _AIRFLOW_PROCESS_CONTEXT=server environment variable
  3. Fallback contexts (supervisor, unknown contexts): Neither marker present, uses minimal safe chain

Backend Chains:

  • Client: EnvironmentVariablesBackend - ExecutionAPISecretsBackend (routes to Execution API via SUPERVISOR_COMMS)
  • Server: EnvironmentVariablesBackend - MetastoreBackend (direct database access)
  • Fallback: EnvironmentVariablesBackend only (+ external backends from config like AWS Secrets Manager, Vault)

The fallback chain is crucial for supervisor processes (worker-side, before task runner starts) which need to access
external secrets for remote logging setup but should not use MetastoreBackend (to maintain worker isolation).

Architecture Benefits:

  • Workers (supervisor + task runner) never use MetastoreBackend, maintaining strict isolation
  • External secrets backends (AWS Secrets Manager, Vault, etc.) work in all three contexts
  • Supervisor falls back to Execution API client for connections not found in external backends
  • API server and scheduler have direct database access for optimal performance

Impact:

  • Hooks like GCSHook, S3Hook now work correctly in log handlers and plugins
  • No code changes required for existing plugins or hooks
  • Workers remain isolated from direct database access (network-level DB blocking fully supported)
  • External secrets work everywhere (workers, supervisor, API server)
  • Robust handling of unknown contexts with safe minimal chain

See: #56120 , #56583 , #51816 __

Remove insecure dag reports API endpoint that executed user code in API server (#56609)

The /api/v2/dagReports endpoint has been removed because it loaded user DAG files directly in the API server process,
violating Airflow's security architecture. This endpoint was not used in the UI and had no known consumers.
Use the airflow dags report CLI command instead for DAG loading reports.

Bug Fixes

Miscellaneous

  • UI: Add resize functionality to DAG run and task instance notes (#57897) (#58068)
  • Add Taiwan translation for UI (#58121)
  • UI: Shorten German translation of Asset in navigation (#57671) (#57690)
  • Fix code formatting via ruff preview (#57641) (#57670)
  • Remove remnants from unlimited parallelism in local executor (#57579) (#57644)

Doc Only Changes

  • Add learning from Airflow 3 migration guide (#57989) (#58083)
  • Fix duplicate mention of 'DAGs' and 'tasks' in overview documentation (#57524) (#57793)
  • Document asset event extra storage behavior (#57727) (#57734)
Loading
github-actions[bot], ManuelVenturaNeto, raphaelauv, lenixvillalobos-wq, ido177, and jhgoebbert reacted with thumbs up emoji github-actions[bot], ManuelVenturaNeto, lenixvillalobos-wq, and ido177 reacted with hooray emoji nrobinson-intelycare, patzm, github-actions[bot], ManuelVenturaNeto, akhmadv, royzhong7070, lenixvillalobos-wq, obarisk, BruAPAHE, and ido177 reacted with rocket emoji
12 people reacted

Apache Airflow 3.1.2

05 Nov 16:03
3.1.2
This tag was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.
7cbc8bf
This commit was signed with the committer's verified signature. The key has expired.
ephraimbuddy Ephraim Anierobi
GPG key ID: 08A7DC916B8EF080
Expired
Verified
Learn about vigilant mode.

Choose a tag to compare

PyPI: https://pypi.org/project/apache-airflow/3.1.2/
Docs: https://airflow.apache.org/docs/apache-airflow/3.1.2/
Release Notes: https://airflow.apache.org/docs/apache-airflow/3.1.2/release_notes.html
Docker Image: "docker pull apache/airflow:3.1.2"
Constraints: https://github.com/apache/airflow/tree/constraints-3.1.2

Significant Changes

No significant changes.

Bug Fixes

  • Fix import error when upgrading structlog to 25.5.0+ (#57335)
  • Fix connection retrieval in DagProcessorManager for bundle initialization (#57459)
  • Fix incorrect task instance counts displayed in task group headers (#55670)
  • Fix task retry execution after tasks are killed by external signals (#55767)
  • Fix triggerer errors after Airflow 2 to 3 migration (#55884)
  • Fix tasks unable to access triggering_user_name context variable (#56193)
  • Fix outlet event extra data being empty in task instance success listener callbacks (#57031)
  • UI: Fix panel button spacing and alignment issues (#57062)
  • UI: Fix broken grid view links for tasks with retries (#57097)
  • Fix DAG processor crash when renaming DAG tag case on MySQL (#57113)
  • Fix iteration errors when using ObjectStoragePath (#57156)
  • Fix auto-refresh not working on Required Actions page (#57207)
  • Fix DAG processor crash by ignoring callbacks from other bundles (#57330)
  • Fix asset name text overflow in DAG list view (#57363)
  • Fix memory leak caused by repeated SSL context creation in API client (#57374)
  • Fix performance issues loading DAG list page with many DAGs (#57444)
  • Fix text selection jumping unexpectedly in log viewer (#57453)
  • Fix DAG documentation pane not scroll-able when content is too long (#57518)
  • Fix incorrect macro listings in template reference documentation (#57529)
  • Fix Human-In-The-Loop operators failing when using notifiers (#57551)
  • Fix n+1 query issues in XCom API endpoints (#57554)
  • Fix n+1 query issues in Event Logs API endpoint (#57558)
  • Fix n+1 query to fetch tags in the dags list page (#57570)
  • Optimize database query to prevent "Out of sort memory" errors with many DAG versions (#57042)
  • Optimize DAG list query for users with limited access (#57460)
  • Optimize dynamic DAG updates to avoid loading large serialized DAGs (#57592)
  • Reduce serialized DAG size by optimizing callback serialization in default_args (#57397)

Miscellaneous

  • UI: Improve global navigation visual design, interaction, and accessibility (#57565)
  • UI: Add button to download all task logs at once (#56771)
  • UI: Add timestamp column to XCom viewer and standardize task instance columns (#57447)
  • UI: Improve highlighting of selected task instances and edges in grid view (#57560)
  • Improve retry logic by migrating from retryhttp to tenacity library (#56762)
  • Improve exception logging for task instance heartbeat failures (#57179)
  • Add Content-Type header to Task SDK API requests (#57386)
  • Log execution API server URL at task startup (#57409)
  • Reduce log noise by changing "Connection not found" from error to debug level (#57548)
  • Add task_display_name alias in event log API responses (#57609)
  • Improve Pydantic model validation strictness in serialization (#57616)
  • Fix systemd service files issues (#57231)

Doc Only Changes

  • Improve plugin system documentation for clarity and completeness (#57068)
  • Improve clarity on api workers recommendation in docs (#57404)
  • Fix instance_name in UI docs (#57523)
  • Fix airflow macros list in template document (#57529)
Loading
showmidelo, pedro-cf, loganwang007, github-actions[bot], royzhong7070, joshtree41, hiteshlalwani, ido177, and melicheradam reacted with thumbs up emoji github-actions[bot], happyhil, ruupert, hiteshlalwani, and fineeun reacted with hooray emoji wesleyscholl, kalexnolasco, and noah-gil reacted with heart emoji github-actions[bot], nico-arianto, and ido177 reacted with rocket emoji
16 people reacted

Airflow 3.1.1

27 Oct 13:51
3.1.1
This tag was signed with the committer's verified signature.
kaxil Kaxil Naik
GPG key ID: 6674E08AD7DE406F
Verified
Learn about vigilant mode.

Choose a tag to compare

PyPI: https://pypi.org/project/apache-airflow/3.1.1/
Docs: https://airflow.apache.org/docs/apache-airflow/3.1.1/
Release Notes: https://airflow.apache.org/docs/apache-airflow/3.1.1/release_notes.html
Sources: https://airflow.apache.org/docs/apache-airflow/3.1.1/installation/installing-from-sources.html
Docker Image: "docker pull apache/airflow:3.1.1"
Constraints: https://github.com/apache/airflow/tree/constraints-3.1.1

Bug Fixes

  • Fix execution failures with NULL dag_run.conf during upgrades from earlier versions (#56729)
  • Fix memory leak in remote logging connection cache (#56695)
  • Fix DAG processor crash with pre-import module optimization enabled (#56779)
  • Fix scheduler crash with email notifications (#56431)
  • Fix scheduler crash during 3.0 to 3.1 migration when retry_delay is None (#56236)
  • Fix task retries executing wrong method after deferred state (#56737)
  • Fix retry callbacks not executing for externally killed tasks (#56607)
  • Fix custom timetable generate_run_id not called for manual triggers (#56699)
  • Fix KeyError when accessing retry_delay on MappedOperator without explicit value (#56605)
  • Fix task-sdk connection error handling to match airflow-core behavior (#56653)
  • Fix topological sort for Grid View (#56963)
  • Fix get_ti_count and get_task_states access in callback requests (#56860)
  • Fix Connection or Variable access in Server context (#56602)
  • Fix .airflowignore order precedence (#56832)
  • Fix migration errors for Pydantic 2.12.0 compatibility (#56581)
  • Fix: Correctly parse JSON for --dag_run_conf in airflow dags backfill CLI (#56599)
  • UI: Fix note modal does not change markdown text after change (#56092)
  • UI: Fix Grid for cleared runs when tasks were removed (#56297)
  • UI: Fix log text selection contrast in light mode (#56893)
  • UI: Fix Advanced Search button overlap in DAG List View (#56777)
  • UI: Fix view for many DAG tags (#55604)
  • UI: Fix asset name text overflow in DAGs list view (#55914)
  • UI: Fix auto refresh when only 1 dag run is running (#56649)
  • UI: Fix UI keeps poking pools API when no permission (#56626)
  • UI: Fix multi-line drag selection in task log view (#56300)
  • UI: Fix task named 'root' causes blue screen on hover (#56926)
  • UI: Fix cron expression display for Day-of-Month and Day-of-Week conflicts (#56255)
  • UI: Fix Grid view performance issues with SerializedDagModel query optimization (#56938)
  • Fix: Gracefully handle FastAPI plugins with empty url_prefix (#55262)
  • Fix: Allow mapped tasks to accept zero-length inputs on rerun (#56162)
  • Fix: Enable API to clear task instances by specifying map indexes (#56945)
  • Fix: Add max_retry_delay to MappedOperator model (#56951)
  • Fix: Use name passed to @asset decorator when fetching the asset (#56611)
  • UI: Add English as a fallback locale (#56934)

Miscellaneous

  • Add Greek UI translation (#56724)
  • Add Thai UI translation (#56946)
  • Add Polish translations (#56825)
  • Close German translation gaps for full UI translation (#56981)
  • Fix Hebrew typo in translations (#56168)
  • Improve DAG and task missing error handling in callbacks (#56725)
  • Improve UI retry strategy on client errors (#56638)
  • Improve get dag grid structure endpoint speed (#56937)
  • Optimize grid structure query with DISTINCT for dag_version_id lookup (#56565)
  • Add configurable timeout for Execution API requests (#56969)
  • Prevent unnecessary kubernetes client imports in workers (#56692)
  • Lazy import PodGenerator for deserialization (#56733)
  • Serialize pydantic models in json mode for JSON serialization compatibility (#56939)
  • Update authentication to handle JWT token in backend (#56677)
  • Update bulk API permission check to handle action_on_existence (#56672)
  • Migrate CreateAssetEventsBody to Pydantic v2 ConfigDict (#56772)
  • Restore timetable active_runs_limit check (#56922)
  • Add is_favorite to UI dags list (#56341)
  • Add executor, hostname, and queue columns to TaskInstances page (#55922)
  • Add resize function for DAG Documentation (#56344)
  • Add optional pending dag runs check to auto refresh (#56648)
  • Add auto refresh to backfill banner (#56774)
  • UI: Add Expand/Collapse all to XComs page (#56285)
  • UI: Update recent runs bar chart and improve responsiveness (#56314)
  • UI: Update duration format to show milliseconds (#56961)
  • UI: Modify min width for task names in grid view (#56952)
  • UI: Use Task Display Name in Graph if existing (#56511)
  • UI: Use Task Display Name in Grid if existing (#56410)
  • UI: Use TI duration from database instead of UI calculated (#56329)
  • UI: Make DAG Run ID visible in DAG Header Card (#56409)
  • UI: Modify calendar cell colors (#56161)
  • UI: Modify log highlight color (#56894)
  • UI: Fix show appropriate time units in grid view (#56414)
  • UI: Reduce default columns of DAG Run and Task Instance lists (#55968)
  • UI: Add expand and collapse functionality for task groups (#56334)
  • UI: Avoid using rem for icons for Safari compatibility (#56304)
  • UI: Add ANSI support to log viewer (#56721)
  • UI: Support Dynamic UI Alerts (#56259)
  • UI: Disable Gantt view by default (#56242)
  • UI: Use welcome on dashboard instead of airflow (#56074)
  • UI: Improve clipboard button visibility with hover effect (#56484)
  • UI: Allow sub-pages in React UI plugins (#56485)
  • Include task instance id in log printed by supervisor (#56383)
  • Emit log stream stopped warning as ndjson (#56480)
  • Detect interactive terminal to set colored logging with override env variable support (#56157)
  • Add back deprecation warning for sla_miss_callback (#56127)
  • Move natsort dependency to airflow-core (#56582)
  • Added missing babel dependency in Task SDK (#56592)
  • Remove unused dagReports API endpoint (#56621)

Doc Only Changes

  • Improve API sort documentation (#56617)
  • Improve API doc for ordering query param (#55988)
  • Add Audit Logs detailed documentation (#56719)
  • Update serializer document to reflect latest changes in codebase (#56857)
  • Update ASF logos in documentation to the new Oak logo (#56601)
  • Enhance triggering_asset_event retrieval documentation in DAGs (#56957)
  • Remove self-reference in best practices documentation (#56111)
  • Fix supported Python versions in README (#56734)

Full Changelog: 3.1.0...3.1.1

Loading
seungwoo-ji-03, jpizquierdo, showmidelo, ldacey, ptsonev, alexSkiba15, github-actions[bot], matthieuauger, ShaheerJamalChishti90, onestn, and 5 more reacted with thumbs up emoji danielford831, github-actions[bot], matthieuauger, lepepe, and onestn reacted with hooray emoji github-actions[bot], matthieuauger, nico-arianto, onestn, and OlofBlomqvist reacted with rocket emoji
19 people reacted

Airflow 3.1.0

25 Sep 20:47
3.1.0
This tag was signed with the committer's verified signature.
kaxil Kaxil Naik
GPG key ID: 6674E08AD7DE406F
Verified
Learn about vigilant mode.

Choose a tag to compare

We are thrilled to announce the release of Apache Airflow 3.1.0, an update that puts humans at the center of data
workflows.

Read more about what 3.1.0 brings in https://airflow.apache.org/blog/airflow-3.1.0/

PyPI: https://pypi.org/project/apache-airflow/3.1.0/
Core Airflow Docs: https://airflow.apache.org/docs/apache-airflow/3.1.0/
Task SDK Docs: https://airflow.apache.org/docs/task-sdk/1.1.0/
Release Notes: https://airflow.apache.org/docs/apache-airflow/3.1.0/release_notes.html
Constraints: https://github.com/apache/airflow/tree/constraints-3.1.0

Apache Airflow 3.1.0 represents an extraordinary community effort, showcasing the vibrant ecosystem that drives this project forward with 163 contributors making this release possible across 1,400+ commits.

Screenshots






New Features

  • Add Calendar and Gantt chart views to modern React UI with enhanced filtering (#54252, #51667)
  • Add Python 3.13 support for Airflow runtime and dependencies (#46891)
  • Add SQLAlchemy 2.0 support with various compatibility fixes for Python 3.13 (#52233, #52518, #54940)
  • Add support for the psycopg3 postgres driver (#52976)
  • Add ability to track & display user who triggers DAG runs (#51738, #53510, #54164, #55112)
  • Add toggle for log grouping in task log viewer for better organization (#51146)
  • Add tag filtering improvements with Any/All selection options (#51162)
  • Add comprehensive filtering for DAG runs, task instances, and audit logs (#53652, #54210, #55082)
  • Add XCom browsing with filtering and improved navigation (#54049)
  • Add bulk task instance actions and deletion endpoints (#50443, #50165, #50235)
  • Add DAG run deletion functionality through UI (#50368)
  • Add test connection button for connection validation (#51055)
  • Add hyperlink support for URLs in XCom values (#54288)
  • Add pool column to task instances list and improve pool integration (#51185, #51031)
  • Add drag-and-drop log grouping and improved log visualization (#51146)
  • Add color support for XCom JSON display (#51323)
  • Add configuration column to DAG runs page (#51270)
  • Add enhanced note visibility and management in task headers (#51764, #54163)
  • Introduce React plugin system (AIP-68) for modern UI extensions (#52255)
  • Add support for external view plugins via iframe integration (#51003, #51889)
  • Add dashboard integration capabilities for custom React apps (#54131, #54144)
  • Add comprehensive plugin development tools and documentation (#53643)
  • Implement complete HITL operator suite (HITLOperator, ApprovalOperator, HITLEntryOperator) for human decision workflows (#52868)
  • Add HITL UI integration with role-based access and form handling (#53035)
  • Add HITL API endpoints with filtering and query support (#53376, #53923)
  • Add HITL utility functions for generating URLs to required actions page (#54827)
  • Improve HITL user experience with bug fixes, UI enhancements, and data model consistency (#55463, #55539, #55575, #55546, #55543, #55536, #55535)
  • Add ordering and filtering support for HITL details endpoints (#55217)
  • Add "No Response Received" required action state (#55149)
  • Add operator filter for HITL task instances (#54773)
  • Implement deadline alert system for proactive DAG monitoring (AIP-86) (#53951, #53903, #53201, #55086)
  • Add configurable reference points and notification callbacks (#50677, #50093)
  • Add deadline calculation and tracking in DAG execution lifecycle (#51638, #50925)
  • Add comprehensive UI translation support for 16 languages (#51266, #51038, #51219, #50929, #50981, #51793 and more)
  • Add right-to-left (RTL) layout support for Arabic and Hebrew (#51376)
  • Add language selection interface and browser preference detection (#51369)
  • Add translation completeness validation and automated checks (#51166, #51131)
  • Add calendar data API endpoints for DAG execution visualization (#52748)
  • Add endpoint to watch DAG runs until completion (#51920, #53346)
  • Add DAG run ID pattern search functionality (#52437)
  • Add multi-sorting capabilities for improved data navigation (#53408)
  • Add bulk connection deletion API and UI (#51201)
  • Add task group detail pages across DAG runs (#50412, #50309)
  • Add asset event tracking with last event timestamps (#50060, #50279)
  • Add has_import_errors filter to Core API GET /dags endpoint (#54563)
  • Add dag_version filter to get_dag_runs endpoint (#54882)
  • Add pattern search for event log endpoint (#55114)
  • Add dry_run support with consistent audit log handling (#55116)
  • Add utility functions for generic filter counting (#54817)
  • Add keyboard navigation for Grid view interface (#51784)
  • Add improved error handling for plugin import failures (#49643)
  • Add plugin validation in /plugins API with warnings for invalid plugins (#55673)
  • Improve accessibility for screen readers and assistive technologies with proper language detection (#55839)
  • Add enhanced variable management with upsert operations (#48547)
  • Add favorites/pinning support for DAG dashboard organization (#51264)
  • Add system theme support with automatic OS preference detection (#52649)
  • Add hotkey shortcut to toggle between Grid and Graph views (#54667)
  • Add queued DAGs filter button to DAGs page (#55052)
  • Add DAG parsing duration visibility in UI (#54752)
  • Add owner links support in DAG Header UI for better navigation (#50627)
  • Add dag_display_name aliases for improved API consistency (#50332, #50065, #50014, #49933, #49641)
  • Add enhanced search capabilities with SearchParamsKeys constants (#55218)
  • Add ALL_DONE_MIN_ONE_SUCCESS trigger rule for flexible task dependencies (#53959)
  • Add fail_when_dag_is_paused parameter to TriggerDagRunOperator for better control (#48214)
  • Add XCom validation to prevent empty keys in XCom.set() and XCom.get() operations (#46929)
  • Add collapsible plugin menu when multiple plugins are present (#55265)
  • Add external view plugin categories (admin, browse, docs, user) (#52737)
  • Add iframe plugins integration to DAG pages (#52795)
  • Add plugin error display in UI with comprehensive error handling (#49643, #49436)
  • Add collapsible failed task logs to prevent React error overflow (#54377)
  • Add dynamic legend system for calendar view (#55155)
  • Add React UI for Edge functionality (#53563)
  • Add pending actions display to DAG UI (#55041)
  • Add description field for filter parameters (#54903)
  • Add Catalan language support to Airflow UI (#55013)
  • Add Hungarian language support to Airflow UI (#54716)
  • Add map_index validation in categorize_task_instances (#54791)
  • Add Grid view UX improvements (#54846)
  • Add HITL UX improvements for better user experience (#54990)
  • Add async support for Notifiers (AIP-86) (#53831)
  • Add filtering capabilities for tasks view (#54484)
  • Add asset-based filtering support to DAG API endpoint (#54263)
  • Add iframe plugins to navigation (#51706)
  • Add RTL (right-to-left) layout support for Arabic and Hebrew (#51376)
  • Add test connection button to UI (#51055)
  • Add task instance bulk actions endpoint (#50443)
  • Add connection bulk deletion functionality (#51201)
  • Add pool column to task instances list (#51185)
  • Add iframe_views to backend plugin support (#51003)
  • Add keyboard shortcuts to clear and mark state for task instances and DAG runs (#50885)
  • Add deadline relationship to DAG runs and deadline model (#50925, #50093)
  • Add DAG run deletion UI (#50368)
  • Add task instance deletion UI and endpoint (#50235, #50165)
  • Switch all airflow logging to structlog (#52651, #55434, #55431, #55638)
  • Add Filter Bar to Audit Log (#55487)
  • Add Filters UI for Asset View (#54640)
  • Update color palette and leverage Chakra semantic tokens (#53981, #55739)
  • Improve calendar view UI with enhanced tooltips and visual fixes (#55476)

Bug Fixes

  • Fix DAG list filtering to include QUEUED runs with null start_date (#52668)
  • Fix XCom deletion failure for mapped task instances through bulk deletion API (#51850)
  • Fix XCom deletion failure for mapped task instances (#54954)
  • Fix task timeout handling within task SDK (#54089)
  • Fix task instance tries API duplicate entries (#50597)
  • Fix connection validation and type checking during construction (#54759)
  • Fix mapped task instance index display in Task Instances tab (#55363)
  • Fix Gantt chart state mismatch with Grid view (#55300)
  • Fix Gantt chart status color display issues (#55296)
  • Fix XCom mapping for dynamically-mapped task groups (#51556)
  • Fix missing ti_successes and related metrics in Airflow 3.0 Task SDK (#55322)
  • Fix bulk operation permissions for connection, pool and variable (#55278)
  • Fix clearTaskInstances API: Restore include_past/future support on UI (#54416)
  • Fix migration when XCom has NaN values (#53812)
  • Fix HITL related UI schema generated by prek hooks (#55204)
  • Fix consistent no-log handling for tasks with try_number=0 in API and UI (#55035)
  • Fix timezone conversion in datetime trigger parameters (#54593)
  • Fix audit log payload for DAG pause/unpause actions (#55091)
  • Fix pushing None as an XCom value (#55080)
  • Fix scheduler processing of cleared running tasks stuck in RESTARTING state (#55084)
  • Fix XCom ...
Read more
Loading
github-actions[bot], showmidelo, wklee610, royzhong7070, happyhil, m-aciek, eshirvana, IsaacCheng9, sudiptoghosh01, alexSkiba15, and 15 more reacted with thumbs up emoji IsaacCheng9 and crawlersick reacted with laugh emoji github-actions[bot], akzholio, m-aciek, dnskr, khoinguyenvo, IsaacCheng9, sudiptoghosh01, XavierCLL, StephaneBranly, crawlersick, and 3 more reacted with hooray emoji jpizquierdo, dondaum, andreyolv, Rafnel, aoelvp-astro, tuantran0910, plutaniano, dingo4dev, pepijngriffioen, dobsontom, and 13 more reacted with heart emoji github-actions[bot], plutaniano, m-aciek, wilhelmagren, WilliamKarvat, buhln, dnskr, nico-arianto, brunocmartins, IsaacCheng9, and 3 more reacted with rocket emoji IsaacCheng9, MRMARTIN39, jccamargo94, DickeyLen, and crawlersick reacted with eyes emoji
54 people reacted
Previous 1 2 3 4 5 ... 11 12 Next
Previous Next