Impact Score: 5/10
Apache Airflow 2.3.3
Source available โ automated, not human-reviewed
Component: airflow ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.
Analysis updated: 2026-11-01.
โก Executive Summary (TL;DR)
Apache Airflow 2.3.3. Source highlight: Fix exception in mini task scheduler (#24865)
Who Does This Impact? (Role-Based Analysis)
๐ป Software Engineers & Devs
Check the source notes against the package and APIs you use before upgrading.
๐ Product & Engineering Leads
Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.
โ๏ธ DevOps & Security
Verify the target version, runtime requirements and rollback procedure in the official documentation.
โจ New Features & Capabilities (3)
- Add imports to deferring code samples (#24544)
- Add note about image regeneration in June 2022 (#24524)
- Add ``typescript`` (#24337)
๐ง Bug Fixes & Patches (6)
- Fix exception in mini task scheduler (#24865)
- Fix cycle bug with attaching label to task group (#24847)
- Fix timestamp defaults for ``sensorinstance`` (#24638)
- Move fallible ``ti.task.dag`` assignment back inside ``try/except`` block (#24533) (#24592)
- Add missing types to ``FSHook`` (#24470)
- Mask secrets in ``stdout`` for ``airflow tasks test`` (#24362)
๐ View Raw Release Notes (Original Developer Log)
## Bug Fixes
- Fix exception in mini task scheduler (#24865)
- Fix cycle bug with attaching label to task group (#24847)
- Fix timestamp defaults for ``sensorinstance`` (#24638)
- Move fallible ``ti.task.dag`` assignment back inside ``try/except`` block (#24533) (#24592)
- Add missing types to ``FSHook`` (#24470)
- Mask secrets in ``stdout`` for ``airflow tasks test`` (#24362)
- ``DebugExecutor`` use ``ti.run()`` instead of ``ti._run_raw_task`` (#24357)
- Fix bugs in ``URI`` constructor for ``MySQL`` connection (#24320)
- Missing ``scheduleinterval`` nullable true added in ``openapi`` (#24253)
- Unify ``return_code`` interface for task runner (#24093)
- Handle occasional deadlocks in trigger with retries (#24071)
- Remove special serde logic for mapped ``op_kwargs`` (#23860)
- ``ExternalTaskSensor`` respects ``soft_fail`` if the external task enters a ``failed_state`` (#23647)
- Fix ``StatD`` timing metric units (#21106)
- Add ``cache_ok`` flag to sqlalchemy TypeDecorators. (#24499)
- Allow for ``LOGGING_LEVEL=DEBUG`` (#23360)
- Fix grid date ticks (#24738, #24849)
- Debounce status highlighting in Grid view (#24710)
- Fix Grid vertical scrolling (#24684)
- don't try to render child rows for closed groups (#24637)
- Do not calculate grid root instances (#24528)
- Maintain grid view selection on filtering upstream (#23779)
- Speed up ``grid_data`` endpoint by 10x (#24284)
- Apply per-run log templates to log handlers (#24153)
- Don't crash scheduler if exec config has old k8s objects (#24117)
- ``TI.log_url`` fix for ``map_index`` (#24335)
- Fix migration ``0080_2_0_2`` - Replace null values before setting column not null (#24585)
- Patch ``sql_alchemy_conn`` if old Postgres schemes used (#24569)
- Seed ``log_template`` table (#24511)
- Fix deprecated ``log_id_template`` value (#24506)
- Fix toast messages (#24505)
- Add indexes for CASCADE deletes for ``task_instance`` (#24488)
- Return empty dict if Pod JSON encoding fails (#24478)
- Improve grid rendering performance with a custom tooltip (#24417, #24449)
- Check for ``run_id`` for grid group summaries (#24327)
- Optimize calendar view for cron scheduled DAGs (#24262)
- Use ``get_hostname`` instead of ``socket.getfqdn`` (#24260)
- Check that edge nodes actually exist (#24166)
- Fix ``useTasks`` crash on error (#24152)
- Do not fail re-queued TIs (#23846)
- Reduce grid view API calls (#24083)
- Rename Permissions to Permission Pairs. (#24065)
- Replace ``use_task_execution_date`` with ``use_task_logical_date`` (#23983)
- Grid fix details button truncated and small UI tweaks (#23934)
- Add TaskInstance State ``REMOVED`` to finished states and success states (#23797)
- Fix mapped task immutability after clear (#23667)
- Fix permission issue for dag that has dot in name (#23510)
- Fix closing connection ``dbapi.get_pandas_df`` (#23452)
- Check bag DAG ``schedule_interval`` match timetable (#23113)
- Parse error for task added to multiple groups (#23071)
- Fix flaky order of returned dag runs (#24405)
- Migrate ``jsx`` files that affect run/task selection to ``tsx`` (#24509)
- Fix links to sources for examples (#24386)
- Set proper ``Content-Type`` and ``chartset`` on ``grid_data`` endpoint (#24375)
## Doc only changes
- Fix doc description of ``[core]`` parallelism config setting (#23768)
- Update templates doc to mention ``extras`` and format Airflow ``Vars`` / ``Conns`` (#24735)
- Document built in Timetables (#23099)
- Alphabetizes two tables (#23923)
- Clarify that users should not use Maria DB (#24556)
- Add imports to deferring code samples (#24544)
- Add note about image regeneration in June 2022 (#24524)
- Small cleanup of ``get_current_context()`` chapter (#24482)
- Fix default 2.2.5 ``log_id_template`` (#24455)
- Update description of installing providers separately from core (#24454)
- Mention context variables and logging (#24304)
## Misc/Internal
- Do not support ``MSSQL`` less than ``v2017`` in code (#24095)
- Drop Python ``3.6`` compatibility objects/modules (#24048)
- Remove upper-binding for SQLAlchemy (#24819)
- Remove internet explorer support (#24495)
- Removing magic status code numbers from ``api_connexion`` (#24050)
- Upgrade FAB to ``4.1.2`` (#24619)
- Switch Markdown engine to ``markdown-it-py`` (#19702)
- Update ``rich`` to latest version across the board. (#24186)
- Get rid of ``TimedJSONWebSignatureSerializer`` (#24519)
- Update flask-appbuilder ``authlib``/ ``oauth`` dependency (#24516)
- Upgrade to ``webpack`` 5 (#24485)
- Add ``typescript`` (#24337)
- The JWT claims in the request to retrieve logs have been standardized: we use ``nbf`` and ``aud`` claims for
maturity and audience of the requests. Also "filename" payload field is used to keep log name. (#24519)
- Address all ``yarn`` test warnings (#24722)
- Upgrade to react 18 and chakra 2 (#24430)
- Refactor ``DagRun.verify_integrity`` (#24114)
- Upgrade FAB to ``4.1.1`` (#24399)
- We now need at least ``Flask-WTF 0.15`` (#24621)