unleash 5.0.1 → 5.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e5eec84ff0d0a4890c3cc4f4605bc67762c5d4e434a0068e8a95cc5dbad830c3
4
- data.tar.gz: 622ca11c209b7c214bc9e4c0114f0f2ec536c678d7faf536d8d657142c7201fc
3
+ metadata.gz: d47d4a063a3d6bb76a8a8867882b4cc7bcac17e9f9b3e4c4d7524f1115093e0d
4
+ data.tar.gz: bdf1d479d9ce09c34afbfc1ecf08aabb9745f8d74256e096b9fdd30f00e455ad
5
5
  SHA512:
6
- metadata.gz: 5ac3bd355cf79dc61be37bd9a2df183e89e95b5221914382ef767063eb831a528e48eb558556877c3f208abbb648acf9af029eb27b5c629d18f53823d77b03a0
7
- data.tar.gz: 2f5f1af33f7e9b60016a8e3c8f6434fff6f8ddb4e0d3cd5cafa1cb03550536cd6d95caa964b2945485509a6286387a6395173fe782d178b42ea1dd67bc9c20ad
6
+ metadata.gz: e7a7e91c6016b10445777cf45ec9d914a22467ee0668924e7a960b4779f972436871ba2990a97e6ed7cf9937d285bd6efd07b31b81d05fa01181de84fe507cdb
7
+ data.tar.gz: c6ed23eac0a4b91c081eeac6b6a7cc0bbf7c54b26782624714d5a010cd50e2c1390c9bbaf0ea37ea120255b72b7a36787003e9761a5b4b98a7e1e7f8c534b5a7
@@ -30,14 +30,12 @@ jobs:
30
30
  ruby-version:
31
31
  - jruby-9.4
32
32
  - jruby-9.3
33
- - jruby-9.2
34
33
  - 3.3
35
34
  - 3.2
36
35
  - 3.1
37
36
  - '3.0'
38
37
  - 2.7
39
38
  - 2.6
40
- - 2.5
41
39
 
42
40
  needs:
43
41
  - lint
@@ -50,8 +48,13 @@ jobs:
50
48
  ruby-version: ${{ matrix.ruby-version }}
51
49
  - name: Install dependencies
52
50
  run: bundle install
51
+ - name: Get test project semver
52
+ id: get_semver
53
+ run: |
54
+ semver=$(ruby echo_client_spec_version.rb)
55
+ echo "::set-output name=semver::$semver"
53
56
  - name: Download test cases
54
- run: git clone --depth 5 --branch v5.0.2 https://github.com/Unleash/client-specification.git client-specification
57
+ run: git clone --depth 5 --branch v${{ steps.get_semver.outputs.semver }} https://github.com/Unleash/client-specification.git client-specification
55
58
  - name: Run tests
56
59
  run: bundle exec rake
57
60
  env:
data/.rubocop.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  # inherit_from: .rubocop_todo.yml
2
2
 
3
3
  AllCops:
4
- TargetRubyVersion: 2.5
4
+ TargetRubyVersion: 2.6
5
5
 
6
6
  Naming/PredicateName:
7
7
  AllowedMethods:
data/CHANGELOG.md CHANGED
@@ -124,7 +124,12 @@ Note: These changes are not considered notable:
124
124
  - only send metrics if there is data to send. (#58)
125
125
  - in Client#get_variant() allow context and fallback_variant as nil (#51)
126
126
 
127
- [unreleased]: https://git1hub.com/unleash/unleash-client-ruby/compare/v4.4.3...HEAD
127
+ [unreleased]: https://github.com/unleash/unleash-client-ruby/compare/v5.0.1...HEAD
128
+ [5.0.1]: https://github.com/unleash/unleash-client-ruby/compare/v5.0.0...v5.0.1
129
+ [5.0.0]: https://github.com/unleash/unleash-client-ruby/compare/v4.6.0...v5.0.0
130
+ [4.6.0]: https://github.com/unleash/unleash-client-ruby/compare/v4.5.0...v4.6.0
131
+ [4.5.0]: https://github.com/unleash/unleash-client-ruby/compare/v4.4.4...v4.5.0
132
+ [4.4.4]: https://github.com/unleash/unleash-client-ruby/compare/v4.4.3...v4.4.4
128
133
  [4.4.3]: https://github.com/unleash/unleash-client-ruby/compare/v4.4.2...v4.4.3
129
134
  [4.4.2]: https://github.com/unleash/unleash-client-ruby/compare/v4.4.1...v4.4.2
130
135
  [4.4.1]: https://github.com/unleash/unleash-client-ruby/compare/v4.4.0...v4.4.1
data/README.md CHANGED
@@ -16,10 +16,8 @@ Leverage the [Unleash Server](https://github.com/Unleash/unleash) for powerful f
16
16
  * MRI 3.0
17
17
  * MRI 2.7
18
18
  * MRI 2.6
19
- * MRI 2.5
20
19
  * jruby 9.4
21
20
  * jruby 9.3
22
- * jruby 9.2
23
21
 
24
22
  ## Installation
25
23
 
@@ -529,7 +527,7 @@ You can also run `bin/console` for an interactive prompt that will allow you to
529
527
  This SDK is also built against the Unleash Client Specification tests.
530
528
  To run the Ruby SDK against this test suite, you'll need to have a copy on your machine, you can clone the repository directly using:
531
529
 
532
- `git clone --depth 5 --branch v5.0.2 https://github.com/Unleash/client-specification.git client-specification`
530
+ `git clone --branch v$(ruby echo_client_spec_version.rb) https://github.com/Unleash/client-specification.git`
533
531
 
534
532
  After doing this, `rake spec` will also run the client specification tests.
535
533
 
@@ -0,0 +1,3 @@
1
+ require 'rubygems'
2
+ gemspec = Gem::Specification.load('unleash-client.gemspec')
3
+ puts gemspec.metadata['client-specification-version']
@@ -119,7 +119,11 @@ module Unleash
119
119
  'sdkVersion': "unleash-client-ruby:" + Unleash::VERSION,
120
120
  'strategies': Unleash.strategies.keys,
121
121
  'started': Time.now.iso8601(Unleash::TIME_RESOLUTION),
122
- 'interval': Unleash.configuration.metrics_interval_in_millis
122
+ 'interval': Unleash.configuration.metrics_interval_in_millis,
123
+ 'platformName': RUBY_ENGINE,
124
+ 'platformVersion': RUBY_VERSION,
125
+ 'yggdrasilVersion': nil,
126
+ 'specVersion': Unleash::CLIENT_SPECIFICATION_VERSION
123
127
  }
124
128
  end
125
129
 
@@ -3,6 +3,9 @@ require 'tmpdir'
3
3
  require 'unleash/bootstrap/configuration'
4
4
 
5
5
  module Unleash
6
+ gemspec = Gem::Specification.load('unleash-client.gemspec')
7
+ CLIENT_SPECIFICATION_VERSION = gemspec.metadata['client-specification-version'].freeze
8
+
6
9
  class Configuration
7
10
  attr_accessor \
8
11
  :url,
@@ -54,7 +57,7 @@ module Unleash
54
57
  'User-Agent' => "UnleashClientRuby/#{Unleash::VERSION} #{RUBY_ENGINE}/#{RUBY_VERSION} [#{RUBY_PLATFORM}]",
55
58
  'UNLEASH-INSTANCEID' => self.instance_id,
56
59
  'UNLEASH-APPNAME' => self.app_name,
57
- 'Unleash-Client-Spec' => '5.0.2'
60
+ 'Unleash-Client-Spec' => CLIENT_SPECIFICATION_VERSION
58
61
  }.merge!(generate_custom_http_headers)
59
62
  end
60
63
 
@@ -55,9 +55,9 @@ module Unleash
55
55
 
56
56
  def self.on_valid_date(val1, val2)
57
57
  val1 = DateTime.parse(val1)
58
- val2 = DateTime.parse(val2)
58
+ val2 = val2.is_a?(DateTime) ? val2 : DateTime.parse(val2)
59
59
  yield(val1, val2)
60
- rescue ArgumentError
60
+ rescue ArgumentError, TypeError
61
61
  Unleash.logger.warn "Unleash::ConstraintMatcher unable to parse either context_value (#{val1}) \
62
62
  or constraint_value (#{val2}) into a date. Returning false!"
63
63
  false
@@ -20,7 +20,7 @@ module Unleash
20
20
 
21
21
  def to_s
22
22
  "<Context: user_id=#{@user_id},session_id=#{@session_id},remote_address=#{@remote_address},properties=#{@properties}" \
23
- ",app_name=#{@app_name},environment=#{@environment}>"
23
+ ",app_name=#{@app_name},environment=#{@environment},current_time=#{@current_time}>"
24
24
  end
25
25
 
26
26
  def to_h
@@ -24,6 +24,10 @@ module Unleash
24
24
  report = {
25
25
  'appName': Unleash.configuration.app_name,
26
26
  'instanceId': Unleash.configuration.instance_id,
27
+ 'platformName': RUBY_ENGINE,
28
+ 'platformVersion': RUBY_VERSION,
29
+ 'yggdrasilVersion': nil,
30
+ 'specVersion': Unleash::CLIENT_SPECIFICATION_VERSION,
27
31
  'bucket': {
28
32
  'start': start.iso8601(Unleash::TIME_RESOLUTION),
29
33
  'stop': stop.iso8601(Unleash::TIME_RESOLUTION),
@@ -1,3 +1,3 @@
1
1
  module Unleash
2
- VERSION = "5.0.1".freeze
2
+ VERSION = "5.0.2".freeze
3
3
  end
@@ -21,7 +21,7 @@ Gem::Specification.new do |spec|
21
21
  spec.bindir = 'bin'
22
22
  spec.executables = spec.files.grep(%r{^bin/unleash}) { |f| File.basename(f) }
23
23
  spec.require_paths = ["lib"]
24
- spec.required_ruby_version = ">= 2.5"
24
+ spec.required_ruby_version = ">= 2.6"
25
25
 
26
26
  spec.add_dependency "murmurhash3", "~> 0.1.7"
27
27
 
@@ -31,6 +31,8 @@ Gem::Specification.new do |spec|
31
31
  spec.add_development_dependency "rspec-json_expectations", "~> 2.2"
32
32
  spec.add_development_dependency "webmock", "~> 3.18.1"
33
33
 
34
+ spec.metadata["client-specification-version"] = "5.0.2"
35
+
34
36
  # rubocop:disable Gemspec/RubyVersionGlobalsUsage, Style/IfUnlessModifier
35
37
  if Gem::Version.new(RUBY_VERSION) > Gem::Version.new('3.0')
36
38
  spec.add_development_dependency "rubocop", "~> 1.51.0"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unleash
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.1
4
+ version: 5.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Renato Arruda
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-03-27 00:00:00.000000000 Z
11
+ date: 2024-07-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: murmurhash3
@@ -160,6 +160,7 @@ files:
160
160
  - bin/console
161
161
  - bin/setup
162
162
  - bin/unleash-client
163
+ - echo_client_spec_version.rb
163
164
  - examples/bootstrap.rb
164
165
  - examples/default-toggles.json
165
166
  - examples/extending_unleash_with_opentelemetry.rb
@@ -200,7 +201,8 @@ files:
200
201
  homepage: https://github.com/unleash/unleash-client-ruby
201
202
  licenses:
202
203
  - Apache-2.0
203
- metadata: {}
204
+ metadata:
205
+ client-specification-version: 5.0.2
204
206
  post_install_message:
205
207
  rdoc_options: []
206
208
  require_paths:
@@ -209,14 +211,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
209
211
  requirements:
210
212
  - - ">="
211
213
  - !ruby/object:Gem::Version
212
- version: '2.5'
214
+ version: '2.6'
213
215
  required_rubygems_version: !ruby/object:Gem::Requirement
214
216
  requirements:
215
217
  - - ">="
216
218
  - !ruby/object:Gem::Version
217
219
  version: '0'
218
220
  requirements: []
219
- rubygems_version: 3.3.3
221
+ rubygems_version: 3.5.6
220
222
  signing_key:
221
223
  specification_version: 4
222
224
  summary: Unleash feature toggle client.