http_mini 0.2.1 → 0.2.2
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/CHANGELOG.md +31 -0
- data/README.md +3 -0
- data/lib/http_mini.rb +13 -4
- metadata +47 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0619d2e911794c66aace9401b1b720b7023ea4f0
|
4
|
+
data.tar.gz: 57cd6f3882b48473a42477d9f62f009a466e1183
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d1d1229de8c2fc8b743c193aea9f3fd7b7e3e793829d18021c711d772d56c12b6b273852a7ef4a0dc8237c631a94ef5397275c0458215da4ff1619ef5c8217a
|
7
|
+
data.tar.gz: 3c5960d0b9f089b701a62ccf52ad252b674790fd5f78f27b4d673208884d85da4a52947679ad1e8426b6720657d2560a437a329e27ee72e160b0495c4e9eddbd
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
## vNEXT
|
2
|
+
|
3
|
+
## v0.2.1
|
4
|
+
* Add license to `gemspec`
|
5
|
+
|
6
|
+
## v0.2.0
|
7
|
+
* Breaking change: ignore errors on `poke` only
|
8
|
+
* Allow chaining of `uri` and `path` methods to allow changing the target and chaining an HTTP request
|
9
|
+
* Add support for query string parameters
|
10
|
+
|
11
|
+
## v0.1.1
|
12
|
+
* Improve handling of url without scheme
|
13
|
+
* Add support for `https` requests
|
14
|
+
* Add `poke` (alias `ping`) method that returns true or false if 200 <= status < 400 of HEAD request
|
15
|
+
|
16
|
+
## v0.1.0
|
17
|
+
* Initial commit and push to Github
|
18
|
+
* Code refactoring
|
19
|
+
|
20
|
+
## v0.0.1
|
21
|
+
|
22
|
+
* Initial gem publishing
|
23
|
+
* Basic support for following HTTP verbs
|
24
|
+
* HEAD
|
25
|
+
* GET
|
26
|
+
* POST
|
27
|
+
* UPDATE
|
28
|
+
* DELETE
|
29
|
+
* OPTIONS
|
30
|
+
|
31
|
+
|
data/README.md
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
# Http mini
|
2
2
|
|
3
3
|
[](http://badge.fury.io/rb/http_mini)
|
4
|
+
[](https://travis-ci.org/jtblin/http_mini)
|
5
|
+
[](https://coveralls.io/r/jtblin/http_mini?branch=master)
|
6
|
+
[](https://codeclimate.com/github/jtblin/http_mini)
|
4
7
|
|
5
8
|
A truly minimalist Http client for Ruby. When all you want is
|
6
9
|
a one liner to ping or get the response from a web server.
|
data/lib/http_mini.rb
CHANGED
@@ -10,7 +10,7 @@ class HttpMini
|
|
10
10
|
IGNORE_ERROR = true
|
11
11
|
|
12
12
|
def self.VERSION
|
13
|
-
'0.2.
|
13
|
+
'0.2.2'
|
14
14
|
end
|
15
15
|
|
16
16
|
def initialize(url, opts = {})
|
@@ -53,7 +53,7 @@ class HttpMini
|
|
53
53
|
alias_method :ping, :poke
|
54
54
|
|
55
55
|
def uri(uri=nil)
|
56
|
-
uri.nil? ? @uri : (self.uri = uri) and self
|
56
|
+
uri.nil? ? @uri : ((self.uri = uri) and self)
|
57
57
|
end
|
58
58
|
|
59
59
|
def host
|
@@ -71,7 +71,11 @@ class HttpMini
|
|
71
71
|
private
|
72
72
|
|
73
73
|
def uri=(uri)
|
74
|
-
@uri = URI.parse(uri) unless uri.nil? || uri.empty?
|
74
|
+
@uri = URI.parse(handle_missing_scheme(uri)) unless uri.nil? || uri.empty?
|
75
|
+
end
|
76
|
+
|
77
|
+
def handle_missing_scheme(uri)
|
78
|
+
uri.match(/https?:\/\//) ? uri : "http://#{uri}"
|
75
79
|
end
|
76
80
|
|
77
81
|
def request
|
@@ -103,10 +107,15 @@ class HttpMini
|
|
103
107
|
end
|
104
108
|
|
105
109
|
def set_path(path)
|
106
|
-
@uri.path = path
|
110
|
+
@uri.path = path.match(/\?/) ? handle_query(path) : path
|
107
111
|
self
|
108
112
|
end
|
109
113
|
|
114
|
+
def handle_query(path)
|
115
|
+
uri.query = path.gsub /.*\?/, ''
|
116
|
+
path.gsub /\?.*/, ''
|
117
|
+
end
|
118
|
+
|
110
119
|
def timeouts
|
111
120
|
[open_timeout, read_timeout]
|
112
121
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: http_mini
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jerome Touffe-Blin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-08-
|
11
|
+
date: 2013-08-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sinatra
|
@@ -24,17 +24,61 @@ dependencies:
|
|
24
24
|
- - '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 1.3.0
|
27
|
-
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: minitest
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '5'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '5'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: webmock
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: coveralls
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
description: A truly minimalist Http Ruby client
|
28
70
|
email: jtblin@gmail.com
|
29
71
|
executables: []
|
30
72
|
extensions: []
|
31
73
|
extra_rdoc_files:
|
32
74
|
- LICENSE
|
33
75
|
- README.md
|
76
|
+
- CHANGELOG.md
|
34
77
|
files:
|
35
78
|
- lib/http_mini.rb
|
36
79
|
- LICENSE
|
37
80
|
- README.md
|
81
|
+
- CHANGELOG.md
|
38
82
|
homepage: https://github.com/jtblin/http_mini
|
39
83
|
licenses:
|
40
84
|
- BSD
|