test_track_rails_client 5.0.1 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1362a616d6ae5b12bf8a7d3a1af3180f069453ffeb87b65863b6833fd544bbfa
4
- data.tar.gz: 53a48cb3d727a1b288f0bf49d27438529a6c0a04745096fe89e01e917e847f7d
3
+ metadata.gz: 1ef99958de5b5a33d340983ad667aa5232a0209b5e5e2aa0ecb249fe8ba92e35
4
+ data.tar.gz: edb76d28b667e451a5b9a284cb90cd3c3eb2a1a55f71471763842dcaf3df052b
5
5
  SHA512:
6
- metadata.gz: 100b8fd232c2e51a0bdf7879a7a797852cfa94ebb0ab6236f2eb62fc0c2a15946717f1cb981c25ac278c5173a4da2fba81c52f0c24d2f76f32dd1ef10ea13b2d
7
- data.tar.gz: 8719fbe5e2034c70a4b0b4aea2be8fdd251c7e0b0313fac7c5f184ed5797e3fce517434e447e09f06bb1081b476826e788d9408f61f593c3ecef685e5260ba68
6
+ metadata.gz: 7fce8893812f7ce818b849e471d77cc4f8ce596189ef8a7f1b9aedfa17761b951f0cfcfedbee317e772562c640a5f303f37e52bff03bfd36220a3c67a49b6c0c
7
+ data.tar.gz: 668e3db85f8939b1322ec4fb821381278ac0331d41ccdc75cb460b6787f3b8e3e6ed5ae101b42f71bba003f76a13297879faf5e870895ac6876fbbb4769e244c
data/README.md CHANGED
@@ -390,6 +390,27 @@ def notify(message)
390
390
 
391
391
  ## Upgrading
392
392
 
393
+ ### From 5.0 to 6.0
394
+
395
+ * The offline split registry (used in tests, etc) will now favor variants with
396
+ weights of 100% when generating deterministic weightings. If no variant has a
397
+ weight of 100%, then it will fall back on the previous behavior of favoring
398
+ the variant with the lowest alphanumerically-sorted name (conventionally
399
+ "false" and "control").
400
+
401
+ This means that, when deciding a split via a migration (and/or updating a new
402
+ variant to 100% in the schema), tests that assumed the previous variant may
403
+ begin to fail and will require additional code cleanup (or must be explicitly
404
+ stubbed to use the previous variant).
405
+
406
+ ### From 4.0 to 5.0
407
+
408
+ * The direct dependency on the `delayed_job_active_record` gem has been removed,
409
+ and background jobs now depend on the `ActiveJob` framework. When upgrading,
410
+ ensure that your application [specifies a
411
+ backend](https://guides.rubyonrails.org/active_job_basics.html#setting-the-backend)
412
+ (e.g. `config.active_job.queue_adapter = :delayed_job`).
413
+
393
414
  ### From 3.0 to 4.0
394
415
 
395
416
  * The contract of custom analytics plugins has changed. Instead of
@@ -67,7 +67,7 @@ class TestTrack::Fake::SplitRegistry
67
67
 
68
68
  def split_registry_with_deterministic_weights
69
69
  splits = split_hash.each_with_object({}) do |(split_name, weighting_registry), result|
70
- default_variant = weighting_registry.keys.min
70
+ default_variant = weighting_registry.invert[100] || weighting_registry.keys.min
71
71
 
72
72
  adjusted_weights = { default_variant => 100 }
73
73
  weighting_registry.except(default_variant).each_key do |variant|
@@ -13,10 +13,10 @@ class TestTrack::UnsyncedAssignmentsNotifier
13
13
 
14
14
  def notify
15
15
  assignments.each do |assignment|
16
- TestTrack::AssignmentEventJob.perform_now assignment_job_args(assignment)
16
+ TestTrack::AssignmentEventJob.perform_now(**assignment_job_args(assignment))
17
17
  rescue *TestTrack::SERVER_ERRORS => e
18
18
  Rails.logger.error "TestTrack failed to notify unsynced assignments, retrying. #{e}"
19
- TestTrack::AssignmentEventJob.perform_later assignment_job_args(assignment)
19
+ TestTrack::AssignmentEventJob.perform_later(**assignment_job_args(assignment))
20
20
  end
21
21
  end
22
22
 
@@ -1,3 +1,3 @@
1
1
  module TestTrackRailsClient
2
- VERSION = "5.0.1" # rubocop:disable Style/MutableConstant
2
+ VERSION = "7.0.0".freeze
3
3
  end
@@ -18,6 +18,8 @@ Gem::Specification.new do |s|
18
18
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
19
19
  s.require_paths = ["lib"]
20
20
 
21
+ spec.required_ruby_version = '>= 2.6'
22
+
21
23
  s.add_development_dependency "json", "~> 1.8"
22
24
  s.add_development_dependency "pry"
23
25
  s.add_development_dependency "rake", "~> 10.0"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test_track_rails_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.1
4
+ version: 7.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan O'Neill
@@ -10,10 +10,10 @@ authors:
10
10
  - John Mileham
11
11
  - Alan Norton
12
12
  - Sam Moore
13
- autorequire:
13
+ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2022-05-11 00:00:00.000000000 Z
16
+ date: 2023-03-06 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: activejob
@@ -21,28 +21,28 @@ dependencies:
21
21
  requirements:
22
22
  - - ">="
23
23
  - !ruby/object:Gem::Version
24
- version: '5.1'
24
+ version: '6.0'
25
25
  type: :runtime
26
26
  prerelease: false
27
27
  version_requirements: !ruby/object:Gem::Requirement
28
28
  requirements:
29
29
  - - ">="
30
30
  - !ruby/object:Gem::Version
31
- version: '5.1'
31
+ version: '6.0'
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: activemodel
34
34
  requirement: !ruby/object:Gem::Requirement
35
35
  requirements:
36
36
  - - ">="
37
37
  - !ruby/object:Gem::Version
38
- version: '5.1'
38
+ version: '6.0'
39
39
  type: :runtime
40
40
  prerelease: false
41
41
  version_requirements: !ruby/object:Gem::Requirement
42
42
  requirements:
43
43
  - - ">="
44
44
  - !ruby/object:Gem::Version
45
- version: '5.1'
45
+ version: '6.0'
46
46
  - !ruby/object:Gem::Dependency
47
47
  name: faraday
48
48
  requirement: !ruby/object:Gem::Requirement
@@ -439,7 +439,7 @@ homepage: https://github.com/Betterment
439
439
  licenses:
440
440
  - MIT
441
441
  metadata: {}
442
- post_install_message:
442
+ post_install_message:
443
443
  rdoc_options: []
444
444
  require_paths:
445
445
  - lib
@@ -447,15 +447,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
447
447
  requirements:
448
448
  - - ">="
449
449
  - !ruby/object:Gem::Version
450
- version: 2.5.0
450
+ version: 2.7.0
451
451
  required_rubygems_version: !ruby/object:Gem::Requirement
452
452
  requirements:
453
453
  - - ">="
454
454
  - !ruby/object:Gem::Version
455
455
  version: '0'
456
456
  requirements: []
457
- rubygems_version: 3.3.7
458
- signing_key:
457
+ rubygems_version: 3.2.33
458
+ signing_key:
459
459
  specification_version: 4
460
460
  summary: Rails client for TestTrack
461
461
  test_files: []