NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #2964 most downloaded on PyPI
Python client for the Unleash feature toggle system!
Last release 2 months ago
21 Jul 2026
Release timing varies
gaps range from 2 weeks to 4 months
Nearly every release is documented
notes for 59 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
8 years old
79 releases · first in 2018
feat: add sdk flavor metadata by @irstavr in #395
Full Changelog: v6.7.0...v6.8.0
chore: add semver and cidr constraints via Ygg update by @sighphyre in #393
Full Changelog: v6.6.0...v6.7.0
One column per quarter.
feat: Regex constraints by @sighphyre in #392
fix: do not delete cache on destroy by @gastonfournier in #391
Full Changelog: v6.5.1...v6.5.2
chore: bump spec compliant ygg version by @kwasniew in #389
Full Changelog: v6.5.0...v6.5.1
feat: impact metrics by @kwasniew in #387
fix: client initialization error with bootstrapped cache by @ErliSoares in #385
Full Changelog: v6.4.0...v6.4.1
docs: add docs for lifecycle events by @sighphyre in #360
Full Changelog: v6.3.0...v6.4.0
docs: work sphinx documentation into main README by @sighphyre in #355
Full Changelog: v6.2.2...v6.3.0
fix: allow anything that implements str as a context property by @sighphyre in https://github.com/Unleash/unleash-client-python/pull/353
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v6.2.1...v6.2.2
(Bugfix) Flush metrics if destroy()ing client by @ilee-asapp in https://github.com/Unleash/unleash-client-python/pull/3511
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v6.2.0...v6.2.1
chore: remve gh-action slack notify by @ivarconr in https://github.com/Unleash/unleash-client-python/pull/345
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v6.1.0...v6.2.0
chore: force os specific builds to actually run on the os they specify by @sighphyre in https://github.com/Unleash/unleash-client-python/pull/335
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v6.0.1...v6.1.0
Use PyPi Publish Github actions by @ivanklee86 in https://github.com/Unleash/unleash-client-python/pull/331
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v6.0.0...v6.0.1
chore: swap core for yggdrasil by @sighphyre in https://github.com/Unleash/unleash-client-python/pull/322
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.12.3...v6.0.0
Testing new package publishing to Pypi + attributions.
Testing new package publishing to Pypi + attributions.
Early beta version for Yggdrasil powered SDK
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.12.3...v6.0.0-beta.1
fix: feature toggle keys iteration by @nunogois in https://github.com/Unleash/unleash-client-python/pull/348
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.12.3...v5.12.5
Nothing published for this version
Fix doc typo by @jasonwbarnett in https://github.com/Unleash/unleash-client-python/pull/319
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.12.2...v.5.12.3
feat: add metrics metadata by @sighphyre in https://github.com/Unleash/unleash-client-python/pull/317
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.12.1...v5.12.2
docs: fix typo in docs by @michaelbrewer in https://github.com/Unleash/unleash-client-python/pull/313
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.12.0...v5.12.1
3.12 support by @ivanklee86 in https://github.com/Unleash/unleash-client-python/pull/308
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.11.2...v5.12.0
fix:mimesis pinned to 4.1.3 by @gardleopard in https://github.com/Unleash/unleash-client-python/pull/302
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.11.1...v5.11.2
fix: remove trailing whitespace
feat: configurable timeout and retries by @kwasniew in https://github.com/Unleash/unleash-client-python/pull/292
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.10.1...v5.11.0
chore: bump client spec by @nunogois in https://github.com/Unleash/unleash-client-python/pull/286
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.10.0...v5.10.1
feat: add is_feature_enabled to variant response by @nunogois in https://github.com/Unleash/unleash-client-python/pull/285
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.9.2...v5.10.0
(Bugfix) Update variants to use a seed value for their hash. This fixes an issue with variant distribution & gradual rollouts where users were seeing
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.9.0...v5.9.2
(Minor) Add support for Semver 3 while maintaining backwards compatibility. Thanks @@chaitanya-parsana!
support for dependent features by @Tymek in https://github.com/Unleash/unleash-client-python/pull/274
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.8.0...v5.9.0
check_date_operators works with dateutil < 2.9.1.Added support for Strategy Variants
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.7.1...v5.8.0
[pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in https://github.com/Unleash/unleash-client-python/pull/248
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.7.0...v5.7.1
feat: : Metrics are now recorded for each variant whenever get_variant is called. By @thomasheartman in https://github.com/Unleash/unleash-client-pyth
get_variant is called. By @thomasheartman in https://github.com/Unleash/unleash-client-python/pull/253disable_registration option. By @Lujeni in https://github.com/Unleash/unleash-client-python/pull/251.Cache docstring. By @Lujeni in https://github.com/Unleash/unleash-client-python/pull/252.setup.py to pyproject.toml. By @ivanklee86 in https://github.com/Unleash/unleash-client-python/pull/245 and https://github.com/Unleash/unleash-client-python/pull/247.Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.6.0...v5.7.0
(Major) Add support for event callbacks. Thanks @akalex!
Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.5.0...v5.6.0
(Minor) SDK now warns when multiple instances are created
(Bugfix) Fix an issue where custom stickiness fail to calculate correctly
(Minor) Allow users to pass in an apscheduler scheduler & executor name.
bootstraped parameter. Thanks @koffie !Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.3.0...v5.4.0
(Minor) Add retries to GET /features. Thanks @janboll!
default_value, fix toggle naming by @thomasheartman in https://github.com/Unleash/unleash-client-python/pull/208default_value argument. by @thomasheartman in https://github.com/Unleash/unleash-client-python/pull/213Full Changelog: https://github.com/Unleash/unleash-client-python/compare/v5.2.0...v5.3.0
(Minor) Add support for bootstrapping UnleashClient with an initial configuration.
(Bugfix) Clarify logging if Unleash server doesn't return feature provisioning (i.e. HTTP 304).
(Minor) Move UnleashClient logging to the UnleashClient logger.
UnleashClient logger.(Major) Support new constraint operators.
unleash-client-python to modernize tooling (setuptools_scm and centralizing tool config in pyproject.toml).(Bugfix) Fix HTTP 304 handling on /client/feature for Gitlab. Thanks @janLo!
/client/feature for Gitlab. Thanks @janLo!(Breaking) Modify client initialization to allow jitter configuration on refresh/background refresh intervals. May break code when parameters to Unlea
initialize_client() again won't re-run initialization./client/feature endpoint.master to main.(Minor) Include py.typed to mark package as type-friendly! Thanks @wbolster!
(Minor) Support running Unleash client as a context manager. Thanks @Piojo !
(Minor) initialize_client() will raise exception if UnleashClient is configured with an invalid URL.
initialize_client() will raise exception if UnleashClient is configured with an invalid URL.is_enabled() or get_varients() calls fail.(Minor) Support custom stickiness for FlexibleRollout strategy and variants.
(Minor) Support project-based feature flag loading.
(Major) Deprecate the default_value argument in the is_enabled() method.
default_value argument in the is_enabled() method.(Minor) Only send metrics to API if feature toggle is in-use (i.e. has been resolved to True/False). Thanks @fwpheckel!
variations reference in favor of variants verbiage.(Major) Fix bug where loader didn't properly refresh variants.
(Minor) Add Python 3.9 support.
(Minor) Better error handling and typo fixes. Thanks @vgerak!
(Major) Stop using the default_value argument in the is_enabled() method (as it can cause counter-intuitive behavior) and add deprecation warning. Thi…
default_value argument in the is_enabled() method (as it can cause counter-intuitive behavior) and add deprecation warning. This argument will be removed in the next major version upgrade!
fallback_function argument instead. If you need a blanket True in case of an exception, you can pass in a lambda like: lambda x, y: True.(Minor) Move CI to Github Actions, add auto-publishing.
(Major) Fallback function will only be called if exception (feature flag not found, general exception) occurs when calling is_enabled(). It will not b
Bugfixes
is_enabled(). It will not be called on successful execution of the method.(Major) Add support for variants on feature toggles.
General
Bugfixes
(Major) Allow users to supply a fallback function to customize the default value of a feature flag.
General
Your coding agent can read these notes before it upgrades. Set up the MCP server →