chimera_http_client 1.3.0 → 1.5.1

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: dc63d4372cf53748047f173b87859a5efe7a2db057a1f41be8ba2f265255b28a
4
- data.tar.gz: 1ff54acfcac10f4ffb85428d8c91b47d8d71da878d047a0937b02922f5f6ea05
3
+ metadata.gz: e14b26c79080837393064bdccc64a6bb4f994d4938258480b264eebf06136cf2
4
+ data.tar.gz: 42e0af5e1ac6aa1dd6adeb67b10d51c050ea239d9065c81be674b8b120337f88
5
5
  SHA512:
6
- metadata.gz: cb24d335a115edfc0ba2408b77372157bcf9e54d10a4e817d603f9923a1dc51151d342c74b181560d1f681a006f7be4e67a16d0e4c4ae5c08b3a6f164776f8b1
7
- data.tar.gz: 85fa644f64fcb9ffbef08f18d5e03e1cb3d3633020723b1db5984eb8c51c87534cd0d9c4c8d6ec7005795dd1d035f38e583c3c22cc4718c95c5e9a4164b5fbaf
6
+ metadata.gz: 3751e6555921c15f8ce82f08f3c53456a3faf9b280bf7c4fce3238df42d72a3c8353721b313819b110718310592783e898c11b3b3c0cdc9357656d37c67c747b
7
+ data.tar.gz: 2bce23f9e4c874be7d065dd0d1f60623624ee60d1f87f557b2d0f7cb77bd49fcd1eb5f2361b1b65db7681ccee048efd8afbf2f756070e4a46f90b5367fc8306a
@@ -0,0 +1,21 @@
1
+ name: rubies-ci
2
+ on: [push, pull_request]
3
+ jobs:
4
+ test:
5
+ strategy:
6
+ fail-fast: false
7
+ matrix:
8
+ os: [ubuntu-latest] # macos-latest
9
+ ruby: ['2.5', '2.6', '2.7', '3.0'] # Due to https://github.com/actions/runner/issues/849, we have to use quotes
10
+
11
+ runs-on: ${{ matrix.os }}
12
+
13
+ steps:
14
+ - uses: actions/checkout@v2
15
+ - uses: ruby/setup-ruby@v1
16
+ with:
17
+ ruby-version: ${{ matrix.ruby }}
18
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
19
+
20
+ - name: Run linters and test suite
21
+ run: bundle exec rake ci
data/.rubocop.yml CHANGED
@@ -1,50 +1,48 @@
1
+ require:
2
+ - rubocop-rake
3
+ - rubocop-rspec
4
+
1
5
  AllCops:
2
- DisplayCopNames: true
3
6
  TargetRubyVersion: 2.5
7
+ DisplayCopNames: true
8
+ NewCops: enable # but feel free to disable them below
4
9
  Exclude:
5
10
  - vendor/**/*
6
11
  - config.ru
7
12
 
8
- Layout/AlignHash:
9
- Enabled: false
13
+ Layout/EmptyLineBetweenDefs:
14
+ AllowAdjacentOneLineDefs: true
10
15
 
11
- # Cop supports --auto-correct.
12
16
  # Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth.
13
17
  # SupportedStyles: special_inside_parentheses, consistent, align_braces
14
- Layout/IndentFirstHashElement:
18
+ Layout/FirstHashElementIndentation:
15
19
  EnforcedStyle: consistent
16
20
 
17
- Metrics/AbcSize:
18
- Max: 35
21
+ Layout/HashAlignment:
22
+ Enabled: false
19
23
 
20
- Metrics/BlockLength:
21
- Exclude:
22
- - chimera_http_client.gemspec
23
- - spec/**/*
24
+ Layout/LineLength:
25
+ Max: 125
24
26
 
25
- # Configuration parameters: CountComments.
26
- Metrics/ClassLength:
27
- Max: 150
27
+ Metrics:
28
+ Enabled: false
28
29
 
29
- Metrics/CyclomaticComplexity:
30
- Max: 15
30
+ RSpec/ContextWording:
31
+ Enabled: false
31
32
 
32
- # Configuration parameters: AllowHeredoc, AllowURI, URISchemes.
33
- # URISchemes: http, https
34
- Metrics/LineLength:
35
- Max: 125
33
+ RSpec/ExampleLength:
34
+ Max: 25
36
35
 
37
- # Offense count: 5
38
- # Configuration parameters: CountComments.
39
- Metrics/MethodLength:
40
- Max: 32
36
+ RSpec/MultipleExpectations:
37
+ Enabled: false
41
38
 
42
- Metrics/ParameterLists:
43
- Max: 7
39
+ RSpec/MultipleMemoizedHelpers:
40
+ Enabled: false
44
41
 
45
- # Configuration parameters: EnforcedStyle, SupportedStyles.
46
- # SupportedStyles: braces, no_braces, context_dependent
47
- Style/BracesAroundHashParameters:
42
+ RSpec/NestedGroups:
43
+ Max: 4
44
+
45
+ Style/CaseLikeIf:
48
46
  Enabled: false
49
47
 
50
48
  Style/CommentedKeyword:
@@ -55,7 +53,6 @@ Style/Documentation:
55
53
 
56
54
  Style/DoubleNegation:
57
55
  Enabled: true
58
-
59
56
  Style/FrozenStringLiteralComment:
60
57
  Enabled: false
61
58
 
@@ -71,11 +68,22 @@ Style/StringLiterals:
71
68
  - single_quotes
72
69
  - double_quotes
73
70
 
74
- # Cop supports --auto-correct.
75
71
  Style/NumericLiterals:
76
72
  MinDigits: 15
77
73
 
78
- # Cop supports --auto-correct.
74
+ Style/PercentLiteralDelimiters:
75
+ PreferredDelimiters:
76
+ default: ()
77
+ "%": ()
78
+ "%i": ()
79
+ "%q": ()
80
+ "%Q": ()
81
+ "%r": "{}"
82
+ "%s": ()
83
+ "%w": ()
84
+ "%W": ()
85
+ "%x": ()
86
+
79
87
  # Configuration parameters: AllowAsExpressionSeparator.
80
88
  Style/Semicolon:
81
89
  AllowAsExpressionSeparator: true
@@ -83,7 +91,6 @@ Style/Semicolon:
83
91
  Style/SymbolProc:
84
92
  Enabled: false
85
93
 
86
- # Cop supports --auto-correct.
87
94
  # Configuration parameters: EnforcedStyleForMultiline, SupportedStyles.
88
95
  # SupportedStyles: comma, consistent_comma, no_comma
89
96
  Style/TrailingCommaInArrayLiteral:
@@ -92,7 +99,6 @@ Style/TrailingCommaInArrayLiteral:
92
99
  Style/TrailingCommaInHashLiteral:
93
100
  EnforcedStyleForMultiline: comma
94
101
 
95
- # Cop supports --auto-correct.
96
102
  # Configuration parameters: SupportedStyles, MinSize, WordRegex.
97
103
  # SupportedStyles: percent, brackets
98
104
  Style/WordArray:
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.6.3
1
+ 3.0.1
data/.travis.yml CHANGED
@@ -1,7 +1,8 @@
1
1
  language: ruby
2
2
 
3
3
  rvm:
4
- - ruby-head
4
+ - 3.0
5
+ - 2.7
5
6
  - 2.6
6
7
  - 2.5
7
8
  - jruby
@@ -16,10 +17,10 @@ matrix:
16
17
  before_install:
17
18
  - 'echo ''gem: --no-ri --no-rdoc'' > ~/.gemrc'
18
19
 
19
- bundler_args: --jobs 3 --retry 3
20
+ bundler_args: --jobs 4 --retry 4
20
21
 
21
22
  before_script:
22
23
 
23
24
  # execute rspec tests, rubocop and bundle:audit
24
25
  script:
25
- bundle exec rake
26
+ bundle exec rake ci
data/README.markdown CHANGED
@@ -6,7 +6,8 @@ And what works for the internal communication between your own apps, will also w
6
6
 
7
7
  It offers an **easy to learn interface** and **nice error handling**. And it enables you to **queue HTTP requests to run them in parallel** for better performance and simple aggregating of distributed data.
8
8
 
9
- [![Build Status](https://travis-ci.com/mediafinger/chimera_http_client.svg?branch=master)](https://travis-ci.com/mediafinger/chimera_http_client)
9
+ [![GitHub Actions CI Build Status](https://github.com/mediafinger/chimera_http_client/actions/workflows/action-ci.yml/badge.svg?branch=master)](https://github.com/mediafinger/chimera_http_client/actions/workflows/action-ci.yml)
10
+ [![Travis-CI Build Status](https://travis-ci.com/mediafinger/chimera_http_client.svg?branch=master)](https://travis-ci.com/mediafinger/chimera_http_client)
10
11
  [![Gem Version](https://badge.fury.io/rb/chimera_http_client.svg)](https://badge.fury.io/rb/chimera_http_client)
11
12
 
12
13
  ## Dependencies
@@ -17,11 +18,14 @@ The only other runtime dependency is Ruby's latest code loader [**zeitwerk**](ht
17
18
 
18
19
  ### Ruby version
19
20
 
20
- | Chimera version | Ruby version |
21
- |:----------------|:-------------|
22
- | >= 1.1 | >= 2.5 |
23
- | = 1.0 | >= 2.4 |
24
- | <= 0.5 | >= 2.1 |
21
+ | Chimera version | Ruby version |
22
+ |:----------------|:-----------------------------------|
23
+ | >= 1.4 | >= 2.5 (3.0 compatibility ensured) |
24
+ | >= 1.1 | >= 2.5 |
25
+ | = 1.0 | >= 2.4, <= 3.0 |
26
+ | <= 0.5 | >= 2.1, <= 3.0 |
27
+
28
+ The test suite of v1.4 passes on **MRI Ruby** (2.5, 2.6, 2.7, 3.0) and on **JRuby**, but not on **TruffleRuby**.
25
29
 
26
30
  ### ENV variables
27
31
 
@@ -31,32 +35,36 @@ Setting the environment variable `ENV['CHIMERA_HTTP_CLIENT_LOG_REQUESTS']` to `t
31
35
 
32
36
  <!-- TOC depthFrom:1 depthTo:4 withLinks:1 updateOnSave:0 orderedList:0 -->
33
37
 
34
- - [ChimeraHttpClient](#chimerahttpclient)
35
- - [Table of Contents](#table-of-contents)
36
- - [Dependencies](#dependencies)
37
- - [ENV variables](#env-variables)
38
- - [The Connection class](#the-connection-class)
39
- - [Initialization](#initialization)
40
- - [Mandatory initialization parameter `base_url`](#mandatory-initialization-parameter-baseurl)
41
- - [Optional initialization parameters](#optional-initialization-parameters)
42
- - [Request methods](#request-methods)
43
- - [Mandatory request parameter `endpoint`](#mandatory-request-parameter-endpoint)
44
- - [Optional request parameters](#optional-request-parameters)
45
- - [Basic auth](#basic-auth)
46
- - [Timeout duration](#timeout-duration)
47
- - [Custom logger](#custom-logger)
48
- - [Caching responses](#caching-responses)
49
- - [Example usage](#example-usage)
50
- - [The Request class](#the-request-class)
51
- - [The Response class](#the-response-class)
52
- - [Error classes](#error-classes)
53
- - [The Queue class](#the-queue-class)
54
- - [Queueing requests](#queueing-requests)
55
- - [Executing requests in parallel](#executing-requests-in-parallel)
56
- - [Installation](#installation)
57
- - [Maintainers and Contributors](#maintainers-and-contributors)
58
- - [Roadmap](#roadmap)
59
- - [Chimera](#chimera)
38
+ * [ChimeraHttpClient](#chimerahttpclient)
39
+ * [Dependencies](#dependencies)
40
+ * [Ruby version](#ruby-version)
41
+ * [ENV variables](#env-variables)
42
+ * [Table of Contents](#table-of-contents)
43
+ * [The Connection class](#the-connection-class)
44
+ * [Initialization](#initialization)
45
+ * [Mandatory initialization parameter `base_url`](#mandatory-initialization-parameter-base_url)
46
+ * [Optional initialization parameters](#optional-initialization-parameters)
47
+ * [Custom deserializers](#custom-deserializers)
48
+ * [Monitoring, metrics, instrumentation](#monitoring-metrics-instrumentation)
49
+ * [Request methods](#request-methods)
50
+ * [Mandatory request parameter `endpoint`](#mandatory-request-parameter-endpoint)
51
+ * [Optional request parameters](#optional-request-parameters)
52
+ * [Basic auth](#basic-auth)
53
+ * [Timeout duration](#timeout-duration)
54
+ * [Custom logger](#custom-logger)
55
+ * [Caching responses](#caching-responses)
56
+ * [Example usage](#example-usage)
57
+ * [The Request class](#the-request-class)
58
+ * [The Response class](#the-response-class)
59
+ * [Error classes](#error-classes)
60
+ * [The Queue class](#the-queue-class)
61
+ * [Queueing requests](#queueing-requests)
62
+ * [Executing requests in parallel](#executing-requests-in-parallel)
63
+ * [Empty the queue](#empty-the-queue)
64
+ * [Installation](#installation)
65
+ * [Maintainers and Contributors](#maintainers-and-contributors)
66
+ * [Roadmap](#roadmap)
67
+ * [Chimera](#chimera)
60
68
 
61
69
  <!-- /TOC -->
62
70
 
@@ -145,9 +153,9 @@ connection.get("/users/#{id}")
145
153
 
146
154
  All forms above ave valid and will make a request to the same URL.
147
155
 
148
- * Please take note that _the endpoint can be given as a String, a Symbol, or an Array._
149
- * While they do no harm, there is _no need to pass leading or trailing `/` in endpoints._
150
- * When passing the endpoint as an Array, _it's elements are converted to Strings and concatenated with `/`._
156
+ * Please take note that _the endpoint can be given as a String, a Symbol, or an Array._
157
+ * While they do no harm, there is _no need to pass leading or trailing `/` in endpoints._
158
+ * When passing the endpoint as an Array, _it's elements are converted to Strings and concatenated with `/`._
151
159
 
152
160
  #### Optional request parameters
153
161
 
@@ -177,7 +185,7 @@ connection.post(
177
185
 
178
186
  #### Basic auth
179
187
 
180
- In case you need to use an API that is protected by **basic_auth** just pass the credentials as optional parameters:
188
+ In case you need to use an API that is protected by **basic_auth** just pass the credentials as optional parameters:
181
189
  `username: 'admin', password: 'secret'`
182
190
 
183
191
  #### Timeout duration
@@ -321,6 +329,7 @@ The `ChimeraHttpClient::Response` objects have the following interface:
321
329
  * code (http code, should be 200 or 2xx)
322
330
  * time (for monitoring)
323
331
  * response (the full response object, including the request)
332
+ * success? (returns the result of response.success?)
324
333
  * error? (returns false)
325
334
  * parsed_body (returns the result of `deserializer[:response].call(body)`)
326
335
 
@@ -334,6 +343,7 @@ All errors inherit from `ChimeraHttpClient::Error` and therefore offer the same
334
343
  * body (alias => message)
335
344
  * time (for monitoring)
336
345
  * response (the full response object, including the request)
346
+ * success? (returns the result of response.success?)
337
347
  * error? (returns true)
338
348
  * error_class (e.g. ChimeraHttpClient::NotFoundError)
339
349
  * to_s (information for logging / respects ENV['CHIMERA_HTTP_CLIENT_LOG_REQUESTS'])
@@ -345,6 +355,7 @@ The error classes and their corresponding http error codes:
345
355
  RedirectionError # 301, 302, 303, 307
346
356
  BadRequestError # 400
347
357
  UnauthorizedError # 401
358
+ PaymentRequiredError # 402
348
359
  ForbiddenError # 403
349
360
  NotFoundError # 404
350
361
  MethodNotAllowedError # 405
data/Rakefile CHANGED
@@ -1,17 +1,23 @@
1
1
  require "bundler/audit/task"
2
2
  require "bundler/gem_tasks"
3
3
  require "rspec/core/rake_task"
4
+ require "rubocop/rake_task"
4
5
 
6
+ # setup task bundle:audit
5
7
  Bundler::Audit::Task.new
6
8
 
9
+ # setup taks rspec
7
10
  RSpec::Core::RakeTask.new(:rspec) do |t|
8
11
  # t.exclude_pattern = "**/server/*_spec.rb" # skip real http server specs
9
12
  # t.exclude_pattern = "**/stubbed/*_spec.rb" # skip the stubbed Typhoeus specs
10
13
  end
11
14
 
15
+ # setup taks rubocop and rubocop:auto_correct
16
+ RuboCop::RakeTask.new
17
+
12
18
  desc "Open a console with the ChimeraHttpClient loaded"
13
19
  task :console do
14
- puts "Console with the gem and awesome_print loaded:"
20
+ puts "Console with the gem and amazing_print loaded:"
15
21
  ARGV.clear
16
22
  require "irb"
17
23
  require "ap"
@@ -19,15 +25,7 @@ task :console do
19
25
  IRB.start
20
26
  end
21
27
 
22
- desc "Run Rubocop"
23
- task :rubocop do
24
- system "bundle exec rubocop -c .rubocop.yml"
25
- end
26
-
27
- desc "Run Rubocop and auto-correct issues"
28
- task :rubocopa do
29
- system "bundle exec rubocop -c .rubocop.yml -a"
30
- end
28
+ desc "Run rubocop and the specs and check for known CVEs"
29
+ task ci: %i(rubocop rspec bundle:audit)
31
30
 
32
- desc "Run all the tests"
33
- task default: %i[rspec rubocop bundle:audit]
31
+ task default: :ci
@@ -32,14 +32,15 @@ Gem::Specification.new do |spec|
32
32
  spec.add_runtime_dependency "zeitwerk", ">= 2.0"
33
33
 
34
34
  # general development and test dependencies
35
- spec.add_development_dependency "awesome_print", "~> 1.8"
35
+ spec.add_development_dependency "amazing_print", ">= 1.2"
36
36
  spec.add_development_dependency "bundler", ">= 1.0"
37
- spec.add_development_dependency "bundler-audit", "~> 0.6"
38
- spec.add_development_dependency "irb", "~> 1.0"
37
+ spec.add_development_dependency "bundler-audit", ">= 0.6"
38
+ spec.add_development_dependency "irb", ">= 1.0"
39
39
  spec.add_development_dependency "rake", ">= 10.0"
40
40
  spec.add_development_dependency "rspec", "~> 3.0"
41
- spec.add_development_dependency "rubocop", "~> 0.50"
42
- spec.add_development_dependency "rubocop-rspec", "~> 1.4"
41
+ spec.add_development_dependency "rubocop", "~> 1.12"
42
+ spec.add_development_dependency "rubocop-rake", "~> 0.5"
43
+ spec.add_development_dependency "rubocop-rspec", "~> 2.2"
43
44
 
44
45
  # only for server specs with real HTTP requests
45
46
  spec.add_development_dependency "capybara", "~> 3.0"
@@ -47,4 +48,5 @@ Gem::Specification.new do |spec|
47
48
  spec.add_development_dependency "sinatra", "~> 2.0"
48
49
  spec.add_development_dependency "sinatra-contrib", "~> 2.0"
49
50
  spec.add_development_dependency "webmock", "~> 3.0"
51
+ spec.add_development_dependency "webrick"
50
52
  end
@@ -56,7 +56,7 @@ module ChimeraHttpClient
56
56
 
57
57
  # Remove leading and trailing "/" from a give part of a String (usually URL or endpoint)
58
58
  def trim(element)
59
- element.to_s.sub(%r{^\/}, "").chomp("/")
59
+ element.to_s.sub(%r{^/}, "").chomp("/")
60
60
  end
61
61
  end
62
62
  end
@@ -17,13 +17,13 @@ module ChimeraHttpClient
17
17
  monitor: @monitor,
18
18
  }
19
19
 
20
- @request ||= Request.new(options)
20
+ Request.new(options)
21
21
  end
22
22
 
23
23
  private
24
24
 
25
25
  def run(method, endpoint, options = {})
26
- options[:body_optional] = true if %i[get delete head options trace].include?(method)
26
+ options[:body_optional] = true if %i(get delete head options trace).include?(method)
27
27
  body = extract_body(options)
28
28
  headers = extract_headers(options, default_headers)
29
29
 
@@ -37,7 +37,7 @@ module ChimeraHttpClient
37
37
  # end
38
38
  #
39
39
  def define_http_methods
40
- %i[get post put patch delete head options trace].each do |method_name|
40
+ %i(get post put patch delete head options trace).each do |method_name|
41
41
  self.class.send(:define_method, method_name) do |endpoint, options = {}|
42
42
  send(:run, method_name, endpoint, options)
43
43
  end
@@ -10,6 +10,12 @@ module ChimeraHttpClient
10
10
  @response = response # contains the request
11
11
 
12
12
  @deserializer = options[:deserializer][:error]
13
+
14
+ super(response.body)
15
+ end
16
+
17
+ def success?
18
+ response.success?
13
19
  end
14
20
 
15
21
  def error?
@@ -64,6 +70,7 @@ module ChimeraHttpClient
64
70
  class RedirectionError < Error; end # 301, 302, 303, 307
65
71
  class BadRequestError < Error; end # 400
66
72
  class UnauthorizedError < Error; end # 401
73
+ class PaymentRequiredError < Error; end # 402
67
74
  class ForbiddenError < Error; end # 403
68
75
  class NotFoundError < Error; end # 404
69
76
  class MethodNotAllowedError < Error; end # 405
@@ -2,7 +2,7 @@ module ChimeraHttpClient
2
2
  class Queue < Base
3
3
  def add(method, endpoint, options = {})
4
4
  http_method = method.downcase.to_sym
5
- options[:body_optional] = true if %i[get delete head options trace].include?(http_method)
5
+ options[:body_optional] = true if %i(get delete head options trace).include?(http_method)
6
6
 
7
7
  queued_requests << create_request(
8
8
  method: http_method,
@@ -16,7 +16,6 @@ module ChimeraHttpClient
16
16
  @result
17
17
  end
18
18
 
19
- # rubocop:disable Metrics/MethodLength
20
19
  def create(url:, method:, body: nil, options: {}, headers: {})
21
20
  request_params = {
22
21
  method: method,
@@ -73,7 +72,6 @@ module ChimeraHttpClient
73
72
 
74
73
  self
75
74
  end
76
- # rubocop:enable Metrics/MethodLength
77
75
 
78
76
  private
79
77
 
@@ -90,11 +88,13 @@ module ChimeraHttpClient
90
88
  when 301, 302, 303, 307
91
89
  RedirectionError.new(response, @options) # TODO: throw error conditionally
92
90
  when 200..399
93
- nil
91
+ nil # TODO: decide to either raise error or return a Response
94
92
  when 400
95
93
  BadRequestError.new(response, @options)
96
94
  when 401
97
95
  UnauthorizedError.new(response, @options)
96
+ when 402
97
+ PaymentRequiredError.new(response, @options)
98
98
  when 403
99
99
  ForbiddenError.new(response, @options)
100
100
  when 404
@@ -15,6 +15,10 @@ module ChimeraHttpClient
15
15
  deserializer.call(body)
16
16
  end
17
17
 
18
+ def success?
19
+ response.success?
20
+ end
21
+
18
22
  def error?
19
23
  false
20
24
  end
@@ -1,3 +1,3 @@
1
1
  module ChimeraHttpClient
2
- VERSION = "1.3.0".freeze
2
+ VERSION = "1.5.1".freeze
3
3
  end
@@ -7,5 +7,5 @@ module ChimeraHttpClient
7
7
  loader.setup
8
8
 
9
9
  # as Zeitwerk can't handle innner classes properly :-/
10
- require_relative "./chimera_http_client/error.rb"
10
+ require_relative "./chimera_http_client/error"
11
11
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chimera_http_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andreas Finger
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-10-31 00:00:00.000000000 Z
11
+ date: 2021-10-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus
@@ -39,19 +39,19 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '2.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: awesome_print
42
+ name: amazing_print
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '1.8'
47
+ version: '1.2'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '1.8'
54
+ version: '1.2'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: bundler
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -70,28 +70,28 @@ dependencies:
70
70
  name: bundler-audit
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0.6'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0.6'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: irb
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: '1.0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - "~>"
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '1.0'
97
97
  - !ruby/object:Gem::Dependency
@@ -128,28 +128,42 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '0.50'
131
+ version: '1.12'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '1.12'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rubocop-rake
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '0.5'
132
146
  type: :development
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
150
  - - "~>"
137
151
  - !ruby/object:Gem::Version
138
- version: '0.50'
152
+ version: '0.5'
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: rubocop-rspec
141
155
  requirement: !ruby/object:Gem::Requirement
142
156
  requirements:
143
157
  - - "~>"
144
158
  - !ruby/object:Gem::Version
145
- version: '1.4'
159
+ version: '2.2'
146
160
  type: :development
147
161
  prerelease: false
148
162
  version_requirements: !ruby/object:Gem::Requirement
149
163
  requirements:
150
164
  - - "~>"
151
165
  - !ruby/object:Gem::Version
152
- version: '1.4'
166
+ version: '2.2'
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: capybara
155
169
  requirement: !ruby/object:Gem::Requirement
@@ -220,6 +234,20 @@ dependencies:
220
234
  - - "~>"
221
235
  - !ruby/object:Gem::Version
222
236
  version: '3.0'
237
+ - !ruby/object:Gem::Dependency
238
+ name: webrick
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - ">="
242
+ - !ruby/object:Gem::Version
243
+ version: '0'
244
+ type: :development
245
+ prerelease: false
246
+ version_requirements: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - ">="
249
+ - !ruby/object:Gem::Version
250
+ version: '0'
223
251
  description: |
224
252
  The Chimera http client offers an easy to learn interface and consistent error handling.
225
253
  It is lightweight, fast and enables you to queue HTTP requests to run them in parallel
@@ -232,6 +260,7 @@ executables: []
232
260
  extensions: []
233
261
  extra_rdoc_files: []
234
262
  files:
263
+ - ".github/workflows/action-ci.yml"
235
264
  - ".gitignore"
236
265
  - ".rspec"
237
266
  - ".rubocop.yml"
@@ -256,7 +285,7 @@ homepage: https://github.com/mediafinger/chimera_http_client
256
285
  licenses:
257
286
  - MIT
258
287
  metadata: {}
259
- post_install_message:
288
+ post_install_message:
260
289
  rdoc_options: []
261
290
  require_paths:
262
291
  - lib
@@ -271,8 +300,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
271
300
  - !ruby/object:Gem::Version
272
301
  version: '0'
273
302
  requirements: []
274
- rubygems_version: 3.0.4
275
- signing_key:
303
+ rubygems_version: 3.2.15
304
+ signing_key:
276
305
  specification_version: 4
277
306
  summary: General http client functionality to quickly connect to JSON REST API endpoints
278
307
  and any others