km 1.1.1 → 1.1.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.
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