Split v4.0.2 Release Notes
Release Date: 2022-12-02 // 10 months 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)
Previous changes from v4.0.1
-
๐ 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)
- 0๏ธโฃ 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)