airbrake 3.0.4 → 3.0.5

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.
@@ -14,7 +14,7 @@ require 'rails/init'
14
14
  fail "Please supply an API Key as the first argument" if ARGV.empty?
15
15
 
16
16
  host = ARGV[1]
17
- host ||= "airbrakeapp.com"
17
+ host ||= "airbrake.io"
18
18
 
19
19
  secure = (ARGV[2] == "secure")
20
20
 
@@ -39,15 +39,19 @@ class AirbrakeTasksTest < Test::Unit::TestCase
39
39
 
40
40
  context "given an optional HTTP proxy and valid options" do
41
41
  setup do
42
- @response = stub("response", :body => "stub body")
43
- @http_proxy = stub("proxy", :post_form => @response)
42
+ @response = stub("response", :body => "stub body")
43
+ @http_proxy = stub("proxy", :request => @response)
44
+ @http_proxy_class = stub("proxy_class", :new => @http_proxy)
45
+ @post = stub("post", :set_form_data => nil)
44
46
 
47
+ @http_proxy.expects(:use_ssl=).with(Airbrake.configuration.secure)
45
48
  Net::HTTP.expects(:Proxy).
46
49
  with(Airbrake.configuration.proxy_host,
47
50
  Airbrake.configuration.proxy_port,
48
51
  Airbrake.configuration.proxy_user,
49
52
  Airbrake.configuration.proxy_pass).
50
- returns(@http_proxy)
53
+ returns(@http_proxy_class)
54
+ Net::HTTP::Post.expects(:new).with("/deploys.txt").returns(@post)
51
55
 
52
56
  @options = { :rails_env => "staging", :dry_run => false }
53
57
  end
@@ -57,7 +61,7 @@ class AirbrakeTasksTest < Test::Unit::TestCase
57
61
 
58
62
  should "return true without performing any actual request" do
59
63
  assert_equal true, @output
60
- assert_received(@http_proxy, :post_form) do|expects|
64
+ assert_received(@http_proxy, :request) do|expects|
61
65
  expects.never
62
66
  end
63
67
  end
@@ -68,57 +72,54 @@ class AirbrakeTasksTest < Test::Unit::TestCase
68
72
  @output = AirbrakeTasks.deploy(@options)
69
73
  end
70
74
 
71
- before_should "post to http://airbrakeapp.com/deploys.txt" do
72
- URI.stubs(:parse).with('http://airbrakeapp.com/deploys.txt').returns(:uri)
73
- @http_proxy.expects(:post_form).with(:uri, kind_of(Hash)).returns(successful_response)
75
+ before_should "post to http://airbrake.io:80/deploys.txt" do
76
+ @http_proxy_class.expects(:new).with("airbrake.io", 80).returns(@http_proxy)
77
+ @post.expects(:set_form_data).with(kind_of(Hash))
78
+ @http_proxy.expects(:request).with(any_parameters).returns(successful_response)
74
79
  end
75
80
 
76
81
  before_should "use the project api key" do
77
- @http_proxy.expects(:post_form).
78
- with(kind_of(URI), has_entries('api_key' => "1234123412341234")).
79
- returns(successful_response)
82
+ @post.expects(:set_form_data).
83
+ with(has_entries('api_key' => "1234123412341234"))
80
84
  end
81
85
 
82
86
  before_should "use send the rails_env param" do
83
- @http_proxy.expects(:post_form).
84
- with(kind_of(URI), has_entries("deploy[rails_env]" => "staging")).
85
- returns(successful_response)
87
+ @post.expects(:set_form_data).
88
+ with(has_entries("deploy[rails_env]" => "staging"))
86
89
  end
87
90
 
88
91
  [:local_username, :scm_repository, :scm_revision].each do |key|
89
92
  before_should "use send the #{key} param if it's passed in." do
90
93
  @options[key] = "value"
91
- @http_proxy.expects(:post_form).
92
- with(kind_of(URI), has_entries("deploy[#{key}]" => "value")).
93
- returns(successful_response)
94
+ @post.expects(:set_form_data).
95
+ with(has_entries("deploy[#{key}]" => "value"))
94
96
  end
95
97
  end
96
98
 
97
99
  before_should "use the :api_key param if it's passed in." do
98
100
  @options[:api_key] = "value"
99
- @http_proxy.expects(:post_form).
100
- with(kind_of(URI), has_entries("api_key" => "value")).
101
- returns(successful_response)
101
+ @post.expects(:set_form_data).
102
+ with(has_entries("api_key" => "value"))
102
103
  end
103
104
 
104
105
  before_should "puts the response body on success" do
105
106
  AirbrakeTasks.expects(:puts).with("body")
106
- @http_proxy.expects(:post_form).with(any_parameters).returns(successful_response('body'))
107
+ @http_proxy.expects(:request).with(any_parameters).returns(successful_response('body'))
107
108
  end
108
109
 
109
110
  before_should "puts the response body on failure" do
110
111
  AirbrakeTasks.expects(:puts).with("body")
111
- @http_proxy.expects(:post_form).with(any_parameters).returns(unsuccessful_response('body'))
112
+ @http_proxy.expects(:request).with(any_parameters).returns(unsuccessful_response('body'))
112
113
  end
113
114
 
114
115
  should "return false on failure", :before => lambda {
115
- @http_proxy.expects(:post_form).with(any_parameters).returns(unsuccessful_response('body'))
116
+ @http_proxy.expects(:request).with(any_parameters).returns(unsuccessful_response('body'))
116
117
  } do
117
118
  assert !@output
118
119
  end
119
120
 
120
121
  should "return true on success", :before => lambda {
121
- @http_proxy.expects(:post_form).with(any_parameters).returns(successful_response('body'))
122
+ @http_proxy.expects(:request).with(any_parameters).returns(successful_response('body'))
122
123
  } do
123
124
  assert @output
124
125
  end
@@ -138,8 +139,17 @@ class AirbrakeTasksTest < Test::Unit::TestCase
138
139
  setup { @output = AirbrakeTasks.deploy(:rails_env => "staging") }
139
140
 
140
141
  before_should "post to the custom host" do
141
- URI.stubs(:parse).with('http://custom.host/deploys.txt').returns(:uri)
142
- Net::HTTP.expects(:post_form).with(:uri, kind_of(Hash)).returns(successful_response)
142
+ @post = stub("post", :set_form_data => nil)
143
+ @http_proxy = stub("proxy", :request => @response)
144
+ @http_proxy.expects(:use_ssl=).with(Airbrake.configuration.secure)
145
+ @http_proxy_class = stub("proxy_class", :new => @http_proxy)
146
+ @http_proxy_class.expects(:new).with("custom.host", 80).returns(@http_proxy)
147
+ Net::HTTP.expects(:Proxy).with(any_parameters).returns(@http_proxy_class)
148
+ Net::HTTP::Post.expects(:new).with("/deploys.txt").returns(@post)
149
+ # URI.stubs(:parse).with('http://custom.host/deploys.txt').returns(:uri)
150
+ # Net::HTTP.expects(:post_form).with(:uri, kind_of(Hash)).returns(successful_response)
151
+ @post.expects(:set_form_data).with(kind_of(Hash))
152
+ @http_proxy.expects(:request).with(any_parameters).returns(successful_response)
143
153
  end
144
154
  end
145
155
  end
@@ -20,6 +20,7 @@ class CapistranoTest < Test::Unit::TestCase
20
20
  should "log when calling airbrake:deploy task" do
21
21
  @configuration.set(:current_revision, '084505b1c0e0bcf1526e673bb6ac99fbcb18aecc')
22
22
  @configuration.set(:repository, 'repository')
23
+ @configuration.set(:current_release, '/home/deploy/rails_app/hoptoad')
23
24
  io = StringIO.new
24
25
  logger = Capistrano::Logger.new(:output => io)
25
26
  logger.level = Capistrano::Logger::MAX_LEVEL
@@ -30,4 +31,4 @@ class CapistranoTest < Test::Unit::TestCase
30
31
  assert io.string.include?('** Notifying Airbrake of Deploy')
31
32
  assert io.string.include?('** Airbrake Notification Complete')
32
33
  end
33
- end
34
+ end
@@ -14,9 +14,9 @@ class ConfigurationTest < Test::Unit::TestCase
14
14
  assert_config_default :logger, nil
15
15
  assert_config_default :notifier_version, Airbrake::VERSION
16
16
  assert_config_default :notifier_name, 'Airbrake Notifier'
17
- assert_config_default :notifier_url, 'http://airbrakeapp.com'
17
+ assert_config_default :notifier_url, 'http://airbrake.io'
18
18
  assert_config_default :secure, false
19
- assert_config_default :host, 'airbrakeapp.com'
19
+ assert_config_default :host, 'airbrake.io'
20
20
  assert_config_default :http_open_timeout, 2
21
21
  assert_config_default :http_read_timeout, 5
22
22
  assert_config_default :ignore_by_filters, []
@@ -349,6 +349,13 @@ class NoticeTest < Test::Unit::TestCase
349
349
  end
350
350
  end
351
351
 
352
+
353
+ should "ensure #to_ary is called on objects that support it" do
354
+ assert_nothing_raised do
355
+ build_notice(:session => { :object => stub(:to_ary => {}) })
356
+ end
357
+ end
358
+
352
359
  should "extract data from a rack environment hash" do
353
360
  url = "https://subdomain.happylane.com:100/test/file.rb?var=value&var2=value2"
354
361
  parameters = { 'var' => 'value', 'var2' => 'value2' }
@@ -82,6 +82,19 @@ class NotifierTest < Test::Unit::TestCase
82
82
  assert_sent(notice, notice_args)
83
83
  end
84
84
 
85
+ should "create and send a notice for an exception that responds to to_hash" do
86
+ set_public_env
87
+ exception = build_exception
88
+ notice = stub_notice!
89
+ notice_args = { :error_message => 'uh oh' }
90
+ exception.stubs(:to_hash).returns(notice_args)
91
+ stub_sender!
92
+
93
+ Airbrake.notify(exception)
94
+
95
+ assert_sent(notice, notice_args.merge(:exception => exception))
96
+ end
97
+
85
98
  should "create and sent a notice for an exception and hash" do
86
99
  set_public_env
87
100
  exception = build_exception
@@ -39,7 +39,7 @@ class SenderTest < Test::Unit::TestCase
39
39
  proxy = stub(:new => http)
40
40
  Net::HTTP.stubs(:Proxy => proxy)
41
41
 
42
- url = "http://airbrakeapp.com:80#{Airbrake::Sender::NOTICES_URI}"
42
+ url = "http://airbrake.io:80#{Airbrake::Sender::NOTICES_URI}"
43
43
  uri = URI.parse(url)
44
44
 
45
45
  proxy_host = 'some.host'
@@ -98,7 +98,7 @@ class SenderTest < Test::Unit::TestCase
98
98
 
99
99
  should "post to the right url for non-ssl" do
100
100
  http = stub_http
101
- url = "http://airbrakeapp.com:80#{Airbrake::Sender::NOTICES_URI}"
101
+ url = "http://airbrake.io:80#{Airbrake::Sender::NOTICES_URI}"
102
102
  uri = URI.parse(url)
103
103
  send_exception(:secure => false)
104
104
  assert_received(http, :post) {|expect| expect.with(uri.path, anything, Airbrake::HEADERS) }
@@ -111,7 +111,7 @@ class SenderTest < Test::Unit::TestCase
111
111
  end
112
112
 
113
113
  should "verify the SSL peer when the use_ssl option is set to true" do
114
- url = "https://airbrakeapp.com#{Airbrake::Sender::NOTICES_URI}"
114
+ url = "https://airbrake.io#{Airbrake::Sender::NOTICES_URI}"
115
115
  uri = URI.parse(url)
116
116
 
117
117
  real_http = Net::HTTP.new(uri.host, uri.port)
@@ -121,13 +121,13 @@ class SenderTest < Test::Unit::TestCase
121
121
  File.stubs(:exist?).with(OpenSSL::X509::DEFAULT_CERT_FILE).returns(false)
122
122
 
123
123
  send_exception(:secure => true)
124
- assert(real_http.use_ssl)
124
+ assert(real_http.use_ssl?)
125
125
  assert_equal(OpenSSL::SSL::VERIFY_PEER, real_http.verify_mode)
126
- assert_nil real_http.ca_file
126
+ assert_equal(Airbrake::Sender.local_cert_path, real_http.ca_file)
127
127
  end
128
128
 
129
129
  should "verify the SSL peer when the use_ssl option is set to true and the default cert exists" do
130
- url = "https://airbrakeapp.com#{Airbrake::Sender::NOTICES_URI}"
130
+ url = "https://airbrake.io#{Airbrake::Sender::NOTICES_URI}"
131
131
  uri = URI.parse(url)
132
132
 
133
133
  real_http = Net::HTTP.new(uri.host, uri.port)
@@ -137,7 +137,7 @@ class SenderTest < Test::Unit::TestCase
137
137
  File.stubs(:exist?).with(OpenSSL::X509::DEFAULT_CERT_FILE).returns(true)
138
138
 
139
139
  send_exception(:secure => true)
140
- assert(real_http.use_ssl)
140
+ assert(real_http.use_ssl?)
141
141
  assert_equal(OpenSSL::SSL::VERIFY_PEER, real_http.verify_mode)
142
142
  assert_equal(OpenSSL::X509::DEFAULT_CERT_FILE, real_http.ca_file)
143
143
  end
@@ -169,13 +169,13 @@ class SenderTest < Test::Unit::TestCase
169
169
  should "connect to the right port for ssl" do
170
170
  stub_http
171
171
  send_exception(:secure => true)
172
- assert_received(Net::HTTP, :new) {|expect| expect.with("airbrakeapp.com", 443) }
172
+ assert_received(Net::HTTP, :new) {|expect| expect.with("airbrake.io", 443) }
173
173
  end
174
174
 
175
175
  should "connect to the right port for non-ssl" do
176
176
  stub_http
177
177
  send_exception(:secure => false)
178
- assert_received(Net::HTTP, :new) {|expect| expect.with("airbrakeapp.com", 80) }
178
+ assert_received(Net::HTTP, :new) {|expect| expect.with("airbrake.io", 80) }
179
179
  end
180
180
 
181
181
  should "use ssl if secure" do
metadata CHANGED
@@ -1,235 +1,165 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: airbrake
3
- version: !ruby/object:Gem::Version
4
- hash: 15
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.0.5
5
5
  prerelease:
6
- segments:
7
- - 3
8
- - 0
9
- - 4
10
- version: 3.0.4
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - thoughtbot, inc
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-09-12 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2011-11-09 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: builder
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &70183356319840 !ruby/object:Gem::Requirement
24
17
  none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- hash: 3
29
- segments:
30
- - 0
31
- version: "0"
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
32
22
  type: :runtime
33
- version_requirements: *id001
34
- - !ruby/object:Gem::Dependency
35
- name: activesupport
36
23
  prerelease: false
37
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: *70183356319840
25
+ - !ruby/object:Gem::Dependency
26
+ name: activesupport
27
+ requirement: &70183356319180 !ruby/object:Gem::Requirement
38
28
  none: false
39
- requirements:
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- hash: 3
43
- segments:
44
- - 0
45
- version: "0"
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
46
33
  type: :runtime
47
- version_requirements: *id002
48
- - !ruby/object:Gem::Dependency
49
- name: actionpack
50
34
  prerelease: false
51
- requirement: &id003 !ruby/object:Gem::Requirement
35
+ version_requirements: *70183356319180
36
+ - !ruby/object:Gem::Dependency
37
+ name: actionpack
38
+ requirement: &70183356318180 !ruby/object:Gem::Requirement
52
39
  none: false
53
- requirements:
40
+ requirements:
54
41
  - - ~>
55
- - !ruby/object:Gem::Version
56
- hash: 19
57
- segments:
58
- - 2
59
- - 3
60
- - 8
42
+ - !ruby/object:Gem::Version
61
43
  version: 2.3.8
62
44
  type: :development
63
- version_requirements: *id003
64
- - !ruby/object:Gem::Dependency
65
- name: activerecord
66
45
  prerelease: false
67
- requirement: &id004 !ruby/object:Gem::Requirement
46
+ version_requirements: *70183356318180
47
+ - !ruby/object:Gem::Dependency
48
+ name: activerecord
49
+ requirement: &70183356317420 !ruby/object:Gem::Requirement
68
50
  none: false
69
- requirements:
51
+ requirements:
70
52
  - - ~>
71
- - !ruby/object:Gem::Version
72
- hash: 19
73
- segments:
74
- - 2
75
- - 3
76
- - 8
53
+ - !ruby/object:Gem::Version
77
54
  version: 2.3.8
78
55
  type: :development
79
- version_requirements: *id004
80
- - !ruby/object:Gem::Dependency
81
- name: activesupport
82
56
  prerelease: false
83
- requirement: &id005 !ruby/object:Gem::Requirement
57
+ version_requirements: *70183356317420
58
+ - !ruby/object:Gem::Dependency
59
+ name: activesupport
60
+ requirement: &70183356316420 !ruby/object:Gem::Requirement
84
61
  none: false
85
- requirements:
62
+ requirements:
86
63
  - - ~>
87
- - !ruby/object:Gem::Version
88
- hash: 19
89
- segments:
90
- - 2
91
- - 3
92
- - 8
64
+ - !ruby/object:Gem::Version
93
65
  version: 2.3.8
94
66
  type: :development
95
- version_requirements: *id005
96
- - !ruby/object:Gem::Dependency
97
- name: bourne
98
67
  prerelease: false
99
- requirement: &id006 !ruby/object:Gem::Requirement
68
+ version_requirements: *70183356316420
69
+ - !ruby/object:Gem::Dependency
70
+ name: bourne
71
+ requirement: &70183356312020 !ruby/object:Gem::Requirement
100
72
  none: false
101
- requirements:
102
- - - ">="
103
- - !ruby/object:Gem::Version
104
- hash: 15
105
- segments:
106
- - 1
107
- - 0
108
- version: "1.0"
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '1.0'
109
77
  type: :development
110
- version_requirements: *id006
111
- - !ruby/object:Gem::Dependency
112
- name: cucumber
113
78
  prerelease: false
114
- requirement: &id007 !ruby/object:Gem::Requirement
79
+ version_requirements: *70183356312020
80
+ - !ruby/object:Gem::Dependency
81
+ name: cucumber
82
+ requirement: &70183356311240 !ruby/object:Gem::Requirement
115
83
  none: false
116
- requirements:
84
+ requirements:
117
85
  - - ~>
118
- - !ruby/object:Gem::Version
119
- hash: 59
120
- segments:
121
- - 0
122
- - 10
123
- - 6
86
+ - !ruby/object:Gem::Version
124
87
  version: 0.10.6
125
88
  type: :development
126
- version_requirements: *id007
127
- - !ruby/object:Gem::Dependency
128
- name: fakeweb
129
89
  prerelease: false
130
- requirement: &id008 !ruby/object:Gem::Requirement
90
+ version_requirements: *70183356311240
91
+ - !ruby/object:Gem::Dependency
92
+ name: fakeweb
93
+ requirement: &70183356310280 !ruby/object:Gem::Requirement
131
94
  none: false
132
- requirements:
95
+ requirements:
133
96
  - - ~>
134
- - !ruby/object:Gem::Version
135
- hash: 27
136
- segments:
137
- - 1
138
- - 3
139
- - 0
97
+ - !ruby/object:Gem::Version
140
98
  version: 1.3.0
141
99
  type: :development
142
- version_requirements: *id008
143
- - !ruby/object:Gem::Dependency
144
- name: nokogiri
145
100
  prerelease: false
146
- requirement: &id009 !ruby/object:Gem::Requirement
101
+ version_requirements: *70183356310280
102
+ - !ruby/object:Gem::Dependency
103
+ name: nokogiri
104
+ requirement: &70183356309460 !ruby/object:Gem::Requirement
147
105
  none: false
148
- requirements:
106
+ requirements:
149
107
  - - ~>
150
- - !ruby/object:Gem::Version
151
- hash: 113
152
- segments:
153
- - 1
154
- - 4
155
- - 3
156
- - 1
108
+ - !ruby/object:Gem::Version
157
109
  version: 1.4.3.1
158
110
  type: :development
159
- version_requirements: *id009
160
- - !ruby/object:Gem::Dependency
161
- name: rspec
162
111
  prerelease: false
163
- requirement: &id010 !ruby/object:Gem::Requirement
112
+ version_requirements: *70183356309460
113
+ - !ruby/object:Gem::Dependency
114
+ name: rspec
115
+ requirement: &70183356308000 !ruby/object:Gem::Requirement
164
116
  none: false
165
- requirements:
117
+ requirements:
166
118
  - - ~>
167
- - !ruby/object:Gem::Version
168
- hash: 23
169
- segments:
170
- - 2
171
- - 6
172
- - 0
119
+ - !ruby/object:Gem::Version
173
120
  version: 2.6.0
174
121
  type: :development
175
- version_requirements: *id010
176
- - !ruby/object:Gem::Dependency
177
- name: sham_rack
178
122
  prerelease: false
179
- requirement: &id011 !ruby/object:Gem::Requirement
123
+ version_requirements: *70183356308000
124
+ - !ruby/object:Gem::Dependency
125
+ name: sham_rack
126
+ requirement: &70183356307040 !ruby/object:Gem::Requirement
180
127
  none: false
181
- requirements:
128
+ requirements:
182
129
  - - ~>
183
- - !ruby/object:Gem::Version
184
- hash: 27
185
- segments:
186
- - 1
187
- - 3
188
- - 0
130
+ - !ruby/object:Gem::Version
189
131
  version: 1.3.0
190
132
  type: :development
191
- version_requirements: *id011
192
- - !ruby/object:Gem::Dependency
193
- name: shoulda
194
133
  prerelease: false
195
- requirement: &id012 !ruby/object:Gem::Requirement
134
+ version_requirements: *70183356307040
135
+ - !ruby/object:Gem::Dependency
136
+ name: shoulda
137
+ requirement: &70183356306320 !ruby/object:Gem::Requirement
196
138
  none: false
197
- requirements:
139
+ requirements:
198
140
  - - ~>
199
- - !ruby/object:Gem::Version
200
- hash: 37
201
- segments:
202
- - 2
203
- - 11
204
- - 3
141
+ - !ruby/object:Gem::Version
205
142
  version: 2.11.3
206
143
  type: :development
207
- version_requirements: *id012
208
- - !ruby/object:Gem::Dependency
209
- name: capistrano
210
144
  prerelease: false
211
- requirement: &id013 !ruby/object:Gem::Requirement
145
+ version_requirements: *70183356306320
146
+ - !ruby/object:Gem::Dependency
147
+ name: capistrano
148
+ requirement: &70183356305220 !ruby/object:Gem::Requirement
212
149
  none: false
213
- requirements:
150
+ requirements:
214
151
  - - ~>
215
- - !ruby/object:Gem::Version
216
- hash: 47
217
- segments:
218
- - 2
219
- - 8
220
- - 0
152
+ - !ruby/object:Gem::Version
221
153
  version: 2.8.0
222
154
  type: :development
223
- version_requirements: *id013
155
+ prerelease: false
156
+ version_requirements: *70183356305220
224
157
  description:
225
- email: support@airbrakeapp.com
158
+ email: support@airbrake.io
226
159
  executables: []
227
-
228
160
  extensions: []
229
-
230
161
  extra_rdoc_files: []
231
-
232
- files:
162
+ files:
233
163
  - .gitignore
234
164
  - .yardopts
235
165
  - CHANGELOG
@@ -292,6 +222,8 @@ files:
292
222
  - lib/templates/javascript_notifier.erb
293
223
  - lib/templates/rescue.erb
294
224
  - rails/init.rb
225
+ - resources/README.md
226
+ - resources/ca-bundle.crt
295
227
  - script/integration_test.rb
296
228
  - test/airbrake_2_2.xsd
297
229
  - test/airbrake_tasks_test.rb
@@ -309,40 +241,37 @@ files:
309
241
  - test/recursion_test.rb
310
242
  - test/sender_test.rb
311
243
  - test/user_informer_test.rb
312
- homepage: http://www.airbrakeapp.com
244
+ homepage: http://www.airbrake.io
313
245
  licenses: []
314
-
315
246
  post_install_message:
316
247
  rdoc_options: []
317
-
318
- require_paths:
248
+ require_paths:
319
249
  - lib
320
- required_ruby_version: !ruby/object:Gem::Requirement
250
+ required_ruby_version: !ruby/object:Gem::Requirement
321
251
  none: false
322
- requirements:
323
- - - ">="
324
- - !ruby/object:Gem::Version
325
- hash: 3
326
- segments:
252
+ requirements:
253
+ - - ! '>='
254
+ - !ruby/object:Gem::Version
255
+ version: '0'
256
+ segments:
327
257
  - 0
328
- version: "0"
329
- required_rubygems_version: !ruby/object:Gem::Requirement
258
+ hash: 3313650858108623652
259
+ required_rubygems_version: !ruby/object:Gem::Requirement
330
260
  none: false
331
- requirements:
332
- - - ">="
333
- - !ruby/object:Gem::Version
334
- hash: 3
335
- segments:
261
+ requirements:
262
+ - - ! '>='
263
+ - !ruby/object:Gem::Version
264
+ version: '0'
265
+ segments:
336
266
  - 0
337
- version: "0"
267
+ hash: 3313650858108623652
338
268
  requirements: []
339
-
340
269
  rubyforge_project:
341
- rubygems_version: 1.8.6
270
+ rubygems_version: 1.8.11
342
271
  signing_key:
343
272
  specification_version: 3
344
273
  summary: Send your application errors to our hosted service and reclaim your inbox.
345
- test_files:
274
+ test_files:
346
275
  - features/metal.feature
347
276
  - features/rack.feature
348
277
  - features/rails.feature