---
title: Python-SDK - 5.6.0
slug: feature-experimentation/release-notes/python-sdk-v5-6-0
docTags: 
createdAt: 2026-07-20T15:45:13.573Z
---

## What's Changed

- \[AI-FSSDK] \[FSSDK-12369] Add local holdouts support to Python SDK by @Mat001 in [https://github.com/optimizely/python-sdk/pull/512](https://github.com/optimizely/python-sdk/pull/512)
- \[AI-FSSDK] \[FSSDK-12670] Block ODP identify event for single identifier by @jaeopt in [https://github.com/optimizely/python-sdk/pull/513](https://github.com/optimizely/python-sdk/pull/513)
- \[AI-FSSDK] \[FSSDK-12760] Add localHoldouts datafile section for backward compat by @jaeopt in [https://github.com/optimizely/python-sdk/pull/517](https://github.com/optimizely/python-sdk/pull/517)
- \[AI-FSSDK] \[FSSDK-12813] Normalize decision event campaign\_id, variation\_id, and entity\_id by @jaeopt in [https://github.com/optimizely/python-sdk/pull/518](https://github.com/optimizely/python-sdk/pull/518)
- \[AI-FSSDK] \[FSSDK-12750] Use attribute id instead of key for CMAB prediction requests by @raju-opti in [https://github.com/optimizely/python-sdk/pull/520](https://github.com/optimizely/python-sdk/pull/520)
- \[FSSDK-12871] chore: preparing for release v5.6.0 by @FarhanAnjum-opti in [https://github.com/optimizely/python-sdk/pull/521](https://github.com/optimizely/python-sdk/pull/521)

## New Contributors

- @raju-opti made their first contribution in [https://github.com/optimizely/python-sdk/pull/520](https://github.com/optimizely/python-sdk/pull/520)

**Full Changelog**: [https://github.com/optimizely/python-sdk/compare/v5.5.0...v5.6.0](https://github.com/optimizely/python-sdk/compare/v5.5.0...v5.6.0)

[https://github.com/optimizely/python-sdk/releases/tag/v5.6.0](https://github.com/optimizely/python-sdk/releases/tag/v5.6.0)
