chimera_http_client 1.6.0 → 1.7.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: d06e90c8db720a8514ea698a264d4aaeb31f1457437d2c9ffd61b4ab1b6d9578
4
- data.tar.gz: 6a285c505ab7c0de92599cc45a661654b3ec69412ea234c9cf0cbabc81fbdb24
3
+ metadata.gz: 7ad28c45175797378cfcab81479167a9d76538f1f438a82c5f79cedd48bb90dc
4
+ data.tar.gz: f6aa79792c873c5ba537ff8d3a0885871a3040471b4aae93a6c7f29156aece1a
5
5
  SHA512:
6
- metadata.gz: 9d0cc0b198066b749752df6dc1102055b3f042b511f9a109934159808fcc2f17c41881815c0772a5e95ce40f4062d69bb7c1fcbfb7ca0e62e8bb826dfbcf8e8f
7
- data.tar.gz: 6ae6be95e3fc0dea402983c97700fd0bdff1b4bb435e6fd0eec275cb1568353406c53a14659bb3e9128542603f02f584f11ab0574fb750a7f577af6da01f4e71
6
+ metadata.gz: 8cec762f1ff0088d978d9c6b1eae68157ea8fd6058e14192ff2b2fe3d07d54e0d9573f89f6a64f4860380a2fb61232f550f3e782869274a6d36ba47ce0579eac
7
+ data.tar.gz: 843ff440917c8af2bdf1b7c662d39b4ef481f736ee7be6776d2bc958de1c36f1d591ab81c7cd206eaf269e0d28354b84962dbf5264b5323bac357d0fb691ecc2
@@ -1,12 +1,16 @@
1
1
  name: rubies-ci
2
- on: [push, pull_request]
2
+ on:
3
+ pull_request:
4
+ push:
5
+ branches: [ main ]
3
6
  jobs:
4
7
  test:
5
8
  strategy:
6
9
  fail-fast: false
7
10
  matrix:
8
11
  os: [ubuntu-latest] # macos-latest
9
- ruby: ['truffleruby', 'jruby', '2.7', '3.0', '3.1', '3.2', '3.3'] # Due to https://github.com/actions/runner/issues/849, we have to use quotes
12
+ ruby: ['3.3', '3.4', 'truffleruby', 'jruby']
13
+ # add 'truffleruby', 'jruby', for releases - and remember to use quotes due to https://github.com/actions/runner/issues/849
10
14
 
11
15
  runs-on: ${{ matrix.os }}
12
16
 
data/.rubocop.yml CHANGED
@@ -40,16 +40,11 @@ RSpec/ContextWording:
40
40
  RSpec/ExampleLength:
41
41
  Max: 25
42
42
 
43
- RSpec/FilePath:
44
- Exclude:
45
- - spec/chimera_http_client/server/*
46
- - spec/chimera_http_client/stubbed/*
47
-
48
43
  RSpec/SpecFilePathFormat:
49
44
  Exclude:
50
45
  - spec/chimera_http_client/server/*
51
46
  - spec/chimera_http_client/stubbed/*
52
- -
47
+
53
48
  RSpec/MultipleExpectations:
54
49
  Enabled: false
55
50
 
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.2.2
1
+ 3.4.4
data/README.markdown CHANGED
@@ -7,7 +7,6 @@ And what works for the internal communication between your own apps, will also w
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
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)
11
10
  [![Gem Version](https://badge.fury.io/rb/chimera_http_client.svg)](https://badge.fury.io/rb/chimera_http_client)
12
11
 
13
12
  ## Dependencies
@@ -15,19 +14,21 @@ It offers an **easy to learn interface** and **nice error handling**. And it ena
15
14
  The `chimera_http_client` gem is wrapping the **libcurl** wrapper [**Typhoeus**](https://typhoeus.github.io/) to have a more convenient interface. This allows for fast requests, for caching responses, and for queueing requests to run them in parallel. Connections are persistent by default, which saves subsequent requests from establishing a connection.
16
15
 
17
16
  The only other runtime dependency is Ruby's latest code loader [**zeitwerk**](https://github.com/fxn/zeitwerk) which is also part of Rails 6.
18
-
17
+ ^
19
18
  ### Ruby version
20
19
 
21
- | Chimera version | Ruby version |
22
- |:----------------|:------------------------------------|
23
- | >= 1.6 | >= 2.7 (all 3.x versions supported) |
24
- | >= 1.4 | >= 2.5 (3.0 compatibility ensured) |
25
- | >= 1.1 | >= 2.5 |
26
- | = 1.0 | >= 2.4, <= 3.0 |
27
- | <= 0.5 | >= 2.1, <= 3.0 |
20
+ | Chimera version | MRI Ruby version | JRuby | TruffleRuby |
21
+ |:----------------|:----------------------------------------------------|:-----:|:-----------:|
22
+ | >= 1.7 | >= 3.3 (older versions untested, likely still work) | yes | yes |
23
+ | >= 1.6 | >= 2.7 (all 3.x versions supported) | yes | yes |
24
+ | >= 1.4 | >= 2.5 (3.0 compatibility ensured) | yes | no |
25
+ | >= 1.1 | >= 2.5 | ? | ? |
26
+ | = 1.0 | >= 2.4, <= 3.0 | ? | ? |
27
+ | <= 0.5 | >= 2.1, <= 3.0 | ? | ? |
28
28
 
29
- 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**.
30
- The test suite of v1.6 passes on **MRI Ruby** (2.7, 3.0, 3.1, 3.2, 3.3) and on **JRuby** and **TruffleRuby**.
29
+ 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**.
30
+ The test suite of v1.6 passes on **MRI Ruby** (2.7, 3.0, 3.1, 3.2, 3.3) and on **JRuby** and **TruffleRuby**.
31
+ The non-MRI Rubys are not part of the regular Matrix, as their CI jobs take 3x as long, but included for new releases.
31
32
 
32
33
  ### ENV variables
33
34
 
@@ -442,7 +443,7 @@ To build and install this gem onto your local machine, run `bundle exec rake ins
442
443
 
443
444
  > Maintainers only:
444
445
  >
445
- > To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
446
+ > To release a new version, update the version number in `version.rb`, commit this change, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
446
447
 
447
448
  Bug reports and pull requests are welcome on GitHub at <https://github.com/mediafinger/chimera_http_client>
448
449
 
@@ -30,25 +30,26 @@ Gem::Specification.new do |spec|
30
30
  spec.metadata["rubygems_mfa_required"] = "true"
31
31
 
32
32
  # the only sub-dependencies
33
- spec.add_runtime_dependency "typhoeus", "~> 1.1"
34
- spec.add_runtime_dependency "zeitwerk", ">= 2.0"
33
+ spec.add_dependency "typhoeus", "~> 1.4"
34
+ spec.add_dependency "zeitwerk", ">= 2.6"
35
35
 
36
36
  # general development and test dependencies
37
- spec.add_development_dependency "amazing_print", ">= 1.2"
38
- spec.add_development_dependency "bundler", ">= 1.0"
39
- spec.add_development_dependency "bundler-audit", ">= 0.6"
40
- spec.add_development_dependency "irb", ">= 1.0"
41
- spec.add_development_dependency "rake", ">= 10.0"
42
- spec.add_development_dependency "rspec", "~> 3.0"
43
- spec.add_development_dependency "rubocop", "~> 1.12"
44
- spec.add_development_dependency "rubocop-rake", "~> 0.5"
45
- spec.add_development_dependency "rubocop-rspec", "~> 2.2"
37
+ spec.add_development_dependency "amazing_print", ">= 1.8"
38
+ spec.add_development_dependency "bundler", ">= 2.2"
39
+ spec.add_development_dependency "bundler-audit", ">= 0.9"
40
+ spec.add_development_dependency "irb", ">= 1.15"
41
+ spec.add_development_dependency "rake", ">= 13.2"
42
+ spec.add_development_dependency "rspec", "~> 3.13"
43
+ spec.add_development_dependency "rubocop", "~> 1.75.7"
44
+ spec.add_development_dependency "rubocop-rake", "~> 0.7.1"
45
+ spec.add_development_dependency "rubocop-rspec", "~> 3.6.0"
46
46
 
47
47
  # only for server specs with real HTTP requests
48
- spec.add_development_dependency "capybara", "~> 3.0"
48
+ spec.add_development_dependency "capybara", "~> 3.40"
49
49
  spec.add_development_dependency "capybara_discoball", "~> 0.1"
50
- spec.add_development_dependency "sinatra", "~> 2.0"
51
- spec.add_development_dependency "sinatra-contrib", "~> 2.0"
52
- spec.add_development_dependency "webmock", "~> 3.0"
53
- spec.add_development_dependency "webrick"
50
+ spec.add_development_dependency "rackup", "~> 2.2"
51
+ spec.add_development_dependency "sinatra", "~> 4.1"
52
+ spec.add_development_dependency "sinatra-contrib", "~> 4.1"
53
+ spec.add_development_dependency "webmock", "~> 3.25"
54
+ spec.add_development_dependency "webrick", "~> 1.9"
54
55
  end
@@ -4,7 +4,7 @@
4
4
  module ChimeraHttpClient
5
5
  class Connection < Base
6
6
  def initialize(options = {})
7
- super(options)
7
+ super
8
8
 
9
9
  define_http_methods
10
10
  define_bang_methods
@@ -59,7 +59,7 @@ module ChimeraHttpClient
59
59
  end
60
60
 
61
61
  def log_requests?
62
- ENV["CHIMERA_HTTP_CLIENT_LOG_REQUESTS"] == true || ENV["CHIMERA_HTTP_CLIENT_LOG_REQUESTS"] == "true"
62
+ ENV["CHIMERA_HTTP_CLIENT_LOG_REQUESTS"].to_s == "true"
63
63
  end
64
64
  end
65
65
 
@@ -1,3 +1,3 @@
1
1
  module ChimeraHttpClient
2
- VERSION = "1.6.0".freeze
2
+ VERSION = "1.7.0".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chimera_http_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andreas Finger
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2024-04-19 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: typhoeus
@@ -16,168 +15,168 @@ dependencies:
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: '1.1'
18
+ version: '1.4'
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
- version: '1.1'
25
+ version: '1.4'
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: zeitwerk
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
30
  - - ">="
32
31
  - !ruby/object:Gem::Version
33
- version: '2.0'
32
+ version: '2.6'
34
33
  type: :runtime
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
37
  - - ">="
39
38
  - !ruby/object:Gem::Version
40
- version: '2.0'
39
+ version: '2.6'
41
40
  - !ruby/object:Gem::Dependency
42
41
  name: amazing_print
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
44
  - - ">="
46
45
  - !ruby/object:Gem::Version
47
- version: '1.2'
46
+ version: '1.8'
48
47
  type: :development
49
48
  prerelease: false
50
49
  version_requirements: !ruby/object:Gem::Requirement
51
50
  requirements:
52
51
  - - ">="
53
52
  - !ruby/object:Gem::Version
54
- version: '1.2'
53
+ version: '1.8'
55
54
  - !ruby/object:Gem::Dependency
56
55
  name: bundler
57
56
  requirement: !ruby/object:Gem::Requirement
58
57
  requirements:
59
58
  - - ">="
60
59
  - !ruby/object:Gem::Version
61
- version: '1.0'
60
+ version: '2.2'
62
61
  type: :development
63
62
  prerelease: false
64
63
  version_requirements: !ruby/object:Gem::Requirement
65
64
  requirements:
66
65
  - - ">="
67
66
  - !ruby/object:Gem::Version
68
- version: '1.0'
67
+ version: '2.2'
69
68
  - !ruby/object:Gem::Dependency
70
69
  name: bundler-audit
71
70
  requirement: !ruby/object:Gem::Requirement
72
71
  requirements:
73
72
  - - ">="
74
73
  - !ruby/object:Gem::Version
75
- version: '0.6'
74
+ version: '0.9'
76
75
  type: :development
77
76
  prerelease: false
78
77
  version_requirements: !ruby/object:Gem::Requirement
79
78
  requirements:
80
79
  - - ">="
81
80
  - !ruby/object:Gem::Version
82
- version: '0.6'
81
+ version: '0.9'
83
82
  - !ruby/object:Gem::Dependency
84
83
  name: irb
85
84
  requirement: !ruby/object:Gem::Requirement
86
85
  requirements:
87
86
  - - ">="
88
87
  - !ruby/object:Gem::Version
89
- version: '1.0'
88
+ version: '1.15'
90
89
  type: :development
91
90
  prerelease: false
92
91
  version_requirements: !ruby/object:Gem::Requirement
93
92
  requirements:
94
93
  - - ">="
95
94
  - !ruby/object:Gem::Version
96
- version: '1.0'
95
+ version: '1.15'
97
96
  - !ruby/object:Gem::Dependency
98
97
  name: rake
99
98
  requirement: !ruby/object:Gem::Requirement
100
99
  requirements:
101
100
  - - ">="
102
101
  - !ruby/object:Gem::Version
103
- version: '10.0'
102
+ version: '13.2'
104
103
  type: :development
105
104
  prerelease: false
106
105
  version_requirements: !ruby/object:Gem::Requirement
107
106
  requirements:
108
107
  - - ">="
109
108
  - !ruby/object:Gem::Version
110
- version: '10.0'
109
+ version: '13.2'
111
110
  - !ruby/object:Gem::Dependency
112
111
  name: rspec
113
112
  requirement: !ruby/object:Gem::Requirement
114
113
  requirements:
115
114
  - - "~>"
116
115
  - !ruby/object:Gem::Version
117
- version: '3.0'
116
+ version: '3.13'
118
117
  type: :development
119
118
  prerelease: false
120
119
  version_requirements: !ruby/object:Gem::Requirement
121
120
  requirements:
122
121
  - - "~>"
123
122
  - !ruby/object:Gem::Version
124
- version: '3.0'
123
+ version: '3.13'
125
124
  - !ruby/object:Gem::Dependency
126
125
  name: rubocop
127
126
  requirement: !ruby/object:Gem::Requirement
128
127
  requirements:
129
128
  - - "~>"
130
129
  - !ruby/object:Gem::Version
131
- version: '1.12'
130
+ version: 1.75.7
132
131
  type: :development
133
132
  prerelease: false
134
133
  version_requirements: !ruby/object:Gem::Requirement
135
134
  requirements:
136
135
  - - "~>"
137
136
  - !ruby/object:Gem::Version
138
- version: '1.12'
137
+ version: 1.75.7
139
138
  - !ruby/object:Gem::Dependency
140
139
  name: rubocop-rake
141
140
  requirement: !ruby/object:Gem::Requirement
142
141
  requirements:
143
142
  - - "~>"
144
143
  - !ruby/object:Gem::Version
145
- version: '0.5'
144
+ version: 0.7.1
146
145
  type: :development
147
146
  prerelease: false
148
147
  version_requirements: !ruby/object:Gem::Requirement
149
148
  requirements:
150
149
  - - "~>"
151
150
  - !ruby/object:Gem::Version
152
- version: '0.5'
151
+ version: 0.7.1
153
152
  - !ruby/object:Gem::Dependency
154
153
  name: rubocop-rspec
155
154
  requirement: !ruby/object:Gem::Requirement
156
155
  requirements:
157
156
  - - "~>"
158
157
  - !ruby/object:Gem::Version
159
- version: '2.2'
158
+ version: 3.6.0
160
159
  type: :development
161
160
  prerelease: false
162
161
  version_requirements: !ruby/object:Gem::Requirement
163
162
  requirements:
164
163
  - - "~>"
165
164
  - !ruby/object:Gem::Version
166
- version: '2.2'
165
+ version: 3.6.0
167
166
  - !ruby/object:Gem::Dependency
168
167
  name: capybara
169
168
  requirement: !ruby/object:Gem::Requirement
170
169
  requirements:
171
170
  - - "~>"
172
171
  - !ruby/object:Gem::Version
173
- version: '3.0'
172
+ version: '3.40'
174
173
  type: :development
175
174
  prerelease: false
176
175
  version_requirements: !ruby/object:Gem::Requirement
177
176
  requirements:
178
177
  - - "~>"
179
178
  - !ruby/object:Gem::Version
180
- version: '3.0'
179
+ version: '3.40'
181
180
  - !ruby/object:Gem::Dependency
182
181
  name: capybara_discoball
183
182
  requirement: !ruby/object:Gem::Requirement
@@ -192,62 +191,76 @@ dependencies:
192
191
  - - "~>"
193
192
  - !ruby/object:Gem::Version
194
193
  version: '0.1'
194
+ - !ruby/object:Gem::Dependency
195
+ name: rackup
196
+ requirement: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - "~>"
199
+ - !ruby/object:Gem::Version
200
+ version: '2.2'
201
+ type: :development
202
+ prerelease: false
203
+ version_requirements: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - "~>"
206
+ - !ruby/object:Gem::Version
207
+ version: '2.2'
195
208
  - !ruby/object:Gem::Dependency
196
209
  name: sinatra
197
210
  requirement: !ruby/object:Gem::Requirement
198
211
  requirements:
199
212
  - - "~>"
200
213
  - !ruby/object:Gem::Version
201
- version: '2.0'
214
+ version: '4.1'
202
215
  type: :development
203
216
  prerelease: false
204
217
  version_requirements: !ruby/object:Gem::Requirement
205
218
  requirements:
206
219
  - - "~>"
207
220
  - !ruby/object:Gem::Version
208
- version: '2.0'
221
+ version: '4.1'
209
222
  - !ruby/object:Gem::Dependency
210
223
  name: sinatra-contrib
211
224
  requirement: !ruby/object:Gem::Requirement
212
225
  requirements:
213
226
  - - "~>"
214
227
  - !ruby/object:Gem::Version
215
- version: '2.0'
228
+ version: '4.1'
216
229
  type: :development
217
230
  prerelease: false
218
231
  version_requirements: !ruby/object:Gem::Requirement
219
232
  requirements:
220
233
  - - "~>"
221
234
  - !ruby/object:Gem::Version
222
- version: '2.0'
235
+ version: '4.1'
223
236
  - !ruby/object:Gem::Dependency
224
237
  name: webmock
225
238
  requirement: !ruby/object:Gem::Requirement
226
239
  requirements:
227
240
  - - "~>"
228
241
  - !ruby/object:Gem::Version
229
- version: '3.0'
242
+ version: '3.25'
230
243
  type: :development
231
244
  prerelease: false
232
245
  version_requirements: !ruby/object:Gem::Requirement
233
246
  requirements:
234
247
  - - "~>"
235
248
  - !ruby/object:Gem::Version
236
- version: '3.0'
249
+ version: '3.25'
237
250
  - !ruby/object:Gem::Dependency
238
251
  name: webrick
239
252
  requirement: !ruby/object:Gem::Requirement
240
253
  requirements:
241
- - - ">="
254
+ - - "~>"
242
255
  - !ruby/object:Gem::Version
243
- version: '0'
256
+ version: '1.9'
244
257
  type: :development
245
258
  prerelease: false
246
259
  version_requirements: !ruby/object:Gem::Requirement
247
260
  requirements:
248
- - - ">="
261
+ - - "~>"
249
262
  - !ruby/object:Gem::Version
250
- version: '0'
263
+ version: '1.9'
251
264
  description: |
252
265
  The Chimera http client offers an easy to learn interface and consistent error handling.
253
266
  It is lightweight, fast and enables you to queue HTTP requests to run them in parallel
@@ -265,7 +278,6 @@ files:
265
278
  - ".rspec"
266
279
  - ".rubocop.yml"
267
280
  - ".ruby-version"
268
- - ".travis.yml"
269
281
  - Gemfile
270
282
  - LICENSE
271
283
  - README.markdown
@@ -286,7 +298,6 @@ licenses:
286
298
  - MIT
287
299
  metadata:
288
300
  rubygems_mfa_required: 'true'
289
- post_install_message:
290
301
  rdoc_options: []
291
302
  require_paths:
292
303
  - lib
@@ -301,8 +312,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
301
312
  - !ruby/object:Gem::Version
302
313
  version: '0'
303
314
  requirements: []
304
- rubygems_version: 3.4.19
305
- signing_key:
315
+ rubygems_version: 3.6.7
306
316
  specification_version: 4
307
317
  summary: General http client functionality to quickly connect to JSON REST API endpoints
308
318
  and any others
data/.travis.yml DELETED
@@ -1,26 +0,0 @@
1
- language: ruby
2
-
3
- rvm:
4
- - 3.0
5
- - 2.7
6
- - 2.6
7
- - 2.5
8
- - jruby
9
- - truffleruby
10
-
11
- matrix:
12
- allow_failures:
13
- - rvm: jruby
14
- - rvm: truffleruby
15
- fast_finish: true
16
-
17
- before_install:
18
- - 'echo ''gem: --no-ri --no-rdoc'' > ~/.gemrc'
19
-
20
- bundler_args: --jobs 4 --retry 4
21
-
22
- before_script:
23
-
24
- # execute rspec tests, rubocop and bundle:audit
25
- script:
26
- bundle exec rake ci