Skip to content

Releases: Eppo-exp/eppo-multiplatform

rust-sdk@5.2.1

07 Jan 17:22
334f804

Choose a tag to compare

Patch Changes

  • #394 aa6130d Thanks @dd-oleksii! - Added experimental support for CityHash-based hashing in bandit evaluation via the EPPO_EXPERIMENTAL_BANDITS_CITYHASH environment variable (set to "1", "true", or "TRUE" to enable). This provides significant performance improvements over the default MD5 implementation, especially when evaluating bandits with many actions.

    Warning: This feature is experimental and unstable. Enabling CityHash will produce different bandit evaluation results compared to the default MD5 implementation and other Eppo SDKs. Do not enable this if you need consistent results across multiple SDKs, services, or for historical data comparisons.

  • #391 415a90f Thanks @dd-oleksii! - Use faster md5 implementation.

  • #392 8995232 Thanks @dd-oleksii! - Improve bandit evaluation performance.

Full Changelog: https://github.com/Eppo-exp/eppo-multiplatform/compare/rust-sdk@5.2.0...rust-sdk@5.2.1

ruby-sdk@3.8.0

07 Jan 17:41
e5f579f

Choose a tag to compare

Minor Changes

Patch Changes

  • #386 83c8fd3 Thanks @dependabot! - chore(deps): bump ring from 0.17.8 to 0.17.14

  • #394 aa6130d Thanks @dd-oleksii! - Added experimental support for CityHash-based hashing in bandit evaluation via the EPPO_EXPERIMENTAL_BANDITS_CITYHASH environment variable (set to "1", "true", or "TRUE" to enable). This provides significant performance improvements over the default MD5 implementation, especially when evaluating bandits with many actions.

    Warning: This feature is experimental and unstable. Enabling CityHash will produce different bandit evaluation results compared to the default MD5 implementation and other Eppo SDKs. Do not enable this if you need consistent results across multiple SDKs, services, or for historical data comparisons.

  • #331 7a87ece Thanks @dependabot! - chore(deps): bump log from 0.4.22 to 0.4.28

  • #402 94a6aae Thanks @dependabot! - chore(deps): bump tokio from 1.48.0 to 1.49.0

  • #391 415a90f Thanks @dd-oleksii! - Use faster md5 implementation.

  • #392 8995232 Thanks @dd-oleksii! - Improve bandit evaluation performance.

  • #393 21b48a2 Thanks @dd-oleksii! - perf: use faster hash function for internal hashmaps (ahash).

Full Changelog: https://github.com/Eppo-exp/eppo-multiplatform/compare/ruby-sdk@3.7.4...ruby-sdk@3.8.0

python-sdk@4.4.1

07 Jan 17:23
334f804

Choose a tag to compare

Patch Changes

  • #382 78515fb Thanks @dd-oleksii! - Update pyo3 to 0.27.2. Support python 3.14.

  • #394 aa6130d Thanks @dd-oleksii! - Added experimental support for CityHash-based hashing in bandit evaluation via the EPPO_EXPERIMENTAL_BANDITS_CITYHASH environment variable (set to "1", "true", or "TRUE" to enable). This provides significant performance improvements over the default MD5 implementation, especially when evaluating bandits with many actions.

    Warning: This feature is experimental and unstable. Enabling CityHash will produce different bandit evaluation results compared to the default MD5 implementation and other Eppo SDKs. Do not enable this if you need consistent results across multiple SDKs, services, or for historical data comparisons.

  • #391 415a90f Thanks @dd-oleksii! - Use faster md5 implementation.

  • #392 8995232 Thanks @dd-oleksii! - Improve bandit evaluation performance.

  • #393 21b48a2 Thanks @dd-oleksii! - perf: use faster hash function for internal hashmaps (ahash).

Full Changelog: https://github.com/Eppo-exp/eppo-multiplatform/compare/python-sdk@4.4.0...python-sdk@4.4.1

eppo_core@10.0.0

07 Jan 16:50
334f804

Choose a tag to compare

Major Changes

  • #382 78515fb Thanks @dd-oleksii! - [pyo3] Update to pyo3 0.27, remove TryToPyObject trait because pyo3's IntoPyObject now properly handles errors.

Minor Changes

  • #393 21b48a2 Thanks @dd-oleksii! - [ahash] Add "ahash" feature flag to use faster hash function for all hashmaps. It is changing the public interface so is disabled by default so as to not cause breakage across SDKs and allow them to update one by one.

  • #380 6c66f91 Thanks @dd-oleksii! - [ruby] support ruby-4.0

Patch Changes

  • #394 aa6130d Thanks @dd-oleksii! - Added experimental support for CityHash-based hashing in bandit evaluation via the EPPO_EXPERIMENTAL_BANDITS_CITYHASH environment variable (set to "1", "true", or "TRUE" to enable). This provides significant performance improvements over the default MD5 implementation, especially when evaluating bandits with many actions.

    Warning: This feature is experimental and unstable. Enabling CityHash will produce different bandit evaluation results compared to the default MD5 implementation and other Eppo SDKs. Do not enable this if you need consistent results across multiple SDKs, services, or for historical data comparisons.

  • #391 415a90f Thanks @dd-oleksii! - Use faster md5 implementation.

  • #392 8995232 Thanks @dd-oleksii! - Improve bandit evaluation performance.

Full Changelog: https://github.com/Eppo-exp/eppo-multiplatform/compare/eppo_core@9.3.0...eppo_core@10.0.0

elixir-sdk@0.2.4

07 Jan 17:43
e5f579f

Choose a tag to compare

Patch Changes

  • #330 173b0f5 Thanks @dependabot! - chore(deps): bump log from 0.4.25 to 0.4.28

  • #388 9120912 Thanks @dd-oleksii! - Fix SDK incorrectly returning default values instead of false variants.

  • #394 aa6130d Thanks @dd-oleksii! - Added experimental support for CityHash-based hashing in bandit evaluation via the EPPO_EXPERIMENTAL_BANDITS_CITYHASH environment variable (set to "1", "true", or "TRUE" to enable). This provides significant performance improvements over the default MD5 implementation, especially when evaluating bandits with many actions.

    Warning: This feature is experimental and unstable. Enabling CityHash will produce different bandit evaluation results compared to the default MD5 implementation and other Eppo SDKs. Do not enable this if you need consistent results across multiple SDKs, services, or for historical data comparisons.

  • #397 db85656 Thanks @dependabot! - chore(deps): bump tokio from 1.48.0 to 1.49.0

  • #389 066661a Thanks @dependabot! - chore(deps): bump ring from 0.17.9 to 0.17.14

  • #332 176028b Thanks @dependabot! - chore(deps): bump serde_json from 1.0.138 to 1.0.145

  • #391 415a90f Thanks @dd-oleksii! - Use faster md5 implementation.

  • #350 91b44b7 Thanks @dependabot! - chore(deps): bump tokio from 1.44.1 to 1.48.0

  • #392 8995232 Thanks @dd-oleksii! - Improve bandit evaluation performance.

Full Changelog: https://github.com/Eppo-exp/eppo-multiplatform/compare/elixir-sdk@0.2.3...elixir-sdk@0.2.4

ruby-sdk@3.7.4

10 Dec 18:24
de485a4

Choose a tag to compare

Patch Changes

  • #367 8a5ffef Thanks @dd-oleksii! - Bump rb_sys to 0.9.105. This is the first version that adds Ruby 3.4 to the list of supported versions.

Full Changelog: https://github.com/Eppo-exp/eppo-multiplatform/compare/ruby-sdk@3.7.3...ruby-sdk@3.7.4

ruby-sdk@3.7.3

03 Nov 18:31
53420af

Choose a tag to compare

Patch Changes

  • #359 9dab003 Thanks @dd-oleksii! - Fix get_boolean_assignment_details debug method incorrectly overriding boolean false values with default.

Full Changelog: https://github.com/Eppo-exp/eppo-multiplatform/compare/ruby-sdk@3.7.2...ruby-sdk@3.7.3

rust-sdk@5.2.0

14 Oct 09:58
a307bee

Choose a tag to compare

Minor Changes

  • #339 9a4d2a5 Thanks @dd-oleksii! - Add wait_for_configuration_timeout() method.

    In poor network conditions, wait_for_configuration() may block waiting on configuration indefinitely which may be undesired. Add a new wait_for_configuration_timeout() which allows specifying a timeout for waiting.

Full Changelog: https://github.com/Eppo-exp/eppo-multiplatform/compare/rust-sdk@5.1.0...rust-sdk@5.2.0

python-sdk@4.4.0

14 Oct 09:59
a307bee

Choose a tag to compare

Minor Changes

Patch Changes

Full Changelog: https://github.com/Eppo-exp/eppo-multiplatform/compare/python-sdk@4.3.1...python-sdk@4.4.0

eppo_core@9.3.0

14 Oct 09:51
75cdaba

Choose a tag to compare

Minor Changes

  • #338 3211582 Thanks @dd-oleksii! - Add by-ref graceful shutdown for BackgroundThread.

  • #339 9a4d2a5 Thanks @dd-oleksii! - Add wait_for_configuration_timeout() method.

    In poor network conditions, wait_for_configuration() may block waiting on configuration indefinitely which may be undesired. Add a new wait_for_configuration_timeout() which allows specifying a timeout for waiting.

Patch Changes