appsignal 0.11.12 → 0.11.13.beta.0

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.
@@ -1,3 +1,7 @@
1
+ # 0.11.13
2
+ * Configure Net::HTTP to only use TLS
3
+ * Add http proxy support
4
+
1
5
  # 0.11.12
2
6
  * Sanitizer will no longer inspect unknown objects, since implementations of inspect sometimes trigger unexpected behavior.
3
7
 
@@ -62,13 +62,34 @@ module Appsignal
62
62
  end
63
63
 
64
64
  def http_client
65
- Net::HTTP.new(uri.host, uri.port).tap do |http|
65
+ Net::HTTP.new(uri.host, uri.port, proxy_addr, proxy_port).tap do |http|
66
66
  if uri.scheme == 'https'
67
- http.use_ssl = true
67
+ http.use_ssl = true
68
+ http.ssl_version = :TLSv1
68
69
  http.verify_mode = OpenSSL::SSL::VERIFY_PEER
69
- http.ca_file = CA_FILE_PATH
70
+ http.ca_file = CA_FILE_PATH
70
71
  end
71
72
  end
72
73
  end
74
+
75
+ def proxy_uri
76
+ @proxy_uri ||= URI.parse(config[:http_proxy])
77
+ end
78
+
79
+ def proxy_addr
80
+ if config[:http_proxy]
81
+ proxy_uri.host
82
+ else
83
+ nil
84
+ end
85
+ end
86
+
87
+ def proxy_port
88
+ if config[:http_proxy]
89
+ proxy_uri.port
90
+ else
91
+ nil
92
+ end
93
+ end
73
94
  end
74
95
  end
@@ -1,3 +1,3 @@
1
1
  module Appsignal
2
- VERSION = '0.11.12'
2
+ VERSION = '0.11.13.beta.0'
3
3
  end
@@ -86,6 +86,7 @@ describe Appsignal::Transmitter do
86
86
  let(:config) { project_fixture_config('test') }
87
87
 
88
88
  it { should be_instance_of(Net::HTTP) }
89
+ its(:proxy?) { should be_false }
89
90
  its(:use_ssl?) { should be_false }
90
91
  end
91
92
 
@@ -93,9 +94,18 @@ describe Appsignal::Transmitter do
93
94
  let(:config) { project_fixture_config('production') }
94
95
 
95
96
  it { should be_instance_of(Net::HTTP) }
97
+ its(:proxy?) { should be_false }
96
98
  its(:use_ssl?) { should be_true }
97
99
  its(:verify_mode) { should == OpenSSL::SSL::VERIFY_PEER }
98
100
  its(:ca_file) { Appsignal::Transmitter::CA_FILE_PATH }
99
101
  end
102
+
103
+ context "with a proxy" do
104
+ let(:config) { project_fixture_config('production', :http_proxy => 'http://localhost:8080') }
105
+
106
+ its(:proxy?) { should be_true }
107
+ its(:proxy_address) { should == 'localhost' }
108
+ its(:proxy_port) { should == 8080 }
109
+ end
100
110
  end
101
111
  end
metadata CHANGED
@@ -1,7 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appsignal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.12
4
+ version: 0.11.13.beta.0
5
+ prerelease: 8
5
6
  platform: ruby
6
7
  authors:
7
8
  - Robert Beekman
@@ -12,104 +13,118 @@ authors:
12
13
  autorequire:
13
14
  bindir: bin
14
15
  cert_chain: []
15
- date: 2015-06-20 00:00:00.000000000 Z
16
+ date: 2015-07-08 00:00:00.000000000 Z
16
17
  dependencies:
17
18
  - !ruby/object:Gem::Dependency
18
19
  name: rack
19
20
  requirement: !ruby/object:Gem::Requirement
21
+ none: false
20
22
  requirements:
21
- - - ">="
23
+ - - ! '>='
22
24
  - !ruby/object:Gem::Version
23
25
  version: '0'
24
26
  type: :runtime
25
27
  prerelease: false
26
28
  version_requirements: !ruby/object:Gem::Requirement
29
+ none: false
27
30
  requirements:
28
- - - ">="
31
+ - - ! '>='
29
32
  - !ruby/object:Gem::Version
30
33
  version: '0'
31
34
  - !ruby/object:Gem::Dependency
32
35
  name: thread_safe
33
36
  requirement: !ruby/object:Gem::Requirement
37
+ none: false
34
38
  requirements:
35
- - - ">="
39
+ - - ! '>='
36
40
  - !ruby/object:Gem::Version
37
41
  version: '0'
38
42
  type: :runtime
39
43
  prerelease: false
40
44
  version_requirements: !ruby/object:Gem::Requirement
45
+ none: false
41
46
  requirements:
42
- - - ">="
47
+ - - ! '>='
43
48
  - !ruby/object:Gem::Version
44
49
  version: '0'
45
50
  - !ruby/object:Gem::Dependency
46
51
  name: rake
47
52
  requirement: !ruby/object:Gem::Requirement
53
+ none: false
48
54
  requirements:
49
- - - ">="
55
+ - - ! '>='
50
56
  - !ruby/object:Gem::Version
51
57
  version: '0'
52
58
  type: :development
53
59
  prerelease: false
54
60
  version_requirements: !ruby/object:Gem::Requirement
61
+ none: false
55
62
  requirements:
56
- - - ">="
63
+ - - ! '>='
57
64
  - !ruby/object:Gem::Version
58
65
  version: '0'
59
66
  - !ruby/object:Gem::Dependency
60
67
  name: rspec
61
68
  requirement: !ruby/object:Gem::Requirement
69
+ none: false
62
70
  requirements:
63
- - - "~>"
71
+ - - ~>
64
72
  - !ruby/object:Gem::Version
65
73
  version: 2.14.1
66
74
  type: :development
67
75
  prerelease: false
68
76
  version_requirements: !ruby/object:Gem::Requirement
77
+ none: false
69
78
  requirements:
70
- - - "~>"
79
+ - - ~>
71
80
  - !ruby/object:Gem::Version
72
81
  version: 2.14.1
73
82
  - !ruby/object:Gem::Dependency
74
83
  name: pry
75
84
  requirement: !ruby/object:Gem::Requirement
85
+ none: false
76
86
  requirements:
77
- - - ">="
87
+ - - ! '>='
78
88
  - !ruby/object:Gem::Version
79
89
  version: '0'
80
90
  type: :development
81
91
  prerelease: false
82
92
  version_requirements: !ruby/object:Gem::Requirement
93
+ none: false
83
94
  requirements:
84
- - - ">="
95
+ - - ! '>='
85
96
  - !ruby/object:Gem::Version
86
97
  version: '0'
87
98
  - !ruby/object:Gem::Dependency
88
99
  name: timecop
89
100
  requirement: !ruby/object:Gem::Requirement
101
+ none: false
90
102
  requirements:
91
- - - ">="
103
+ - - ! '>='
92
104
  - !ruby/object:Gem::Version
93
105
  version: '0'
94
106
  type: :development
95
107
  prerelease: false
96
108
  version_requirements: !ruby/object:Gem::Requirement
109
+ none: false
97
110
  requirements:
98
- - - ">="
111
+ - - ! '>='
99
112
  - !ruby/object:Gem::Version
100
113
  version: '0'
101
114
  - !ruby/object:Gem::Dependency
102
115
  name: webmock
103
116
  requirement: !ruby/object:Gem::Requirement
117
+ none: false
104
118
  requirements:
105
- - - ">="
119
+ - - ! '>='
106
120
  - !ruby/object:Gem::Version
107
121
  version: '0'
108
122
  type: :development
109
123
  prerelease: false
110
124
  version_requirements: !ruby/object:Gem::Requirement
125
+ none: false
111
126
  requirements:
112
- - - ">="
127
+ - - ! '>='
113
128
  - !ruby/object:Gem::Version
114
129
  version: '0'
115
130
  description: The official appsignal.com gem
@@ -120,9 +135,9 @@ executables:
120
135
  extensions: []
121
136
  extra_rdoc_files: []
122
137
  files:
123
- - ".gitignore"
124
- - ".rspec"
125
- - ".travis.yml"
138
+ - .gitignore
139
+ - .rspec
140
+ - .travis.yml
126
141
  - CHANGELOG.md
127
142
  - Gemfile
128
143
  - LICENSE
@@ -244,26 +259,27 @@ files:
244
259
  homepage: https://github.com/appsignal/appsignal
245
260
  licenses:
246
261
  - MIT
247
- metadata: {}
248
262
  post_install_message:
249
263
  rdoc_options: []
250
264
  require_paths:
251
265
  - lib
252
266
  required_ruby_version: !ruby/object:Gem::Requirement
267
+ none: false
253
268
  requirements:
254
- - - ">="
269
+ - - ! '>='
255
270
  - !ruby/object:Gem::Version
256
271
  version: '1.9'
257
272
  required_rubygems_version: !ruby/object:Gem::Requirement
273
+ none: false
258
274
  requirements:
259
- - - ">="
275
+ - - ! '>'
260
276
  - !ruby/object:Gem::Version
261
- version: '0'
277
+ version: 1.3.1
262
278
  requirements: []
263
279
  rubyforge_project:
264
- rubygems_version: 2.4.5
280
+ rubygems_version: 1.8.23
265
281
  signing_key:
266
- specification_version: 4
282
+ specification_version: 3
267
283
  summary: Logs performance and exception data from your app to appsignal.com
268
284
  test_files:
269
285
  - spec/lib/appsignal/agent_spec.rb
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 0ba213178a250bec23014f41561ccaa3c4ca2c95
4
- data.tar.gz: f9648371cd893047a5dcf4db1467aeff67ba4f97
5
- SHA512:
6
- metadata.gz: 0d53da1203003488e9213d6fe9c9afbe3608419c95ab8c17d829a402ee4d60ff922a445893e63db1da1b27fd6b783bfe29aa85e7eb708a37ddacd6a6dc944421
7
- data.tar.gz: 1e86ea7f96f1b6fb437e100acb158e20edd8ca0ebbd963abc5a66235871453eca4e40c00ba4e4458dc5b47e97ad01f8f0665b0eaf9203b81f4a6d387ba042f04