This is an automated email from the ASF dual-hosted git repository.

vatsrahul1001 pushed a commit to branch backport-bb9cc30418-v3-3-test
in repository https://gitbox.apache.org/repos/asf/airflow.git

commit f2272ca45713638d8fd76904fc80061792609f40
Author: Dheeren Mohta <[email protected]>
AuthorDate: Wed Sep 9 03:58:43 2026 +0530

    Document DAG.test() behavior change in the Airflow 2.7.0 release notes 
(#72485)
    
    PR #32820 (Airflow 2.7.0) changed DAG.test() to return the executed
    DagRun instead of None, and to keep running remaining tasks after one
    fails instead of aborting the whole run immediately. Neither change
    was called out in the 2.7.0 release notes, even though it is a
    positive, user-visible improvement (it lets DAG.test() exercise DAGs
    with expected-to-fail tasks and trigger-rule branches without falling
    back to the DebugExecutor).
    
    A newsfragment is not the right vehicle here since newsfragments only
    feed the *next*, not-yet-released changelog section; this instead adds
    the missing note directly to the already-published 2.7.0 section of
    RELEASE_NOTES.rst, per maintainer guidance on the prior attempt at this
    issue (apache/airflow#58418).
    
    Closes: #34490
    (cherry picked from commit bb9cc30418118482e40e85194bfd500c8d2f63b7)
---
 RELEASE_NOTES.rst       | 11 +++++++++++
 reproducible_build.yaml |  4 ++--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/RELEASE_NOTES.rst b/RELEASE_NOTES.rst
index b5fcab752b3..a02be76362a 100644
--- a/RELEASE_NOTES.rst
+++ b/RELEASE_NOTES.rst
@@ -6441,6 +6441,17 @@ You can achieve it also by installing airflow with 
``[celery]``, ``[cncf.kuberne
 Users who base their images on the ``apache/airflow`` reference image (not 
slim) should be unaffected - the base
 reference image comes with all the three providers installed.
 
+``DAG.test()`` now returns a ``DagRun`` and no longer stops at the first task 
failure (#32820)
+""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+This was an undocumented side effect of adding support for setup/teardown 
tasks in mapped task
+groups. Previously, ``DAG.test()`` returned ``None``, and if any task raised 
an exception, the
+whole test run stopped immediately without running the DAG's other schedulable 
tasks. Now,
+``DAG.test()`` returns the ``DagRun`` it executed, and a failing task no 
longer aborts the run:
+the remaining tasks keep running according to their trigger rules, just like 
in a real scheduled
+run. This makes it possible to use ``DAG.test()`` to test DAGs where a task is 
expected to fail
+but downstream tasks with a different trigger rule (or a parallel mapped task 
group) should still
+run, without having to fall back to the ``DebugExecutor``.
+
 Improvement Changes
 ^^^^^^^^^^^^^^^^^^^
 
diff --git a/reproducible_build.yaml b/reproducible_build.yaml
index 51c344f51b1..b631113056d 100644
--- a/reproducible_build.yaml
+++ b/reproducible_build.yaml
@@ -1,2 +1,2 @@
-release-notes-hash: 0016af03b467abd6a1e3f1de176adc2f
-source-date-epoch: 1786375005
+release-notes-hash: 450e43a9dd38329434e5f90e2762ff8c
+source-date-epoch: 1788933260

Reply via email to