stubby 0.0.8 → 0.0.9

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 (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/stubby/extensions/http.rb +8 -3
  3. metadata +83 -102
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f38ff8f7b58794817a1c178189f880cd7b8db098
4
+ data.tar.gz: b65868abd54c1c17bc55e68986c35a7bf3478343
5
+ SHA512:
6
+ metadata.gz: dcedd3d647130d6bed3bad3f13274a24c5ea56cbad4b5f0f0685c0ab92d40952d4154bb41cdaac44c2d2006f9a06f92db39d029df6f3cba8c6056bf2a72a35b9
7
+ data.tar.gz: 62da797f1c88e47687f3639dd77ef48c20a482c87dfafa08c15449012a98a020bfb186fe91390c66c1afb80b32afccc79d59708f58f1701d9c35f1deb69a7a2f
@@ -106,21 +106,26 @@ module Extensions
106
106
  r = HTTPI::Request.new
107
107
  r.url = to.to_s
108
108
 
109
+ # TODO: this is a hack, should support streaming the bodies
110
+ # and handling the headers more systematically (allow
111
+ # keep-alives and transfer encoding)
112
+ r.headers.merge! Hash[(env.select { |k,v| v.is_a? String }.collect { |k,v| [k.gsub("HTTP_", "").gsub("_", "-"), v] })]
109
113
  r.headers["HOST"] = request.host
110
114
  r.headers["STUBBY-ENV"] = settings.stubby_session.environment
111
115
  r.headers["STUBBY-KEY"] = settings.stubby_session.key(instruction)
112
116
  r.headers["STUBBY-USER"] = settings.stubby_session.user_key
113
117
  r.headers["X-FORWARDED-PROTO"] = request.scheme
114
118
  r.headers["X-FORWARDED-FOR"] = request.ip
115
- r.headers.merge! Hash[(env.select { |k,v| v.is_a? String }.collect { |k,v| [k.gsub("HTTP_", ""), v] })]
116
119
  r.headers["CONNECTION"] = "close"
120
+ r.headers.delete "ACCEPT-ENCODING"
121
+
117
122
  request.body.rewind
118
123
  r.body = request.body.read
119
124
 
120
125
  response = HTTPI.request(request.request_method.downcase.to_sym, r)
121
- response.headers.delete "transfer-encoding"
122
- response.headers.delete "connection"
123
126
 
127
+ response.headers.delete "TRANSFER-ENCODING"
128
+
124
129
  status(response.code)
125
130
  puts "response: #{response.headers}"
126
131
 
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stubby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
5
- prerelease:
4
+ version: 0.0.9
6
5
  platform: ruby
7
6
  authors:
8
7
  - James Kassemi
@@ -13,262 +12,244 @@ cert_chain: []
13
12
  date: 2014-03-04 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
- name: rubydns
15
+ name: bundler
17
16
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
17
  requirements:
20
- - - ! '>='
18
+ - - '>='
21
19
  - !ruby/object:Gem::Version
22
20
  version: '0'
23
21
  type: :runtime
24
22
  prerelease: false
25
23
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
24
  requirements:
28
- - - ! '>='
25
+ - - '>='
29
26
  - !ruby/object:Gem::Version
30
27
  version: '0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: rubydns
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - '='
33
+ - !ruby/object:Gem::Version
34
+ version: 0.7.0
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - '='
40
+ - !ruby/object:Gem::Version
41
+ version: 0.7.0
31
42
  - !ruby/object:Gem::Dependency
32
43
  name: liquid
33
44
  requirement: !ruby/object:Gem::Requirement
34
- none: false
35
45
  requirements:
36
- - - ! '>='
46
+ - - '='
37
47
  - !ruby/object:Gem::Version
38
- version: '0'
48
+ version: 2.6.1
39
49
  type: :runtime
40
50
  prerelease: false
41
51
  version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
52
  requirements:
44
- - - ! '>='
53
+ - - '='
45
54
  - !ruby/object:Gem::Version
46
- version: '0'
55
+ version: 2.6.1
47
56
  - !ruby/object:Gem::Dependency
48
57
  name: multi_json
49
58
  requirement: !ruby/object:Gem::Requirement
50
- none: false
51
59
  requirements:
52
- - - ! '>='
60
+ - - '='
53
61
  - !ruby/object:Gem::Version
54
- version: '0'
62
+ version: 1.8.4
55
63
  type: :runtime
56
64
  prerelease: false
57
65
  version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
66
  requirements:
60
- - - ! '>='
67
+ - - '='
61
68
  - !ruby/object:Gem::Version
62
- version: '0'
69
+ version: 1.8.4
63
70
  - !ruby/object:Gem::Dependency
64
71
  name: sinatra
65
72
  requirement: !ruby/object:Gem::Requirement
66
- none: false
67
73
  requirements:
68
- - - ! '>='
74
+ - - '='
69
75
  - !ruby/object:Gem::Version
70
- version: '0'
76
+ version: 1.4.4
71
77
  type: :runtime
72
78
  prerelease: false
73
79
  version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
80
  requirements:
76
- - - ! '>='
81
+ - - '='
77
82
  - !ruby/object:Gem::Version
78
- version: '0'
83
+ version: 1.4.4
79
84
  - !ruby/object:Gem::Dependency
80
85
  name: sinatra-contrib
81
86
  requirement: !ruby/object:Gem::Requirement
82
- none: false
83
87
  requirements:
84
- - - ! '>='
88
+ - - '='
85
89
  - !ruby/object:Gem::Version
86
- version: '0'
90
+ version: 1.4.2
87
91
  type: :runtime
88
92
  prerelease: false
89
93
  version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
94
  requirements:
92
- - - ! '>='
95
+ - - '='
93
96
  - !ruby/object:Gem::Version
94
- version: '0'
97
+ version: 1.4.2
95
98
  - !ruby/object:Gem::Dependency
96
99
  name: rack-ssl
97
100
  requirement: !ruby/object:Gem::Requirement
98
- none: false
99
101
  requirements:
100
- - - ! '>='
102
+ - - '='
101
103
  - !ruby/object:Gem::Version
102
- version: '0'
104
+ version: 1.3.3
103
105
  type: :runtime
104
106
  prerelease: false
105
107
  version_requirements: !ruby/object:Gem::Requirement
106
- none: false
107
108
  requirements:
108
- - - ! '>='
109
+ - - '='
109
110
  - !ruby/object:Gem::Version
110
- version: '0'
111
+ version: 1.3.3
111
112
  - !ruby/object:Gem::Dependency
112
113
  name: dns-zonefile
113
114
  requirement: !ruby/object:Gem::Requirement
114
- none: false
115
115
  requirements:
116
- - - ! '>='
116
+ - - '='
117
117
  - !ruby/object:Gem::Version
118
- version: '0'
118
+ version: 1.0.4
119
119
  type: :runtime
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
- none: false
123
122
  requirements:
124
- - - ! '>='
123
+ - - '='
125
124
  - !ruby/object:Gem::Version
126
- version: '0'
125
+ version: 1.0.4
127
126
  - !ruby/object:Gem::Dependency
128
127
  name: ipaddress
129
128
  requirement: !ruby/object:Gem::Requirement
130
- none: false
131
129
  requirements:
132
- - - ! '>='
130
+ - - '='
133
131
  - !ruby/object:Gem::Version
134
- version: '0'
132
+ version: 0.8.0
135
133
  type: :runtime
136
134
  prerelease: false
137
135
  version_requirements: !ruby/object:Gem::Requirement
138
- none: false
139
136
  requirements:
140
- - - ! '>='
137
+ - - '='
141
138
  - !ruby/object:Gem::Version
142
- version: '0'
139
+ version: 0.8.0
143
140
  - !ruby/object:Gem::Dependency
144
141
  name: httpi
145
142
  requirement: !ruby/object:Gem::Requirement
146
- none: false
147
143
  requirements:
148
- - - ! '>='
144
+ - - '='
149
145
  - !ruby/object:Gem::Version
150
- version: '0'
146
+ version: 2.1.0
151
147
  type: :runtime
152
148
  prerelease: false
153
149
  version_requirements: !ruby/object:Gem::Requirement
154
- none: false
155
150
  requirements:
156
- - - ! '>='
151
+ - - '='
157
152
  - !ruby/object:Gem::Version
158
- version: '0'
153
+ version: 2.1.0
159
154
  - !ruby/object:Gem::Dependency
160
155
  name: thor
161
156
  requirement: !ruby/object:Gem::Requirement
162
- none: false
163
157
  requirements:
164
- - - ! '>='
158
+ - - '='
165
159
  - !ruby/object:Gem::Version
166
- version: '0'
160
+ version: 0.18.1
167
161
  type: :runtime
168
162
  prerelease: false
169
163
  version_requirements: !ruby/object:Gem::Requirement
170
- none: false
171
164
  requirements:
172
- - - ! '>='
165
+ - - '='
173
166
  - !ruby/object:Gem::Version
174
- version: '0'
167
+ version: 0.18.1
175
168
  - !ruby/object:Gem::Dependency
176
169
  name: listen
177
170
  requirement: !ruby/object:Gem::Requirement
178
- none: false
179
171
  requirements:
180
- - - ! '>='
172
+ - - '='
181
173
  - !ruby/object:Gem::Version
182
- version: '0'
174
+ version: 2.6.2
183
175
  type: :runtime
184
176
  prerelease: false
185
177
  version_requirements: !ruby/object:Gem::Requirement
186
- none: false
187
178
  requirements:
188
- - - ! '>='
179
+ - - '='
189
180
  - !ruby/object:Gem::Version
190
- version: '0'
181
+ version: 2.6.2
191
182
  - !ruby/object:Gem::Dependency
192
183
  name: oj
193
184
  requirement: !ruby/object:Gem::Requirement
194
- none: false
195
185
  requirements:
196
- - - ! '>='
186
+ - - '='
197
187
  - !ruby/object:Gem::Version
198
- version: '0'
188
+ version: 2.5.5
199
189
  type: :runtime
200
190
  prerelease: false
201
191
  version_requirements: !ruby/object:Gem::Requirement
202
- none: false
203
192
  requirements:
204
- - - ! '>='
193
+ - - '='
205
194
  - !ruby/object:Gem::Version
206
- version: '0'
195
+ version: 2.5.5
207
196
  - !ruby/object:Gem::Dependency
208
197
  name: thin
209
198
  requirement: !ruby/object:Gem::Requirement
210
- none: false
211
199
  requirements:
212
- - - ! '>='
200
+ - - '='
213
201
  - !ruby/object:Gem::Version
214
- version: '0'
202
+ version: 1.5.1
215
203
  type: :runtime
216
204
  prerelease: false
217
205
  version_requirements: !ruby/object:Gem::Requirement
218
- none: false
219
206
  requirements:
220
- - - ! '>='
207
+ - - '='
221
208
  - !ruby/object:Gem::Version
222
- version: '0'
209
+ version: 1.5.1
223
210
  - !ruby/object:Gem::Dependency
224
211
  name: mailcatcher
225
212
  requirement: !ruby/object:Gem::Requirement
226
- none: false
227
213
  requirements:
228
- - - ! '>='
214
+ - - '='
229
215
  - !ruby/object:Gem::Version
230
- version: '0'
216
+ version: 0.5.12
231
217
  type: :runtime
232
218
  prerelease: false
233
219
  version_requirements: !ruby/object:Gem::Requirement
234
- none: false
235
220
  requirements:
236
- - - ! '>='
221
+ - - '='
237
222
  - !ruby/object:Gem::Version
238
- version: '0'
223
+ version: 0.5.12
239
224
  - !ruby/object:Gem::Dependency
240
225
  name: rspec
241
226
  requirement: !ruby/object:Gem::Requirement
242
- none: false
243
227
  requirements:
244
- - - ! '>='
228
+ - - '>='
245
229
  - !ruby/object:Gem::Version
246
230
  version: '0'
247
231
  type: :development
248
232
  prerelease: false
249
233
  version_requirements: !ruby/object:Gem::Requirement
250
- none: false
251
234
  requirements:
252
- - - ! '>='
235
+ - - '>='
253
236
  - !ruby/object:Gem::Version
254
237
  version: '0'
255
238
  - !ruby/object:Gem::Dependency
256
239
  name: pry
257
240
  requirement: !ruby/object:Gem::Requirement
258
- none: false
259
241
  requirements:
260
- - - ! '>='
242
+ - - '>='
261
243
  - !ruby/object:Gem::Version
262
244
  version: '0'
263
245
  type: :development
264
246
  prerelease: false
265
247
  version_requirements: !ruby/object:Gem::Requirement
266
- none: false
267
248
  requirements:
268
- - - ! '>='
249
+ - - '>='
269
250
  - !ruby/object:Gem::Version
270
251
  version: '0'
271
- description: ''
252
+ description:
272
253
  email:
273
254
  - jkassemi@gmail.com
274
255
  - damnbigman@gmail.com
@@ -295,27 +276,27 @@ files:
295
276
  - LICENSE
296
277
  - README.md
297
278
  homepage: http://github.com/jkassemi/stubby
298
- licenses: []
279
+ licenses:
280
+ - MIT
281
+ metadata: {}
299
282
  post_install_message:
300
283
  rdoc_options: []
301
284
  require_paths:
302
285
  - lib
303
286
  required_ruby_version: !ruby/object:Gem::Requirement
304
- none: false
305
287
  requirements:
306
- - - ! '>='
288
+ - - '>='
307
289
  - !ruby/object:Gem::Version
308
290
  version: '0'
309
291
  required_rubygems_version: !ruby/object:Gem::Requirement
310
- none: false
311
292
  requirements:
312
- - - ! '>='
293
+ - - '>='
313
294
  - !ruby/object:Gem::Version
314
295
  version: 1.8.23
315
296
  requirements: []
316
297
  rubyforge_project: stubby
317
- rubygems_version: 1.8.23
298
+ rubygems_version: 2.0.3
318
299
  signing_key:
319
- specification_version: 3
320
- summary: ''
300
+ specification_version: 4
301
+ summary: Declarative hosts / proxy management for multi-environment development
321
302
  test_files: []