# Apache Airflow 3.2.0 — Release & Upgrade Intelligence
- **Product:** Apache Airflow (https://airflow.apache.org)
- **Version:** 3.2.0
- **Released:** Apr 07, 2026
- **Impact Score:** 7/10
- **Breaking Changes:** Source flagged
- **Canonical Analysis:** https://changelogs.us/airflow/updates/3.2.0/

## Executive Summary (TL;DR)
Apache Airflow 3.2.0. Source highlight: 📦 PyPI: https://pypi.org/project/apache-airflow/3.2.0/

## Breaking Changes & Deprecations
- This is a breaking change for any custom code that performs string-based path manipulations relying on this behavior.

## New Features
- New serializers should be added to ``airflow.sdk.serde.serializers.*`` namespace
- **For new serializers**: Add them to ``airflow.sdk.serde.serializers.*`` namespace (e.g., create ``task-sdk/src/airflow/sdk/serde/serializers/your_serializer.py``)
- **Rolling worker restarts**: New workers spawn and pass health checks before old workers
- **Memory sharing**: Gunicorn uses preload + fork, so workers share memory via
- **Correct FIFO signal handling**: Gunicorn's SIGTTOU kills the oldest worker (FIFO),
- Add FIPS support by making Python LTO configurable via ``PYTHON_LTO`` build argument (#58337)

## Improvements
- **Grid View Virtualization**:
- **XCom Management in the UI**:
- **HITL Detail History**:
- **Gantt Chart Improvements**:
- All task tries displayed: Gantt chart now shows every attempt, not just the latest
- Task display names in Gantt: task_display_name shown for better readability (#61438)

## Bug Fixes
- Fixed null datetime crash: Gantt chart no longer crashes on tasks with null datetime fields
- ``retry_exponential_backoff=0`` or ``False`` disables exponential backoff (uses fixed ``retry_delay``)
- Add ``update_mask`` support for bulk PATCH APIs (#54597)
- Fix sensitive configuration values not being masked in public config APIs; treat the deprecated ``non-sensitive-only`` value as ``True`` (#59880)
- Fix ``InvalidStatsNameException`` for pool names with invalid characters by auto-normalizing them when emitting metrics (#59938)
- Fix JWT tokens appearing in task logs by excluding the token field from workload object representations (#62964)
