Splitrb Split Versions Save

:chart_with_upwards_trend: The Rack Based A/B testing framework

v4.0.3

5 months ago

4.0.3 (November 15th, 2023)

Bugfixes:

  • Do not throw error if alternativas have data that can lead to negative numbers for probability calculation (@andrehjr, #703)
  • Do not persist invalid extra_info on ab_record_extra_info. (@trostli @andrehjr, #717)
  • CROSSSLOT keys issue fix when using redis cluster (@naveen-chidhambaram, #710)
  • Convert value to string before saving it in RedisAdapter (@Jealrock, #714)
  • Fix deprecation warning with Redis 4.8.0 (@martingregoire, #701)

Misc:

  • Add matrix as a default dependency (@andrehjr, #705)
  • Add Ruby 3.2 to Github Actions (@andrehjr, #702)
  • Update documentation regarding finding users outside a web session (@andrehjr, #716)
  • Update actions/checkout to v4 (@andrehjr, #718)

v4.0.2

1 year ago

Bugfixes:

  • Stop crashing on non-hash json (@knarewski, #697)
  • Handle when Rails is partially loaded as a Gem (@TSMMark, #687)

Features:

  • Add support for redis-client, which does not automatically cast types to strings (@knarewski, #696)
  • Add ability to initialize experiments (@robin-phung, #673)

Misc:

  • Fix default branch name and gem metadata indentation (@ursm, #693)
  • Update actions/checkout to v3 (@andrehjr, #683)
  • Enforce double quotes (@andrehjr, #682)
  • Fix Rubocop Style/* Offenses (@andrehjr, #681)
  • Enable rubocop on Github Actions (@andrehjr, #680)
  • Fix all Layout issues on the project (@andrehjr, #679)
  • Fix Style/HashSyntax offenses (@andrehjr, #678)
  • Remove usage of deprecated implicit block expectation from specs (@andrehjr, #677)
  • Remove appraisals configuration (@andrehjr, #676)
  • Add Ruby 3.1 (@andrehjr, #675)
  • Encapsulate Split::Algorithms at our own module to avoid explicit calling rubystats everywhere (@andrehjr, #674)

v4.0.1

2 years ago

Bugfixes:

  • ab_test must return metadata on error or if split is disabled/excluded user (@andrehjr, #622)
  • Fix versioned experiments when used with allow_multiple_experiments=control (@andrehjr, #613)
  • Only block Pinterest bot (@huoxito, #606)
  • Respect experiment defaults when loading experiments in initializer. (@mattwd7, #599)
  • Removes metadata key when it updated to nil (@andrehjr, #633)
  • Force experiment does not count for metrics (@andrehjr, #637)
  • Fix cleanup_old_versions! misbehaviour (@serggl, #661)

Features:

  • Make goals accessible via on_trial_complete callbacks (@robin-phung, #625)
  • Replace usage of SimpleRandom with RubyStats(Used for Beta Distribution RNG) (@andrehjr, #616)
  • Introduce enable/disable experiment cohorting (@robin-phung, #615)
  • Add on_experiment_winner_choose callback (@GenaMinenkov, #574)
  • Add Split::Cache to reduce load on Redis (@rdh, #648)
  • Caching based optimization in the experiment#save path (@amangup, #652)
  • Adds config option for cookie domain (@joedelia, #664)

Misc:

  • Drop support for Ruby < 2.5 (@andrehjr, #627)
  • Drop support for Rails < 5 (@andrehjr, #607)
  • Bump minimum required redis to 4.2 (@andrehjr, #628)
  • Removed repeated loading from config (@robin-phung, #619)
  • Simplify RedisInterface usage when persisting Experiment alternatives (@andrehjr, #632)
  • Remove redis_url impl. Deprecated on version 2.2 (@andrehjr, #631)
  • Remove thread_safe config as redis-rb is thread_safe by default (@andrehjr, #630)
  • Fix typo of in Split::Trial class variable (TomasBarry, #644)
  • Single HSET to update values, instead of multiple ones (@andrehjr, #640)
  • Use Redis#hmset to keep compatibility with Redis < 4.0 (@andrehjr, #659)
  • Remove 'set' parsing for alternatives. Sets were used as storage and deprecated on 0.x (@andrehjr, #639)
  • Adding documentation related to what is stored on cookies. (@andrehjr, #634)
  • Keep railtie defined under the Split gem namespace (@avit, #666)
  • Update RSpec helper to support block syntax (@clowder, #665)

v3.4.1

4 years ago

3.4.1 (November 12th, 2019)

Bugfixes:

  • Reference ActionController directly when including split helpers, to avoid breaking Rails API Controllers (@andrehjr, #602)

v3.4.0

4 years ago

This version includes a few performance improvements and bugfixes. 🚀

3.4.0 (November 9th, 2019)

Features:

  • Improve DualAdapter (@santib, #588), adds a new configuration for the DualAdapter, making it possible to keep consistency for logged_out/logged_in users. It's an opt-in flag. No Behavior was changed on this release.
  • Make dashboard pagination default "per" param configurable (@alopatin, #597)

Bugfixes:

  • Fix force_alternative for experiments with incremented version (@giraffate, #568)
  • Persist alternative weights (@giraffate, #570)
  • Combined experiment performance improvements (@gnanou, #575)
  • Handle correctly case when ab_finished is called before ab_test for a user (@gnanou, #577)
  • When loading active_experiments, it should not look into user's 'finished' keys (@andrehjr, #582)

Misc:

  • Remove rubyforge_project from gemspec (@giraffate, #583)
  • Fix URLs to replace http with https (@giraffate , #584)
  • Lazily include split helpers in ActionController::Base (@hasghari, #586)
  • Fix unused variable warnings (@andrehjr, #592)
  • Fix ruby warnings (@andrehjr, #593)
  • Update rubocop.yml config (@andrehjr, #594)
  • Add frozen_string_literal to all files that were missing it (@andrehjr, #595)

v3.3.2

5 years ago

Features:

  • Added uptime robot to configuration.rb (@razel1982, #556)
  • Check to see if being run in Rails application and run in before_initialize (@husteadrobert, #555)

Bugfixes:

  • Fix error message interpolation (@hanibash, #553)
  • Fix Bigdecimal warnings (@agraves, #551)
  • Avoid hitting up on redis for robots/excluded users. (@andrehjr, #544)
  • Checks for defined?(request) on Helper#exclude_visitor?. (@andrehjr)

Misc:

  • Update travis to add Rails 6 (@edmilton, #559)
  • Fix broken specs in developement environment (@dougpetronilio, #557)

v3.3.1

5 years ago

v3.3.0

5 years ago

Features:

  • Added pagination for dashboard (@GeorgeGorbanev, #518)
  • Add Facebot crawler to list of bots (@pfeiffer, #530)
  • Ignore previewing requests (@pfeiffer, #531)
  • Fix binding of ignore_filter (@pfeiffer, #533)

Bugfixes:

  • Fix cookie header duplication (@andrehjr, #522)

Performance:

  • Improve performance of RedisInterface#make_list_length by using LTRIM command (@mlovic, #509)

Misc:

  • Update development dependencies
  • test rails 5.2 on travis (@lostapathy, #524)
  • update ruby versions for travis (@lostapathy, #525)
gem install split -v 3.3.0

or via Bundler:

gem "split", "~> 3.3.0"

v3.2.0

6 years ago

Features:

  • Allow configuration of how often winning alternatives are recalculated (@patbl, #501)

Bugfixes:

  • Avoid z_score numeric exception for conversion rates >1 (@cmantas, #503)
  • Fix combined experiments (@semanticart, #502)

Available on Rubygems: https://rubygems.org/gems/split/versions/3.2.0

gem install split -v 3.2.0

or via Bundler:

gem "split", "~> 3.2.0"

v3.1.1

6 years ago

Bugfixes:

  • Bring back support for ruby 1.9.3 and greater (rubygems 2.0.0 or greater now required) (@patbl, #498)

Misc:

  • Document testing with RSpec (@eliotsykes, #495)

Available on Rubygems: https://rubygems.org/gems/split/versions/3.1.1

gem install split -v 3.1.1

or via Bundler:

gem "split", "~> 3.1.1"