View Source Changelog

0-4-0

0.4.0

  • Adds ability to pass cache: false to get_treatment and get_treatments calls. Can be helpful for admin tools that change a split's definition and want to see the new evaluation immediately

0-3-0

0.3.0

  • Changes the testing strategy to have evaluations default to a yaml file if the test or process has not been setup with its own data source. This makes it easier for tests to opt-in to enabling flags, only for the tests where it matters. This way the rest of a test suite won't have to be concerned with split. It also makes it easier for global processes that are hard/impossible to isolate can have some split evaluation without throwing an error. The tradeoff here is that there won't be a loud error to let engineers know when a process hasn't been configured with an isolated data_source.

0-2-1

0.2.1

  • Fixes a bug where an empty yaml file would break evaluations

0-2-0

0.2.0

  • Swaps out the custom cache for Cachex because of timeouts happening in SplitClient.Boundary.Treatments calls. The cache had a complicated api key consisting of key, split_name, and any attributes. This was likely overkill, made the cache too big, and made lookups too expensive which likely caused the timeouts. After 10,000 or so get_treatment calls with unique keys the server would timeout. Now we can run 100,000 get_treatments calls with with unique keys and see no timeouts.
  • There's no more polling the split_evaluator, instead developers can configure a :cache_ttl