# Apache Airflow 2.8.1 — Release & Upgrade Intelligence
- **Product:** Apache Airflow (https://airflow.apache.org)
- **Version:** 2.8.1
- **Released:** Jan 19, 2024
- **Impact Score:** 5/10
- **Breaking Changes:** Not verified
- **Canonical Analysis:** https://changelogs.us/airflow/updates/2.8.1/

## Executive Summary (TL;DR)
Apache Airflow 2.8.1. Source highlight: Target version for core dependency ``pendulum`` package set to 3 (#36281).

## New Features
- Add support of Pendulum 3 (#36281)
- Announce MSSQL support end in Airflow 2.9.0, add migration script hints (#36509)
- Add section about live-upgrading Airflow (#36637)
- Improve and add more complete description in the architecture diagrams (#36513)
- Add description on the ways how users should approach DB monitoring (#36483)
- Add branching based on mapped task group example to dynamic-task-mapping.rst (#36480)

## Improvements
- `PEP 639 Improving License Clarity with Better Package Metadata <https://peps.python.org/pep-0639/>`__
- Restore function scoped ``httpx`` import in file_task_handler for performance (#36753)
- Improve the error message displayed when there is a webserver error (#36570)
- Improve audit_logs.rst (#36213)

## Bug Fixes
- Fix airflow-scheduler exiting with code 0 on exceptions (#36800)
- Fix Callback exception when a removed task is the last one in the ``taskinstance`` list (#36693)
- Allow anonymous user edit/show resource when set ``AUTH_ROLE_PUBLIC=admin`` (#36750)
- Better error message when sqlite URL uses relative path (#36774)
- Explicit string cast required to force integer-type run_ids to be passed as strings instead of integers (#36756)
- Add log lookup exception for empty ``op`` subtypes (#35536)
