Hey fellow Airflowers, I have cut Airflow 2.10.5rc1. This email is calling a vote on the release, which will last at least 72 hours, from Wednesday, February 5, 2025 at 3:00 pm UTC until Saturday, February 8, 2025 at 3:00 pm UTC <https://www.timeanddate.com/worldclock/fixedtime.html?msg=8&iso=20250208T1500&p1=1440>, and until 3 binding +1 votes have been received.
Status of testing of the release is kept in https://github.com/apache/airflow/issues/46466 Consider this my (non-binding) +1. As I’m not a member of the PMC, Ephraim signed the distribution. Airflow 2.10.5rc1 is available at: https://dist.apache.org/repos/dist/dev/airflow/2.10.5rc1/ *apache-airflow-2.10.5-source.tar.gz* is a source release that comes with INSTALL instructions. *apache-airflow-2.10.5.tar.gz* is the binary Python "sdist" release. *apache_airflow-2.10.5-py3-none-any.whl* is the binary Python wheel "binary" release. Public keys are available at: https://dist.apache.org/repos/dist/release/airflow/KEYS Please vote accordingly: [ ] +1 approve [ ] +0 no opinion [ ] -1 disapprove with the reason Only votes from PMC members are binding, but all members of the community are encouraged to test the release and vote with "(non-binding)". The test procedure for PMC members is described in: https://github.com/apache/airflow/blob/main/dev/README_RELEASE_AIRFLOW.md\#verify-the-release-candidate-by-pmc-members The test procedure for contributors and members of the community who would like to test this RC is described in: https://github.com/apache/airflow/blob/main/dev/README_RELEASE_AIRFLOW.md\#verify-the-release-candidate-by-contributors Please note that the version number excludes the 'rcX' string, so it's now simply 2.10.5. This will allow us to rename the artifact without modifying the artifact checksums when we actually release. Release Notes: https://github.com/apache/airflow/blob/2.10.5rc1/RELEASE_NOTES.rst For information on what goes into a release please see: https://github.com/apache/airflow/blob/main/dev/WHAT_GOES_INTO_THE_NEXT_RELEASE.md *Changes since 2.10.4:* *Significant Changes* *Ensure teardown tasks are executed when DAG run is set to failed (#45530)* Previously when a DAG run was manually set to "failed" or to "success" state the terminal state was set to all tasks. But this was a gap for cases when setup- and teardown tasks were defined: If teardown was used to clean-up infrastructure or other resources, they were also skipped and thus resources could stay allocated. As of now when setup tasks had been executed before and the DAG is manually set to "failed" or "success" then teardown tasks are executed. Teardown tasks are skipped if the setup was also skipped. As a side effect this means if the DAG contains teardown tasks, then the manual marking of DAG as "failed" or "success" will need to keep the DAG in running state to ensure that teardown tasks will be scheduled. They would not be scheduled if the DAG is directly set to "failed" or "success". *Bug Fixes* - Prevent using ``trigger_rule=TriggerRule.ALWAYS`` in a task-generated mapping within bare tasks (#44751) - Fix ShortCircuitOperator mapped tasks (#44912) - Fix premature evaluation of tasks with certain trigger rules (e.g. ``ONE_DONE``) in a mapped task group (#44937) - Fix task_id validation in BaseOperator (#44938) (#44938) - Allow fetching XCom with forward slash from the API and escape it in the UI (#45134) - Fix ``FileTaskHandler`` only read from default executor (#46000) - Fix empty task instance for log (#45702) (#45703) - Remove ``skip_if`` and ``run_if`` decorators before TaskFlow virtualenv tasks are run (#41832) (#45680) - Fix request body for json requests in event log (#45546) (#45560) - Ensure teardown tasks are executed when DAG run is set to failed (#45530) (#45581) - Do not update DR on TI update after task execution (#45348) - Fix object and array DAG params that have a None default (#45313) (#45315) - Fix endless sensor rescheduling (#45224) (#45250) - Evaluate None in SQLAlchemy's extended JSON type decorator (#45119) (#45120) - Allow dynamic tasks to be filtered by ``rendered_map_index`` (#45109) (#45122) - Handle relative paths when sanitizing URLs (#41995) (#45080) - Set Autocomplete Off on Login Form (#44929) (#44940) - Add Webserver parameters ``max_form_parts``, ``max_form_memory_size`` (#46243) (#45749) - Fixed accessing thread local variable in BaseOperators ``execute`` safeguard mechanism (#44646) (#46280) - Add map_index parameter to extra links API (#46337) *Miscellaneous* - Add traceback log output when SIGTERMs was sent (#44880) (#45077) - Removed the ability for Operators to specify their own "scheduling deps" (#45713) (#45742) - Deprecate ``conf`` from Task Context (#44993) Cheers, Utkarsh Sharma