NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI
Provider package apache-airflow-providers-opsgenie for Apache Airflow
Last release 5 days ago
29 Sep 2026
Ships fairly regularly
a new release about every 2 months
Nearly every release is documented
notes for 35 of 35 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
77 releases · first in 2020
One column per quarter.
- Template every connection id accepted by provider operators
Release Date: 2026-09-29
Template every connection id accepted by provider operators (#73286)
Template every connection id accepted by provider operators (#73286)
Nothing published for this version
- Add explicit [tool.flit.sdist] sections to flit-based pyproject.tomls
Release Date: 2026-06-07
Add explicit [tool.flit.sdist] sections to flit-based pyproject.tomls (#65861)
Add explicit [tool.flit.sdist] sections to flit-based pyproject.tomls (#65861)
Nothing published for this version
- Load hook metadata from YAML without importing Hook class
Release Date: 2026-04-12
Load hook metadata from YAML without importing Hook class (#63826)
Load hook metadata from YAML without importing Hook class (#63826)
Nothing published for this version
Release Date: 2026-03-28 ### Misc - Add Python 3.14 Support
Release Date: 2026-03-28
Add Python 3.14 Support (#63520)
Nothing published for this version
- New year means updated Copyright notices
Release Date: 2026-01-17
New year means updated Copyright notices (#60344)
Nothing published for this version
This release of provider is only available for Airflow 2.11+ as explained in the Apache Airflow providers support policy < https://github.com/apache/a
Release Date: 2025-11-30
Note
This release of provider is only available for Airflow 2.11+ as explained in the Apache Airflow providers support policy < https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers >_.
Bump minimum Airflow version in providers to Airflow 2.11.0 (#58612)
Note
This release of provider is only available for Airflow 2.11+ as explained in the Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>_.
Bump minimum Airflow version in providers to Airflow 2.11.0 (#58612)
Nothing published for this version
- Convert all airflow distributions to be compliant with ASF requirements
Release Date: 2025-11-17
Convert all airflow distributions to be compliant with ASF requirements (#58138)
Migrate 'opsgenie' provider to 'common.compat' (#57121)
Convert all airflow distributions to be compliant with ASF requirements (#58138)
Migrate 'opsgenie' provider to 'common.compat' (#57121)
Nothing published for this version
- Add Python 3.13 support for Airflow.
Release Date: 2025-08-02
Add Python 3.13 support for Airflow. (#46891)
Cleanup type ignores in opsgenie provider where possible (#53281)
Remove type ignore across codebase after mypy upgrade (#53243)
Remove upper-binding for "python-requires" (#52980)
Temporarily switch to use >=,< pattern instead of '~=' (#52967)
Move all BaseHook usages to version_compat in opsgenie (#52859)
Add Python 3.13 support for Airflow. (#46891)
Cleanup type ignores in opsgenie provider where possible (#53281)
Remove type ignore across codebase after mypy upgrade (#53243)
Remove upper-binding for "python-requires" (#52980)
Temporarily switch to use >=,< pattern instead of '~=' (#52967)
Move all BaseHook usages to version_compat in opsgenie (#52859)
Nothing published for this version
- Move 'BaseHook' implementation to task SDK
Release Date: 2025-07-06
Move 'BaseHook' implementation to task SDK (#51873)
Replace 'models.BaseOperator' to Task SDK one for OpsGenie (#52564)
Drop support for Python 3.9 (#52072)
Move 'BaseHook' implementation to task SDK (#51873)
Replace 'models.BaseOperator' to Task SDK one for OpsGenie (#52564)
Drop support for Python 3.9 (#52072)
Nothing published for this version
This release of provider is only available for Airflow 2.10+ as explained in the Apache Airflow providers support policy < https://github.com/apache/a
Release Date: 2025-05-18
Note
This release of provider is only available for Airflow 2.10+ as explained in the Apache Airflow providers support policy < https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers >_.
Bump min Airflow version in providers to 2.10 (#49843)
Note
This release of provider is only available for Airflow 2.10+ as explained in the Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>_.
Bump min Airflow version in providers to 2.10 (#49843)
Nothing published for this version
- Move BaseNotifier to Task SDK
Release Date: 2025-03-31
Move BaseNotifier to Task SDK (#48008)
Nothing published for this version
Release Date: 2025-03-13 ### Misc - Upgrade flit to 3.11.0
Release Date: 2025-03-13
Upgrade flit to 3.11.0 (#46938)
Nothing published for this version
- AIP-72: Support better type-hinting for Context dict in SDK
Release Date: 2025-02-26
AIP-72: Support better type-hinting for Context dict in SDK (#45583)
AIP-72: Support better type-hinting for Context dict in SDK (#45583)
Nothing published for this version
This release of provider is only available for Airflow 2.9+ as explained in the Apache Airflow providers support policy .
Release Date: 2024-12-26
Note
This release of provider is only available for Airflow 2.9+ as explained in the Apache Airflow providers support policy .
Bump minimum Airflow version in providers to Airflow 2.9.0 (#44956)
Update DAG example links in multiple providers documents (#44034)
Note
This release of provider is only available for Airflow 2.9+ as explained in the Apache Airflow providers support policy.
Bump minimum Airflow version in providers to Airflow 2.9.0 (#44956)
Update DAG example links in multiple providers documents (#44034)
Nothing published for this version
Nothing published for this version
This release of provider is only available for Airflow 2.8+ as explained in the Apache Airflow providers support policy .
Release Date: 2024-08-22
Note
This release of provider is only available for Airflow 2.8+ as explained in the Apache Airflow providers support policy .
Bump minimum Airflow version in providers to Airflow 2.8.0 (#41396)
Note
This release of provider is only available for Airflow 2.8+ as explained in the Apache Airflow providers support policy.
Bump minimum Airflow version in providers to Airflow 2.8.0 (#41396)
Nothing published for this version
- Faster 'airflow_version' imports
Release Date: 2024-05-30
Faster 'airflow_version' imports (#39552)
Simplify 'airflow_version' imports (#39497)
Faster 'airflow_version' imports (#39552)
Simplify 'airflow_version' imports (#39497)
Nothing published for this version
This release of provider is only available for Airflow 2.7+ as explained in the Apache Airflow providers support policy .
Release Date: 2024-05-06
Note
This release of provider is only available for Airflow 2.7+ as explained in the Apache Airflow providers support policy .
Bump minimum Airflow version in providers to Airflow 2.7.0 (#39240)
Note
This release of provider is only available for Airflow 2.7+ as explained in the Apache Airflow providers support policy.
Bump minimum Airflow version in providers to Airflow 2.7.0 (#39240)
Nothing published for this version
Nothing published for this version
- Add docs and UI form for opsgenie connection
Release Date: 2024-01-10
Add docs and UI form for opsgenie connection (#36519)
Nothing published for this version
This release of provider is only available for Airflow 2.6+ as explained in the Apache Airflow providers support policy .
Release Date: 2023-12-12
Note
This release of provider is only available for Airflow 2.6+ as explained in the Apache Airflow providers support policy .
Bump minimum Airflow version in providers to Airflow 2.6.0 (#36017)
Note
This release of provider is only available for Airflow 2.6+ as explained in the Apache Airflow providers support policy.
Bump minimum Airflow version in providers to Airflow 2.6.0 (#36017)
Nothing published for this version
Release Date: 2023-11-29 ### Features - Add 'OpsgenieNotifier'
Release Date: 2023-11-29
Add 'OpsgenieNotifier' (#35530)
Nothing published for this version
This release of provider is only available for Airflow 2.5+ as explained in the Apache Airflow providers support policy .
Release Date: 2023-10-17
Note
This release of provider is only available for Airflow 2.5+ as explained in the Apache Airflow providers support policy .
Bump min airflow version of providers (#34728)
Note
This release of provider is only available for Airflow 2.5+ as explained in the Apache Airflow providers support policy.
Bump min airflow version of providers (#34728)
Nothing published for this version
This release dropped support for Python 3.7
Release Date: 2023-06-23
Note
This release dropped support for Python 3.7
Add note about dropping Python 3.7 for providers (#32015)
Note
This release dropped support for Python 3.7
Add note about dropping Python 3.7 for providers (#32015)
Nothing published for this version
This release of provider is only available for Airflow 2.4+ as explained in the Apache Airflow providers support policy .
Release Date: 2023-05-22
Note
This release of provider is only available for Airflow 2.4+ as explained in the Apache Airflow providers support policy .
Bump minimum Airflow version in providers (#30917)
Note
This release of provider is only available for Airflow 2.4+ as explained in the Apache Airflow providers support policy.
Bump minimum Airflow version in providers (#30917)
Nothing published for this version
Nothing published for this version
- Remove deprecated code from Opsgenie provider
Release Date: 2022-11-18
Note
This release of provider is only available for Airflow 2.3+ as explained in the Apache Airflow providers support policy .
Remove OpsgenieAlertOperator also removed hooks.opsgenie_alert path
Remove deprecated code from Opsgenie provider (#27252)
Move min airflow version to 2.3.0 for all providers (#27196)
Note
This release of provider is only available for Airflow 2.3+ as explained in the Apache Airflow providers support policy.
Remove OpsgenieAlertOperator also removed hooks.opsgenie_alert path
Remove deprecated code from Opsgenie provider (#27252)
Move min airflow version to 2.3.0 for all providers (#27196)
Nothing published for this version
This release of provider is only available for Airflow 2.2+ as explained in the Apache Airflow providers support policy .
Release Date: 2022-06-13
Note
This release of provider is only available for Airflow 2.2+ as explained in the Apache Airflow providers support policy .
Note
This release of provider is only available for Airflow 2.2+ as explained in the Apache Airflow providers support policy.
Nothing published for this version
Nothing published for this version
Remove deprecated Airflow 2.x modules and legacy imports
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.
<img width="1600" height="775" alt="favorite" src="https://github.com/user-attachments/assets/0dec07d2-56b6-4b02-adcc-6431d89fa52c" /> <img width="1871" height="1118" alt="gantt" src="https://github.com/user-attachments/assets/3a53106f-352c-477c-9398-f2f7c5ae8b16" />
SQLAlchemy 2.0 support with various compatibility fixes for Python 3.13 (#52233, #52518, #54940)psycopg3 postgres driver (#52976)XCom browsing with filtering and improved navigation (#54049)HITLOperator, ApprovalOperator, HITLEntryOperator) for human decision workflows (#52868)has_import_errors filter to Core API GET /dags endpoint (#54563)/plugins API with warnings for invalid plugins (#55673)dag_display_name aliases for improved API consistency (#50332, #50065, #50014, #49933, #49641)XCom validation to prevent empty keys in XCom.set() and XCom.get() operations (#46929)iframe_views to backend plugin support (#51003)QUEUED runs with null start_date (#52668)ti_successes and related metrics in Airflow 3.0 Task SDK (#55322)clearTaskInstances API: Restore include_past/future support on UI (#54416)XCom access in DAG processor callbacks for notifiers (#55542)default_timezone is not UTC (#54431)lineno of logger calls are present in Task Logs (#55581)serialized_dag table (#54972)LocalExecutor race condition where tasks could start before database state was committed (#56010)dag_stale_not_seen_duration (#55601, #55684)dag_id column in DAG Runs and Task Instances pages for better navigation (#55648)--preview flag from ruff check instructions for Airflow 3 upgrade path (#55516)Airflow 3.1 introduces Human-in-the-Loop (HITL) functionality that enables workflows to pause and wait for human decision-making. This powerful feature is particularly valuable for AI/ML workflows, content moderation, and approval processes where human judgment is essential.
HITL tasks pause execution in a deferred state while waiting for human input via the Airflow UI. Users with appropriate roles can see pending tasks, review context (including XCom data and DAG parameters), and complete actions through intuitive web forms. The feature also supports API-driven interactions for custom UIs and notification integration.
For detailed usage instructions, see /tutorial/hitl.
Note: HITL operators require apache-airflow-providers-standard package and Airflow 3.1+.
Airflow 3.1 advances the decoupling of the Task SDK from Airflow Core through improved DAG serialization with versioned contracts. While complete code separation is planned for Airflow 3.2.0, the serialization foundation enables independent upgrades when components are deployed separately.
For DAG Authors: Import constructs from airflow.sdk namespace:
from airflow.sdk import DAG, task, asset
Access to latest authoring features with forward compatibility
Reduced dependency on server-side Airflow versions
For Platform Teams: Foundation for independent upgrades:
Schema compliance ensures compatibility across versions
Deployment flexibility when components are separated
Reduced coordination overhead between development and operations teams
For technical details on the serialization contract, see /administration-and-deployment/dag-serialization.
Deadline Alerts provide proactive monitoring for DAG execution by automatically triggering notifications when time thresholds are exceeded. This helps ensure SLA compliance and timely completion of critical workflows.
Configure deadline monitoring by specifying:
Reference point: Choose from DAG run queued time, logical date, or fixed datetime
Interval: Time threshold relative to the reference point (positive or negative)
Callback: Response action using Airflow Notifiers or custom functions
Example use cases:
Alert if a daily ETL hasn't completed 1 hour after its scheduled time
Notify stakeholders 30 minutes before a critical deadline
Escalate when resource-constrained DAGs remain queued too long
Current Limitations: Deadline Alerts currently support only asynchronous callbacks (AsyncCallback). Support for synchronous callbacks (SyncCallback) is planned for a future release.
For configuration details and examples, see /howto/deadline-alerts.
Warning
Deadline Alerts are experimental in 3.1 and may change in future versions based on user feedback.
Airflow 3.1 delivers comprehensive internationalization (i18n) support, making the web interface accessible to users worldwide. The React-based UI now supports 17 languages with robust translation infrastructure.
Supported Languages:
Arabic
Catalan
Dutch
English
French
German
Hebrew
Hindi
Hungarian
Italian
Korean
Polish
Portuguese
Simplified Chinese
Spanish
Traditional Chinese
Turkish
The translation system includes automated completeness checking and clear contribution guidelines for community translators.
Airflow 3.1 introduces a modern plugin architecture enabling rich integrations through React components and external views. This extensibility framework allows organizations to embed custom dashboards, monitoring tools, and domain-specific interfaces directly within the Airflow UI.
New Plugin Capabilities:
React Apps: Full-featured React applications integrated into Airflow navigation
External Views: Embed external web applications via iframe with seamless authentication
Dashboard Integration: Custom widgets and panels for operational dashboards
Menu Integration: Add custom navigation items and organize tools logically
Developer Experience:
Hot reloading during development with airflow-react-plugin dev tools
TypeScript support and modern React patterns
Standardized plugin loading and validation
Comprehensive documentation and boilerplate generation
This plugin system replaces legacy Flask-based approaches with modern web standards, improving performance, maintainability, and user experience.
For more details and examples, see /howto/custom-view-plugin.
Airflow 3.1 brings significant UI improvements including rebuilt Calendar and Gantt chart views for the modern React UI, comprehensive filtering capabilities, and a refreshed visual design system.
Visual Design Improvements
The UI now features an updated color palette leveraging Chakra UI semantic tokens, providing better consistency, accessibility, and theme support across the interface. This modernization improves readability and creates a more cohesive visual experience throughout Airflow.
Rebuilt Views and Enhanced Filtering
The Calendar and Gantt views from Airflow 2.x have been rebuilt for the modern React UI, along with enhanced filtering capabilities across all views. These improvements provide better performance and a more consistent user experience with the rest of the modern Airflow interface.
DAG Dashboard Organization
Users can now pin and favorite DAGs for better dashboard organization, making it easier to find and prioritize frequently used workflows. This feature is particularly valuable for teams managing large numbers of DAGs, providing quick access to critical workflows without searching through extensive DAG lists.
Airflow 3.1 introduces a new streaming API endpoint that allows applications to watch DAG runs until completion, enabling more responsive integration patterns for real-time and inference workflows.
New Streaming Endpoint: The /dags/{dag_id}/dagRuns/{dag_run_id}/wait endpoint repeatedly emits JSON updates at specified intervals until the DAG run reaches a finished state.
# Watch a DAG run with 2-second polling interval, including XCom results
curl -X GET "http://localhost:8080/api/v2/dags/ml_pipeline/dagRuns/manual_2024_01_15/wait?result=inference_task" \
-H "Accept: application/x-ndjson"
This enables use cases like:
ML Inference Monitoring: Trigger inference DAGs and wait for completion before returning results
Real-time Processing: Monitor event-driven workflows with immediate response requirements
API Integration: Build responsive services that react to DAG completion without polling
Synchronous Workflows: Create quasi-synchronous behavior for workflows that need immediate feedback
ALL_DONE_MIN_ONE_SUCCESS: This rule triggers when all upstream tasks are done (success, failed) and at least one has succeeded, filling a gap between existing trigger rules for complex workflow patterns. Skipped upstream tasks work as usually - they skip downstream task.
DAG parsing duration is now exposed in the UI, providing better visibility into DAG processing performance and helping identify parsing bottlenecks. This information is displayed alongside other DAG metadata to assist with performance optimization.
Support for Python 3.9 has been removed, as it has reached end-of-life. Airflow 3.1.0 requires Python 3.10, 3.11, 3.12 or 3.13.
Webserver Configuration Reorganization
Several webserver configuration options have been moved to the api section for better organization:
[webserver] log_fetch_timeout_sec → [api] log_fetch_timeout_sec
[webserver] hide_paused_dags_by_default → [api] hide_paused_dags_by_default
[webserver] page_size → [api] page_size
[webserver] default_wrap → [api] default_wrap
[webserver] require_confirmation_dag_change → [api] require_confirmation_dag_change
[webserver] auto_refresh_interval → [api] auto_refresh_interval
Unused configuration options have been removed:
[webserver] instance_name_has_markup
[webserver] warn_deployment_exposure
API Server Logging Configuration
The API server configuration option [api] access_logfile has been replaced with [api] log_config to align with uvicorn's logging configuration. The new option accepts a path to a logging configuration file compatible with logging.config.fileConfig, providing more flexible logging configuration.
Security Improvement: XCom Deserialization
The enable_xcom_deserialize_support configuration option has been removed as a security improvement. This option previously allowed deserializing unknown objects in the API, which posed a security risk due to potential remote code execution vulnerabilities when deserializing arbitrary Python objects.
The XCom display improvements now handle showing non-native XComs (like custom objects, Assets, datetime objects) in a human-readable way through safer methods that don't require deserializing unknown objects in the API server. This provides better user experience when viewing XCom data in the Airflow UI while eliminating the security risk.
Asset API Key Rename
The consuming_dags key in asset API responses has been renamed to scheduled_dags to better reflect its purpose. This key contains only DAGs that use the asset in their schedule argument, not all DAGs that technically use the asset.
Removed Functions
The following functions have been removed from the task-sdk (airflow.sdk.definitions.taskgroup) and moved to server-side API services:
get_task_group_children_getter
task_group_to_dict
These functions are now internal to Airflow's API layer and should not be imported directly by users.
The default number of API server workers ([api] workers) has been reduced from 4 to 1.
With FastAPI, sync code runs in external thread pools, making multiple workers within a single process less necessary. Additionally, with uvicorn's spawn behavior instead of fork, there is no shared copy-on-write memory between workers, so horizontal scaling with multiple API server instances is now the recommended approach for better resource utilization and fault isolation.
A good starting point for the number of workers is to set it to the number of CPU cores available. If you do have multiple CPU cores available for the API server, consider deploying multiple API server instances instead of increasing the number of workers.
Most users should not notice the difference, but it is now possible to emit structured log key/value pairs from tasks.
If your class subclasses LoggingMixin (which all BaseHook and BaseOperator do -- i.e. all hooks and operators) then self.log is now a structloglogger.
The advantage of using structured logging is that it is much easier to find specific information about log message, especially when using a central store such as OpenSearch/Elastic/Splunk etc. You don't have to make any changes, but you can now take advantage of this.
# Inside a Task/Hook etc.
# Before:
# self.log.info("Registering adapter %r", item.name)
# Now:
self.log.info("Registering adapter", name=item.name)
This will produce a log that (in the UI) will look something like this:
[2025-09-16 10:36:13] INFO - Registering adapter name="adapter1"
or in JSON (i.e. the log files on disk):
{"timestamp": "2025-09-16T10:36:13Z", "log_level": "info", "event": "Registering adapter", "name": "adapter1"}
You can also use structlog loggers at the top level of modules etc, and stdlib both continue to work:
import logging
import structlog
log1 = logging.getLogger(__name__)
log2 = strcutlog.get_logger(__name__)
log1.info("Loading something from %s", __name__)
log2.info("Loading something", source=__name__)
(You can't add arbitrary key/value pairs to stdlib, but the normal percent-formatter approaches still work fine.)
The deserializer interface in airflow.serialization.serializers has changed for improved security.
Before 3.1.0:
def deserialize(classname: str, version: int, data: Any)
Starting with 3.1.0:
def deserialize(cls: type, version: int, data: Any)
The class loading is now handled in serde.py, and the deserializer receives the loaded class directly rather than a classname string. This update avoids the use of import_string in the deserializer, making deserialization more secure.
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)
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 deletion failure for mapped task instances (#54954)
Fix outgoing graph edges should exit opposite of incoming edges (#54789)
Fix external links in Navigation buttons (#52220)
Fix Error when viewing DAG details of a no longer configured bundle (#52086)
Fix compatibility with new numpy and pandas versions (#52071)
Fix connection recovery from URI when host has protocol (#51953)
Fix last DAG run not showing on DAG listing (#51115)
Fix task instance tries API returning duplicate entries (#50597)
Fix Graph view vanishing and loading issues (#53886, #54756)
Fix rendered template display formatting for better readability (#53657)
Fix Grid view expand/collapse button functionality (#54257)
Fix tooltip visibility and positioning issues (#53913)
Fix grid keyboard navigation focus management (#54271)
Fix plugin registration for invalid objects and middleware registration (#55264, #55399)
Fix external links for plugins with undefined URL routes (#55221)
Fix language display consistency and flag representation (#51560, #51177)
Fix RTL layout rendering for Arabic and Hebrew interfaces (#51853)
Fix graph export cropping when view is partial (#55012)
Fix log viewer "Toggle Source" to hide only source fields, not all structured log fields (#55474)
Output on stdout/stderr from within tasks is now filterable in the Sources list in the UI log view (#55508)
Redact JWT tokens in task logs (#55499)
Fix grid view to handle long task name (#55332)
Allow slash characters in Variable keys similar to Airflow 2.x (#55324)
Fix Grid cache invalidation for multi-run task operations (#55504)
Fix Gantt chart rendering issues (#55554)
Fix XCom access in DAG processor callbacks for notifiers (#55542)
Fix alignment of arrows in RTL mode for right-to-left languages (#55619)
Fix connection form extras not inferring correct type in UI (#55492)
Fix incorrect log timestamps in UI when default_timezone is not UTC (#54431)
Fix handling of priority_weight for DAG processor callbacks (#55436)
Fix pointless requests from Gantt view when there is no Run ID (#55668)
Ensure filename and lineno of logger calls are present in Task Logs (#55581)
Fix DAG disappearing after callback execution in stale detection (#55698)
Fix DB downgrade to Airflow 2 when fab tables exists (#55738)
Fix UI stats endpoint causing dashboard loading issues (#55733)
Fix unintended console output when DAG not found in serialized_dag table (#54972)
Fix scheduler handling of orphaned tasks from Airflow 2 during upgrade (#55848)
Fix logging format to respect existing configuration during upgrade to prevent unexpected log format changes (#55824)
Fix Grid view crashes when DAG version information is missing (#55771)
Fix compatibility for custom triggers migrating from Airflow 2.x that use synchronous connection calls (#55799)
Fix DAG runs triggered from UI incorrectly marked as REST API triggers instead of UI triggers (#54650)
Fix XCom API responses failing when encountering non-serializable objects by falling back to string representation (#55880)
Fix asset queue display in UI showing incorrect timestamps for deleted queue events (#54652)
Fix SQLite database migrations failing due to foreign key constraint handling (#55883)
Fix DAG deserialization failure when using non-default weight_rule values like 'absolute' (#55906)
Fix async connection retrieval in triggerer context preventing event loop blocking (#55812)
Fix Airflow downgrade compatibility by handling serialized DAG format conversion from v3 to v2 (#55975)
Fix 'All Log Levels' filter not working in task log viewer (#55851)
Fix Grid view scrollbar overlapping issues on Firefox browser (#55960)
Fix Gantt chart misalignment with Grid view layout (#55995)
Fix Grid view task names being extremely collapsed and unreadable when displaying many DAG runs (#55997)
Fix LocalExecutor race condition where tasks could start before database state was committed (#56010)
Move secrets masker to shared distribution for better modularity (#54449)
Move email notifications from scheduler to DAG processor for better architecture (#55238)
Add graph UI load optimization with latest run info endpoint (#53429)
Optimize UI bundle size by moving translations to dynamic loading (#51735)
Relocate Task SDK components for improved separation (#55174, #54795)
Refactor trigger rule utilities and weight rule consolidation (#54797, #53393)
Remove deprecated Airflow 2.x modules and legacy imports (#50482)
Clean up unused code and improve module organization (#52176, #52173, #53031)
Add SQLAlchemy 2.0 CI support for future compatibility (#52233)
Improve test fixtures and SDK communication testing (#54795, #50603)
Add translation completeness linting and validation tools (#51166)
Upgrade to latest versions of important dependencies (#55350)
Move webserver configuration options to API section (#50693, #50656)
Improve DAG bundle handling and versioning support (#47592)
Add database management CLI tools for external database operations (#50657)
Add comprehensive HITL operator documentation and examples (#54618)
Add guards for registering middlewares from plugins (#55399)
Optimize Gantt group expansion with de-bouncing and deferred rendering (#55334)
Differentiate between triggers and watchers currently running for better visibility (#55376)
Removed unused config: dag_stale_not_seen_duration (#55601, #55684)
Update UI's query client strategy for improved performance (#55528)
Unify datetime format across the UI for consistency (#55572)
Mark React Apps as Experimental for Airflow 3.1 release (#55478)
Improve OOM error messaging for clearer task failure diagnosis (#55602)
Display responder username for better audit trail in HITL workflows (#55509)
The constraint file do not contain developer dependencies anymore (#53631)
Add hyperlinks to dag_id column in DAG Runs and Task Instances pages for better navigation (#55648)
Add responsive web design (RWD) support to Grid view (#55745)
Add comprehensive Human-in-the-Loop operator tutorial and examples (#54618)
Add deadline alerts configuration and usage documentation (#53727)
Make term Dag consistent in docs task-sdk (#55100)
Add migration guide for upgrading from legacy SLA functionality to deadline alerts (#55743)
Add DAG bundles triggerer limitation documentation (#55232)
Add deadline alerts usage guides and best practices (#53727)
Remove --preview flag from ruff check instructions for Airflow 3 upgrade path (#55516)
Add documentation for context parameter (#55377)
Release Date: 2022-05-16
Add 'OpsgenieDeleteAlertOperator' (#23405)
Opsgenie: Fix 'close_alert' to properly send 'kwargs' (#23442)
Nothing published for this version
📦 PyPI: https://pypi.org/project/apache-airflow/3.0.3/ 📚 Docs: https://airflow.apache.org/docs/apache-airflow/3.0.3/ 🛠️ Release Notes: https://airflow
📦 PyPI: https://pypi.org/project/apache-airflow/3.0.3/ 📚 Docs: https://airflow.apache.org/docs/apache-airflow/3.0.3/ 🛠️ Release Notes: https://airflow.apache.org/docs/apache-airflow/3.0.3/release_notes.html 🪶 Sources: https://airflow.apache.org/docs/apache-airflow/3.0.3/installation/installing-from-sources.html 🐳 Docker Image: "docker pull apache/airflow:3.0.3" 🚏 Constraints: https://github.com/apache/airflow/tree/constraints-3.0.3
xcom_pull to cover different scenarios for mapped tasks (#51568)run_as_user) support for task execution (#51780)exception to context for task callbacks (#52066)EOF is missed (#51180) (#51970)EventsTimetable's description during serialization (#51926)EOF detection of subprocesses in Dag Processor (#51895)dag.test (#51673)dag.test consistent with airflow dags test CLI command (#51476)No Status Filter (#52154)MappedOperator (#52681)AssetEventOperations.get to use alias_name when specified (#52324)start_from_trigger is True (#52873)example_external_task_parent_deferrable.py imports (#52957)no_status and duration for grid summaries (#53092)ti.log_url not in Task Context (#50376)XCom.get_all() method (#53102)connections_test CLI to use Connection instead of BaseHook (#51834) (#51917)libcst 1.8.1 for Python 3.9 (#51609)Full Changelog: https://github.com/apache/airflow/compare/3.0.2...3.0.3
Release Date: 2022-03-26
Fix mistakenly added install_requires for all providers (#22382)
Nothing published for this version
Add backwards compatibility shim and deprecation warning for EmailOperator
📦 PyPI: https://pypi.org/project/apache-airflow/3.0.2/ 📚 Docs: https://airflow.apache.org/docs/apache-airflow/3.0.2/ 🛠️ Release Notes: https://airflow.apache.org/docs/apache-airflow/3.0.2/release_notes.html 🪶 Sources: https://airflow.apache.org/docs/apache-airflow/3.0.2/installation/installing-from-sources.html
sys.path in task runner (#51318)sys.path in dag processor (#50385)SIGSEGV signals during DAG file imports (#51171)dag.test() (#51182)ForwardRef error by reordering discriminated union definitions (#50688)BaseNotifier (#50340)upstream_mapped_index when xcom access is needed (#50641)/run API endpoint for older Task SDK clientsFlexibleForm component (#50845)+1 more when tags exceed the display limit by one (#50669)default_args handling in operator .partial() to prevent TypeError when unused keys are present (#50525)airflow tasks clear command (#49631)--local flag in dag list and dag list-import-errors CLI commands (#49380)DagProcessor stats log to show the correct parse duration (#50316)get_log API (#50547)logical_date check when validating inlets and outlets (#51464)ti update state and set task to fail if exception encountered (#51295)example_dags in standard provider to example_dags in sources (#51275)airflow-core package (#51192)task.test to Task SDK (#50827)dag.test to Task SDK (#50300,#50419)ti.run to Task SDK execution path (#50141)airflow dags test from local files (#50420)execution_time module (#50940)dagrun value for list display (#50834)secret_key config to api section (#50839)webserver configs to fab provider (#50774,#50269,#50208,#50896)dag_run nullable in Details page (#50719)ab_user table (#50343)owner_links field to DAGDetailsResponse for enhanced owner metadata in the API (#50557)AssetAlias for alias in Asset Metadata example (#50768)schedule_interval in tutorial dags (#50947)PythonOperator in tutorial dag (#50962)Full Changelog: https://github.com/apache/airflow/compare/3.0.1...3.0.2
Release Date: 2022-03-19
Add Trove classifiers in PyPI (Framework :: Apache Airflow :: Provider)
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →