# Turborepo v2.10.9 — Release & Upgrade Intelligence
- **Product:** Turborepo (https://turbo.build)
- **Version:** v2.10.9
- **Released:** Aug 07, 2026
- **Impact Score:** 5/10
- **Breaking Changes:** Not verified
- **Canonical Analysis:** https://changelogs.us/turborepo/updates/v2.10.9/

## Executive Summary (TL;DR)
Turborepo v2.10.9. Source highlight: chore: Release Turborepo 2.10.8 by @github-actions[bot] in https://github.com/vercel/turborepo/pull/13626

## New Features
- feat: Compose aggregate native task dependencies
- feat: Parse Python quality tool declarations
- feat: Resolve Python quality plans
- feat: Synthesize Python quality tasks
- feat: Hash Python quality task inputs

## Improvements
- perf: Walk literal-prefix tree globs without wax compilation
- perf(lockfiles): Borrow field-name scalars in the pnpm fast parser
- perf(repository): Avoid discarded alias allocation in Relationship
- perf(lockfiles): Drop redundant human_name clone for pnpm v7/v9
- perf: Index workspace nodes by name in project_relationships
- perf: Share resolution identity lists across identical workspace closures

## Bug Fixes
- fix: Accept semver ranges in devEngines.packageManager.version
- docs: Fix duplicated word in runtime dependencies guide summary
- fix: Compose affected tasks with package filters
- fix: Upgrade brace-expansion to 5.0.9
- fix: Don't use `eprintln!` in the panic hook
- fix: Invalidate only when Git ignore sources change

## Upgrade Command
```bash
npm install --save-dev --save-exact turbo@2.10.9
```
