Skip to content

Releases: harness/ff-python-server-sdk

1.3.0

24 Nov 12:47
351834e

Choose a tag to compare

What's Changed

Bug fixes

  • Bump pip from 21.1 to 23.3 by @dependabot in #82

  • Bump requests from 2.25.1 to 2.31.0 by @dependabot in #61

  • [FFM-10040] - For percentage rollout, change Murmur3 hash calculation to be unsigned instead of signed. This ensures the Python SDK produces the same hash as other SDKs for use in percentage rollout calculation by @andybharness in #85

  • FFM-10063 by @erdirowlands in #86 :

    • Fixed an issue where the SDK would try to fetch deleted resources from the server receiving SSE delete events, resulting in 404 errors. Now, deleted resources are only removed from the local cache.
    • If flag/group requests fails after exceeding all retry attempts, the SDK now throws and catches an exception instead of returning None, which would previously resulted in an uncaught AttributeError.
    • If the SDK fails to initialize, it now stores the error. Subsequent evaluation requests return the default variation along with the error/SDK code immediately.
    • Fixed an issue where requesting a variation on the wrong flag type (e.g., requesting a boolean on a string) would not behave as expected. Now, an SDK error code is logged, and the default variation is returned in such cases.
    • Fixed an issue where polling would not stop if streaming is enabled. Additionally, fixed an issue where the poller would stop and not make any more flag updates after encountering an exception during a request.
    • Enhanced logging to correctly indicate when a stream disconnects and the system falls back to polling.
    • Changed various verbose logs from info to debug.

Enhancements

  • Flag/group requests now implement a retry mechanism, attempting up to 10 retries on retryable errors.

Breaking changes

  • From 1.3.x, for the Percentage Rollout feature this SDK release updates the Murmur3 hash calculation to align it to the GoLang SDK (and other SDKs). This means you may see target identifiers being remapped to different buckets. This change is necessary to allow customers to see consistent bucketing across SDKs regardless of what language they use.

Full Changelog: 1.2.5...1.3.0

1.2.5

08 Nov 12:23
2b33135

Choose a tag to compare

What's Changed

  • FFM-9866 Only log Flag/Segment not found warning in valid scenarios @erdirowlands in #84

Full Changelog: 1.2.4...1.2.5

1.2.4

08 Nov 11:40
9906bcf

Choose a tag to compare

What's Changed

Full Changelog: 1.2.3...1.2.4

1.2.3

26 Oct 11:19
6315c6f

Choose a tag to compare

What's Changed

  • FFM-9737 Fixes an issue where SDKCODE1003 was logged even when wait_for_initialzation was not called by @erdirowlands in #81

Full Changelog: 1.2.2...1.2.3

1.2.2

17 Jul 13:56
9fef98d

Choose a tag to compare

What's Changed

  • FFM-8544 Fixes an issue where the SDK will crash when used with the relay proxy

Full Changelog: 1.2.1...1.2.2

1.2.1

04 Jul 17:02
59148bc

Choose a tag to compare

What's Changed

FFM-8544:
* Low level streaming logs no longer get logged as errors.

Full Changelog: 1.2.0...1.2.1

1.2.0

28 Jun 14:40
751c12c

Choose a tag to compare

What's Changed

  • FFM-8300:
    • The SDK now sends targets to the metrics service in batches of 1000. Up to 200 batches, or 200K unique targets, can be sent in the metrics window. This is not user configurable, and is controlled via the SDK.
    • Does not allow events_sync_interval to be set below 60 seconds. If it is, the value will default to 60 seconds.

1.1.16

21 Jun 13:45
af29325

Choose a tag to compare

What's Changed

  • FFM-8231 - Sets a maximum metrics Target limit of 50k for a single interval and increases the Metrics API timeout to 30 seconds.

Known issues

During a metrics interval, if you evaluate flags with more than 50k unique targets (uniqueness based on identifier, name and attributes), then only the first 50k targets will get sent in the request to the metrics API. This will mean that the targets that were not included in the request will not appear in the UI, but, when they are included in evaluations during subsequent metrics intervals they will be correctly registered in the UI.

1.1.15

09 Jun 13:55
e11446c

Choose a tag to compare

What's Changed

1.1.14

05 Jun 13:08
013e864

Choose a tag to compare

What's Changed

  • FFM-7177 - The SDK will now retry on failed Client authentication requests for specific HTTP errors. If Client authentication fails, the SDK will serve the default values you provide in variation calls.
  • FFM-7362 - Adds additional headers to requests to the Feature Flags service to aid debugging.
    Full Changelog: 1.1.12...1.1.13