chimera_http_client 1.1.0 → 1.1.1
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 +4 -4
- data/.rubocop.yml +1 -0
- data/README.markdown +2 -0
- data/Rakefile +5 -1
- data/TODO.markdown +7 -9
- data/chimera_http_client.gemspec +18 -9
- data/lib/chimera_http_client.rb +3 -0
- data/lib/chimera_http_client/request.rb +1 -1
- data/lib/chimera_http_client/version.rb +1 -1
- metadata +71 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 245adb27237d0970454580b14f6973ed7bf732a8ce3f4426b35978ff27eed9d8
|
4
|
+
data.tar.gz: 02e8646e5757b60b7d4617d58f3413bdd4b5675d8d307342fabc7ce03c90471b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0caca4f777876526ab8fb4f1652b0643e545bd768e7722424e2007e3e1e79f397cc043dd5ad81d4319ec0703242c72a9481bcac589a48d82374a7e646cef2974
|
7
|
+
data.tar.gz: caf3dc496a546c75a07475148a063caf8b312f9fb63f9a65de02577c3f7b4398e8c05660660d003c6dc7a14bf50b33e5e46cba6d7c2599901b265d3df3f5155c
|
data/.rubocop.yml
CHANGED
data/README.markdown
CHANGED
@@ -387,6 +387,8 @@ When updating the version, do not forget to run
|
|
387
387
|
|
388
388
|
After checking out the repo, run `bundle install` and then `bundle execute rake` to run the **tests and rubocop**.
|
389
389
|
|
390
|
+
> The test suite uses a Sinatra server to make real HTTP requests. It is mounted via Capybara_discoball and running in the same process.
|
391
|
+
|
390
392
|
You can also run `rake console` to open an irb session with the `ChimeraHttpClient` pre-loaded that will allow you to experiment.
|
391
393
|
|
392
394
|
To build and install this gem onto your local machine, run `bundle exec rake install`.
|
data/Rakefile
CHANGED
@@ -3,7 +3,11 @@ require "bundler/gem_tasks"
|
|
3
3
|
require "rspec/core/rake_task"
|
4
4
|
|
5
5
|
Bundler::Audit::Task.new
|
6
|
-
|
6
|
+
|
7
|
+
RSpec::Core::RakeTask.new(:rspec) do |t|
|
8
|
+
# t.exclude_pattern = "**/server/*_spec.rb" # skip real http server specs
|
9
|
+
# t.exclude_pattern = "**/stubbed/*_spec.rb" # skip the stubbed Typhoeus specs
|
10
|
+
end
|
7
11
|
|
8
12
|
desc "Open a console with the ChimeraHttpClient loaded"
|
9
13
|
task :console do
|
data/TODO.markdown
CHANGED
@@ -31,11 +31,16 @@ _none known_
|
|
31
31
|
|
32
32
|
### Add server for testing
|
33
33
|
|
34
|
-
* [
|
35
|
-
* [
|
34
|
+
* [x] ~~add a simple (Sinatra) server for testing~~
|
35
|
+
* [x] ~~run (all?) tests against the server (with capybara_discoball)~~
|
36
36
|
* [ ] make server also available for console testing
|
37
37
|
* [ ] add example to README
|
38
38
|
|
39
|
+
### Miscellaneous
|
40
|
+
|
41
|
+
- [ ] Determine by parameter if 3xx Redirects should be handled as an Error or not
|
42
|
+
- [ ] Add a longer description to the gemspec file
|
43
|
+
|
39
44
|
### Enable more Typhoeus functionality
|
40
45
|
|
41
46
|
* [ ] accept_encoding: "gzip"
|
@@ -52,13 +57,6 @@ _none known_
|
|
52
57
|
* [ ] or enable to access the Typhoeos directly through Chimera?
|
53
58
|
* [ ] add example to README
|
54
59
|
|
55
|
-
### Custom Serializer
|
56
|
-
|
57
|
-
* [ ] allow to pass custom serializer
|
58
|
-
* [ ] use custom serializer instead of expecting a JSON (or other) body
|
59
|
-
* [ ] set header for the serializer
|
60
|
-
* [ ] add example to README
|
61
|
-
|
62
60
|
### File Uploads
|
63
61
|
|
64
62
|
* [ ] add example to README
|
data/chimera_http_client.gemspec
CHANGED
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.email = ["webmaster@mediafinger.com"]
|
10
10
|
|
11
11
|
spec.summary = "Http Client to connect to REST APIs"
|
12
|
-
spec.description = "General http client functionality to easily connect to JSON endpoints"
|
12
|
+
spec.description = "General http client functionality to easily connect to JSON endpoints" # TODO: extend and polish
|
13
13
|
spec.homepage = "https://github.com/mediafinger/chimera_http_client"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
@@ -18,15 +18,24 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
+
# the only sub-dependencies
|
21
22
|
spec.add_runtime_dependency "typhoeus", "~> 1.1"
|
22
23
|
spec.add_runtime_dependency "zeitwerk", ">= 2.0"
|
23
24
|
|
24
|
-
|
25
|
-
spec.add_development_dependency "
|
26
|
-
spec.add_development_dependency "bundler
|
27
|
-
spec.add_development_dependency "
|
28
|
-
spec.add_development_dependency "
|
29
|
-
spec.add_development_dependency "
|
30
|
-
spec.add_development_dependency "
|
31
|
-
spec.add_development_dependency "rubocop
|
25
|
+
# general development and test dependencies
|
26
|
+
spec.add_development_dependency "awesome_print", "~> 1.8"
|
27
|
+
spec.add_development_dependency "bundler", ">= 1.0"
|
28
|
+
spec.add_development_dependency "bundler-audit", "~> 0.6"
|
29
|
+
spec.add_development_dependency "irb", "~> 1.0"
|
30
|
+
spec.add_development_dependency "rake", ">= 10.0"
|
31
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
32
|
+
spec.add_development_dependency "rubocop", "~> 0.50"
|
33
|
+
spec.add_development_dependency "rubocop-rspec", "~> 1.4"
|
34
|
+
|
35
|
+
# only for server specs with real HTTP requests
|
36
|
+
spec.add_development_dependency "capybara", "~> 3.0"
|
37
|
+
spec.add_development_dependency "capybara_discoball", "~> 0.1"
|
38
|
+
spec.add_development_dependency "sinatra", "~> 2.0"
|
39
|
+
spec.add_development_dependency "sinatra-contrib", "~> 2.0"
|
40
|
+
spec.add_development_dependency "webmock", "~> 3.0"
|
32
41
|
end
|
data/lib/chimera_http_client.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chimera_http_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andreas Finger
|
@@ -150,6 +150,76 @@ dependencies:
|
|
150
150
|
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: '1.4'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: capybara
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '3.0'
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - "~>"
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '3.0'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: capybara_discoball
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - "~>"
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0.1'
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0.1'
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: sinatra
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - "~>"
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: '2.0'
|
188
|
+
type: :development
|
189
|
+
prerelease: false
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - "~>"
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: '2.0'
|
195
|
+
- !ruby/object:Gem::Dependency
|
196
|
+
name: sinatra-contrib
|
197
|
+
requirement: !ruby/object:Gem::Requirement
|
198
|
+
requirements:
|
199
|
+
- - "~>"
|
200
|
+
- !ruby/object:Gem::Version
|
201
|
+
version: '2.0'
|
202
|
+
type: :development
|
203
|
+
prerelease: false
|
204
|
+
version_requirements: !ruby/object:Gem::Requirement
|
205
|
+
requirements:
|
206
|
+
- - "~>"
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: '2.0'
|
209
|
+
- !ruby/object:Gem::Dependency
|
210
|
+
name: webmock
|
211
|
+
requirement: !ruby/object:Gem::Requirement
|
212
|
+
requirements:
|
213
|
+
- - "~>"
|
214
|
+
- !ruby/object:Gem::Version
|
215
|
+
version: '3.0'
|
216
|
+
type: :development
|
217
|
+
prerelease: false
|
218
|
+
version_requirements: !ruby/object:Gem::Requirement
|
219
|
+
requirements:
|
220
|
+
- - "~>"
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
version: '3.0'
|
153
223
|
description: General http client functionality to easily connect to JSON endpoints
|
154
224
|
email:
|
155
225
|
- webmaster@mediafinger.com
|