chimera_http_client 1.1.0 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- 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
|