km 1.1.1 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/Gemfile.lock +1 -1
  2. data/lib/km/version.rb +1 -1
  3. data/lib/km.rb +7 -4
  4. metadata +26 -10
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- km (1.1.1)
4
+ km (1.1.2)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
data/lib/km/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  class KM
2
- VERSION = "1.1.1"
2
+ VERSION = "1.1.2"
3
3
  end
data/lib/km.rb CHANGED
@@ -1,4 +1,4 @@
1
- require 'cgi'
1
+ require 'uri'
2
2
  require 'socket'
3
3
  require 'net/http'
4
4
  require 'fileutils'
@@ -190,9 +190,11 @@ class KM
190
190
  data.update('_k' => @key)
191
191
  data.update '_d' => 1 if data['_t']
192
192
  data['_t'] ||= Time.now.to_i
193
-
193
+
194
+ unsafe = Regexp.new("[^#{URI::REGEXP::PATTERN::UNRESERVED}]", false, 'N')
195
+
194
196
  data.inject(query) do |query,key_val|
195
- query_arr << key_val.collect { |i| CGI.escape i.to_s }.join('=')
197
+ query_arr << key_val.collect { |i| URI.escape(i.to_s, unsafe) }.join('=')
196
198
  end
197
199
  query = '/' + type + '?' + query_arr.join('&')
198
200
  if @use_cron
@@ -214,7 +216,8 @@ class KM
214
216
  end
215
217
  begin
216
218
  host,port = @host.split(':')
217
- res = Net::HTTP.start(host, port) do |http|
219
+ proxy = URI.parse(ENV['http_proxy'] || ENV['HTTP_PROXY'] || '')
220
+ res = Net::HTTP::Proxy(proxy.host, proxy.port, proxy.user, proxy.password).start(host, port) do |http|
218
221
  http.get(line)
219
222
  end
220
223
  rescue Exception => e
metadata CHANGED
@@ -1,8 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: km
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 1.1.1
4
+ prerelease: false
5
+ segments:
6
+ - 1
7
+ - 1
8
+ - 2
9
+ version: 1.1.2
6
10
  platform: ruby
7
11
  authors:
8
12
  - KISSmetrics
@@ -10,17 +14,20 @@ autorequire:
10
14
  bindir: bin
11
15
  cert_chain: []
12
16
 
13
- date: 2011-06-07 00:00:00 -07:00
17
+ date: 2012-04-30 00:00:00 -05:00
14
18
  default_executable:
15
19
  dependencies:
16
20
  - !ruby/object:Gem::Dependency
17
21
  name: bundler
18
22
  prerelease: false
19
23
  requirement: &id001 !ruby/object:Gem::Requirement
20
- none: false
21
24
  requirements:
22
25
  - - ">="
23
26
  - !ruby/object:Gem::Version
27
+ segments:
28
+ - 1
29
+ - 0
30
+ - 0
24
31
  version: 1.0.0
25
32
  type: :development
26
33
  version_requirements: *id001
@@ -28,10 +35,13 @@ dependencies:
28
35
  name: rspec
29
36
  prerelease: false
30
37
  requirement: &id002 !ruby/object:Gem::Requirement
31
- none: false
32
38
  requirements:
33
39
  - - ~>
34
40
  - !ruby/object:Gem::Version
41
+ segments:
42
+ - 2
43
+ - 4
44
+ - 0
35
45
  version: 2.4.0
36
46
  type: :development
37
47
  version_requirements: *id002
@@ -39,10 +49,11 @@ dependencies:
39
49
  name: rake
40
50
  prerelease: false
41
51
  requirement: &id003 !ruby/object:Gem::Requirement
42
- none: false
43
52
  requirements:
44
53
  - - ">="
45
54
  - !ruby/object:Gem::Version
55
+ segments:
56
+ - 0
46
57
  version: "0"
47
58
  type: :development
48
59
  version_requirements: *id003
@@ -50,10 +61,11 @@ dependencies:
50
61
  name: json
51
62
  prerelease: false
52
63
  requirement: &id004 !ruby/object:Gem::Requirement
53
- none: false
54
64
  requirements:
55
65
  - - ">="
56
66
  - !ruby/object:Gem::Version
67
+ segments:
68
+ - 0
57
69
  version: "0"
58
70
  type: :development
59
71
  version_requirements: *id004
@@ -147,21 +159,25 @@ rdoc_options: []
147
159
  require_paths:
148
160
  - lib
149
161
  required_ruby_version: !ruby/object:Gem::Requirement
150
- none: false
151
162
  requirements:
152
163
  - - ">="
153
164
  - !ruby/object:Gem::Version
165
+ segments:
166
+ - 0
154
167
  version: "0"
155
168
  required_rubygems_version: !ruby/object:Gem::Requirement
156
- none: false
157
169
  requirements:
158
170
  - - ">="
159
171
  - !ruby/object:Gem::Version
172
+ segments:
173
+ - 1
174
+ - 3
175
+ - 6
160
176
  version: 1.3.6
161
177
  requirements: []
162
178
 
163
179
  rubyforge_project: kissmetrics
164
- rubygems_version: 1.6.2
180
+ rubygems_version: 1.3.6
165
181
  signing_key:
166
182
  specification_version: 3
167
183
  summary: KISSmetrics ruby API gem