strelka 0.18.0 → 0.19.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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/History.rdoc +24 -0
- data/IDEAS.rdoc +0 -1
- data/README.rdoc +12 -6
- data/Rakefile +4 -94
- data/lib/strelka.rb +1 -1
- data/lib/strelka/app.rb +2 -3
- data/lib/strelka/app/parameters.rb +3 -12
- data/lib/strelka/app/restresources.rb +0 -3
- data/lib/strelka/cookie.rb +1 -1
- data/lib/strelka/mixins.rb +1 -1
- data/lib/strelka/multirunner.rb +34 -11
- data/lib/strelka/paramvalidator.rb +22 -45
- data/lib/strelka/session/default.rb +1 -1
- data/spec/strelka/app/parameters_spec.rb +1 -27
- data/spec/strelka/app_spec.rb +0 -12
- data/spec/strelka/mixins_spec.rb +0 -10
- data/spec/strelka/paramvalidator_spec.rb +4 -54
- metadata +51 -143
- metadata.gz.sig +0 -0
- data/.gemtest +0 -0
- data/ChangeLog +0 -3824
- data/MILESTONES.rdoc +0 -24
- data/Manifest.txt +0 -144
- data/contrib/hoetemplate/History.rdoc.erb +0 -4
- data/contrib/hoetemplate/Manifest.txt.erb +0 -8
- data/contrib/hoetemplate/README.rdoc.erb +0 -35
- data/contrib/hoetemplate/Rakefile.erb +0 -24
- data/contrib/hoetemplate/data/project/apps/file_name_app +0 -37
- data/contrib/hoetemplate/data/project/templates/layout.tmpl.erb +0 -13
- data/contrib/hoetemplate/data/project/templates/top.tmpl.erb +0 -8
- data/contrib/hoetemplate/lib/file_name.rb.erb +0 -15
- data/contrib/hoetemplate/spec/file_name_spec.rb.erb +0 -21
- data/contrib/strelka-dogs/doggie6.svg +0 -271
- data/contrib/strelka-dogs/doggie7.svg +0 -49
- data/examples/Procfile +0 -9
- data/examples/apps/auth-demo +0 -29
- data/examples/apps/auth-demo2 +0 -37
- data/examples/apps/hello-world +0 -30
- data/examples/apps/sessions-demo +0 -42
- data/examples/apps/upload-demo +0 -74
- data/examples/apps/ws-chat +0 -69
- data/examples/apps/ws-echo +0 -61
- data/examples/config.yml +0 -33
- data/examples/gen-config.rb +0 -52
- data/examples/static/examples.css +0 -4
- data/examples/static/examples.html +0 -33
- data/examples/strelka.conf.example +0 -51
- data/examples/templates/auth-form.tmpl +0 -14
- data/examples/templates/auth-success.tmpl +0 -5
- data/examples/templates/layout.tmpl +0 -31
- data/examples/templates/upload-form.tmpl +0 -17
- data/examples/templates/upload-success.tmpl +0 -13
@@ -78,7 +78,7 @@ class Strelka::Session::Default < Strelka::Session
|
|
78
78
|
cookie = request.cookies[ self.cookie_name ] or return nil
|
79
79
|
|
80
80
|
if cookie.value =~ /^([[:xdigit:]]+)$/i
|
81
|
-
return $1
|
81
|
+
return $1
|
82
82
|
else
|
83
83
|
self.log.warn "Request with a malformed session cookie: %p" % [ request ]
|
84
84
|
return nil
|
@@ -119,39 +119,13 @@ RSpec.describe Strelka::App::Parameters do
|
|
119
119
|
end
|
120
120
|
|
121
121
|
it "validates parameters from the request" do
|
122
|
-
req = @request_factory.get( (+'/user/search?username=anheptoh')
|
122
|
+
req = @request_factory.get( (+'/user/search?username=anheptoh') )
|
123
123
|
@app.new.handle( req )
|
124
124
|
|
125
125
|
expect( req.params ).to be_a( Strelka::ParamValidator )
|
126
126
|
expect( req.params ).to be_okay()
|
127
127
|
expect( req.params ).to_not have_errors()
|
128
128
|
expect( req.params[:username] ).to eq( 'anheptoh' )
|
129
|
-
expect( req.params[:username] ).to be_tainted()
|
130
|
-
end
|
131
|
-
|
132
|
-
it "untaints all parameters if global untainting is enabled" do
|
133
|
-
@app.class_eval do
|
134
|
-
untaint_all_constraints true
|
135
|
-
end
|
136
|
-
|
137
|
-
expect( @app.untaint_all_constraints ).to be_truthy()
|
138
|
-
req = @request_factory.get( (+'/user/search?username=shereshnaheth').taint )
|
139
|
-
@app.new.handle( req )
|
140
|
-
|
141
|
-
expect( req.params[:username] ).to eq( 'shereshnaheth' )
|
142
|
-
expect( req.params[:username] ).to_not be_tainted()
|
143
|
-
end
|
144
|
-
|
145
|
-
it "untaints parameters flagged for untainting" do
|
146
|
-
@app.class_eval do
|
147
|
-
param :message, :printable, :untaint
|
148
|
-
end
|
149
|
-
|
150
|
-
req = @request_factory.get( (+'/user/search?message=I+love+the+circus.').taint )
|
151
|
-
@app.new.handle( req )
|
152
|
-
|
153
|
-
expect( req.params[:message] ).to_not be_tainted()
|
154
|
-
expect( req.params[:message] ).to eq( 'I love the circus.' )
|
155
129
|
end
|
156
130
|
|
157
131
|
end
|
data/spec/strelka/app_spec.rb
CHANGED
@@ -245,18 +245,6 @@ RSpec.describe Strelka::App do
|
|
245
245
|
expect( @app ).to be_in_devmode()
|
246
246
|
end
|
247
247
|
|
248
|
-
it "configures itself to be in 'developer mode' if debugging is enabled" do
|
249
|
-
debugsetting = $DEBUG
|
250
|
-
|
251
|
-
begin
|
252
|
-
$DEBUG = true
|
253
|
-
@app.configure
|
254
|
-
expect( @app ).to be_in_devmode()
|
255
|
-
ensure
|
256
|
-
$DEBUG = debugsetting
|
257
|
-
end
|
258
|
-
end
|
259
|
-
|
260
248
|
it "closes async uploads with a 413 Request Entity Too Large by default" do
|
261
249
|
@req.headers.x_mongrel2_upload_start = 'an/uploaded/file/path'
|
262
250
|
|
data/spec/strelka/mixins_spec.rb
CHANGED
@@ -279,16 +279,6 @@ RSpec.describe Strelka, "mixins" do
|
|
279
279
|
expect( copy.default_proc ).to eq( original.default_proc )
|
280
280
|
end
|
281
281
|
|
282
|
-
it "preserves taintedness of copied objects" do
|
283
|
-
original = Object.new
|
284
|
-
original.taint
|
285
|
-
|
286
|
-
copy = Strelka::DataUtilities.deep_copy( original )
|
287
|
-
|
288
|
-
expect( copy ).to_not be( original )
|
289
|
-
expect( copy ).to be_tainted()
|
290
|
-
end
|
291
|
-
|
292
282
|
it "preserves frozen-ness of copied objects" do
|
293
283
|
original = Object.new
|
294
284
|
original.freeze
|
@@ -16,12 +16,6 @@ require 'strelka/paramvalidator'
|
|
16
16
|
#####################################################################
|
17
17
|
RSpec.describe Strelka::ParamValidator do
|
18
18
|
|
19
|
-
# Utility function to make tainted frozen strings out of frozen string literals
|
20
|
-
def tainted( string )
|
21
|
-
return ( +string ).taint.freeze
|
22
|
-
end
|
23
|
-
|
24
|
-
|
25
19
|
before(:each) do
|
26
20
|
@validator = Strelka::ParamValidator.new
|
27
21
|
end
|
@@ -138,16 +132,6 @@ RSpec.describe Strelka::ParamValidator do
|
|
138
132
|
expect( @validator.error_messages.first ).to match( /foo/i )
|
139
133
|
end
|
140
134
|
|
141
|
-
it "untaints valid args if told to do so" do
|
142
|
-
tainted_one = tainted( "1" )
|
143
|
-
|
144
|
-
@validator.add( :number, /^\d+$/, :untaint )
|
145
|
-
@validator.validate( 'number' => tainted_one )
|
146
|
-
|
147
|
-
expect( @validator[:number] ).to eq( "1" )
|
148
|
-
expect( @validator[:number].tainted? ).to be_falsey()
|
149
|
-
end
|
150
|
-
|
151
135
|
it "knows the names of fields that were required but missing from the parameters" do
|
152
136
|
@validator.add( :id, :integer, :required )
|
153
137
|
@validator.validate( {} )
|
@@ -340,38 +324,6 @@ RSpec.describe Strelka::ParamValidator do
|
|
340
324
|
})
|
341
325
|
end
|
342
326
|
|
343
|
-
it "untaints both keys and values in complex hash fields if untainting is turned on" do
|
344
|
-
@validator.add( 'recipe[ingredient][rarity]', /^([\w\-]+)$/, :required )
|
345
|
-
@validator.add( 'recipe[ingredient][name]', :string )
|
346
|
-
@validator.add( 'recipe[ingredient][cost]', :string )
|
347
|
-
@validator.add( 'recipe[yield]', :string )
|
348
|
-
@validator.untaint_all_constraints = true
|
349
|
-
|
350
|
-
args = {
|
351
|
-
tainted('recipe[ingredient][rarity]') => tainted('super-rare'),
|
352
|
-
tainted('recipe[ingredient][name]') => tainted('nutmeg'),
|
353
|
-
tainted('recipe[ingredient][cost]') => tainted('$0.18'),
|
354
|
-
tainted('recipe[yield]') => tainted('2 loaves'),
|
355
|
-
}
|
356
|
-
@validator.validate( args )
|
357
|
-
|
358
|
-
expect( @validator.valid ).to eq({
|
359
|
-
'recipe' => {
|
360
|
-
'ingredient' => { 'name' => 'nutmeg', 'cost' => '$0.18', 'rarity' => 'super-rare' },
|
361
|
-
'yield' => '2 loaves'
|
362
|
-
}
|
363
|
-
})
|
364
|
-
|
365
|
-
@validator.valid.keys.each {|key| expect(key).to_not be_tainted() }
|
366
|
-
@validator.valid.values.each {|key| expect(key).to_not be_tainted() }
|
367
|
-
@validator.valid['recipe'].keys.each {|key| expect(key).to_not be_tainted() }
|
368
|
-
@validator.valid['recipe']['ingredient'].keys.each {|key| expect(key).to_not be_tainted() }
|
369
|
-
expect( @validator.valid['recipe']['yield'] ).to_not be_tainted()
|
370
|
-
expect( @validator.valid['recipe']['ingredient']['rarity'] ).to_not be_tainted()
|
371
|
-
expect( @validator.valid['recipe']['ingredient']['name'] ).to_not be_tainted()
|
372
|
-
expect( @validator.valid['recipe']['ingredient']['cost'] ).to_not be_tainted()
|
373
|
-
end
|
374
|
-
|
375
327
|
end # describe "hash parameters"
|
376
328
|
|
377
329
|
describe "merging new parameters" do
|
@@ -453,12 +405,10 @@ RSpec.describe Strelka::ParamValidator do
|
|
453
405
|
end
|
454
406
|
|
455
407
|
it "returns the captures with named captures as a Hash" do
|
456
|
-
@validator.add( :order_number, /(?<category>[[:upper:]]{3})-(?<sku>\d{12})
|
457
|
-
@validator.validate( 'order_number' =>
|
408
|
+
@validator.add( :order_number, /(?<category>[[:upper:]]{3})-(?<sku>\d{12})/ )
|
409
|
+
@validator.validate( 'order_number' => " JVV-886451300133 ".dup )
|
458
410
|
|
459
411
|
expect( @validator[:order_number] ).to eq( {:category => 'JVV', :sku => '886451300133'} )
|
460
|
-
expect( @validator[:order_number][:category] ).to_not be_tainted()
|
461
|
-
expect( @validator[:order_number][:sku] ).to_not be_tainted()
|
462
412
|
end
|
463
413
|
|
464
414
|
it "returns the captures as an array " +
|
@@ -782,7 +732,7 @@ RSpec.describe Strelka::ParamValidator do
|
|
782
732
|
|
783
733
|
end
|
784
734
|
|
785
|
-
describe ":date
|
735
|
+
describe ":date constraints" do
|
786
736
|
|
787
737
|
before( :each ) do
|
788
738
|
@validator.add( :expires, :date )
|
@@ -808,7 +758,7 @@ RSpec.describe Strelka::ParamValidator do
|
|
808
758
|
|
809
759
|
end
|
810
760
|
|
811
|
-
describe ":datetime
|
761
|
+
describe ":datetime constraints" do
|
812
762
|
|
813
763
|
before( :each ) do
|
814
764
|
@validator.add( :expires, :datetime )
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: strelka
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.19.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mahlon E. Smith
|
@@ -11,31 +11,31 @@ bindir: bin
|
|
11
11
|
cert_chain:
|
12
12
|
- |
|
13
13
|
-----BEGIN CERTIFICATE-----
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
14
|
+
MIIENDCCApygAwIBAgIBATANBgkqhkiG9w0BAQsFADAiMSAwHgYDVQQDDBdnZWQv
|
15
|
+
REM9RmFlcmllTVVEL0RDPW9yZzAeFw0xOTEwMDkwMDM2NTdaFw0yMDEwMDgwMDM2
|
16
|
+
NTdaMCIxIDAeBgNVBAMMF2dlZC9EQz1GYWVyaWVNVUQvREM9b3JnMIIBojANBgkq
|
17
|
+
hkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAvyVhkRzvlEs0fe7145BYLfN6njX9ih5H
|
18
|
+
L60U0p0euIurpv84op9CNKF9tx+1WKwyQvQP7qFGuZxkSUuWcP/sFhDXL1lWUuIl
|
19
|
+
M4uHbGCRmOshDrF4dgnBeOvkHr1fIhPlJm5FO+Vew8tSQmlDsosxLUx+VB7DrVFO
|
20
|
+
5PU2AEbf04GGSrmqADGWXeaslaoRdb1fu/0M5qfPTRn5V39sWD9umuDAF9qqil/x
|
21
|
+
Sl6phTvgBrG8GExHbNZpLARd3xrBYLEFsX7RvBn2UPfgsrtvpdXjsHGfpT3IPN+B
|
22
|
+
vQ66lts4alKC69TE5cuKasWBm+16A4aEe3XdZBRNmtOu/g81gvwA7fkJHKllJuaI
|
23
|
+
dXzdHqq+zbGZVSQ7pRYHYomD0IiDe1DbIouFnPWmagaBnGHwXkDT2bKKP+s2v21m
|
24
|
+
ozilJg4aar2okb/RA6VS87o+d7g6LpDDMMQjH4G9OPnJENLdhu8KnPw/ivSVvQw7
|
25
|
+
N2I4L/ZOIe2DIVuYH7aLHfjZDQv/mNgpAgMBAAGjdTBzMAkGA1UdEwQCMAAwCwYD
|
26
|
+
VR0PBAQDAgSwMB0GA1UdDgQWBBRyjf55EbrHagiRLqt5YAd3yb8k4DAcBgNVHREE
|
27
|
+
FTATgRFnZWRARmFlcmllTVVELm9yZzAcBgNVHRIEFTATgRFnZWRARmFlcmllTVVE
|
28
|
+
Lm9yZzANBgkqhkiG9w0BAQsFAAOCAYEAFqsr6o0SvQRgjQVmhbQvExRnCMCoW1yb
|
29
|
+
FJiN7A5RA2Iy2E61OG1Ul5nGmaDmx/PNB/6JIbIV3B9Uq8aTZx4uOjK7r8vMl1/t
|
30
|
+
ZfY7r6HejJfXlcO2m6JDMbpdyEVv916LncBkzZRz6vnnNCx+31f15FKddxujpAFd
|
31
|
+
qpn3JRQY+oj7ZkoccL/IUiDpxQWeS3oOoz9qr2kVTp8R50InZimt79FqCl/1m66W
|
32
|
+
kdOuf+wM3DDx7Rt4IVNHrhGlyfMr7xjKW1Q3gll+pMN1DT6Ajx/t3JDSEg7BnnEW
|
33
|
+
r7AciSO6J4ApUdqyG+coLFlGdtgFTgRHv7ihbQtDI7Z/LV7A4Spn1j2PK3j0Omri
|
34
|
+
kSl1hPVigRytfgdVGiLXzvkkrkgj9EknCaj5UHbac7XvVBrljXj9hsnnqTANaKsg
|
35
|
+
jBZSA+N+xUTgUWpXjjwsLZjzJkhWATJWq+krNXcqpwXo6HsjmdUxoFMt63RBb+sI
|
36
|
+
XrxOxp8o0uOkU7FdLSGsyqJ2LzsR4obN
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date:
|
38
|
+
date: 2020-02-05 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: configurability
|
@@ -99,14 +99,14 @@ dependencies:
|
|
99
99
|
requirements:
|
100
100
|
- - "~>"
|
101
101
|
- !ruby/object:Gem::Version
|
102
|
-
version: '0.
|
102
|
+
version: '0.15'
|
103
103
|
type: :runtime
|
104
104
|
prerelease: false
|
105
105
|
version_requirements: !ruby/object:Gem::Requirement
|
106
106
|
requirements:
|
107
107
|
- - "~>"
|
108
108
|
- !ruby/object:Gem::Version
|
109
|
-
version: '0.
|
109
|
+
version: '0.15'
|
110
110
|
- !ruby/object:Gem::Dependency
|
111
111
|
name: mongrel2
|
112
112
|
requirement: !ruby/object:Gem::Requirement
|
@@ -192,61 +192,33 @@ dependencies:
|
|
192
192
|
- !ruby/object:Gem::Version
|
193
193
|
version: '2.14'
|
194
194
|
- !ruby/object:Gem::Dependency
|
195
|
-
name:
|
195
|
+
name: rake-deveiate
|
196
196
|
requirement: !ruby/object:Gem::Requirement
|
197
197
|
requirements:
|
198
198
|
- - "~>"
|
199
199
|
- !ruby/object:Gem::Version
|
200
|
-
version: '
|
201
|
-
type: :development
|
202
|
-
prerelease: false
|
203
|
-
version_requirements: !ruby/object:Gem::Requirement
|
204
|
-
requirements:
|
205
|
-
- - "~>"
|
206
|
-
- !ruby/object:Gem::Version
|
207
|
-
version: '1.4'
|
208
|
-
- !ruby/object:Gem::Dependency
|
209
|
-
name: hoe-deveiate
|
210
|
-
requirement: !ruby/object:Gem::Requirement
|
211
|
-
requirements:
|
212
|
-
- - "~>"
|
213
|
-
- !ruby/object:Gem::Version
|
214
|
-
version: '0.10'
|
215
|
-
type: :development
|
216
|
-
prerelease: false
|
217
|
-
version_requirements: !ruby/object:Gem::Requirement
|
218
|
-
requirements:
|
219
|
-
- - "~>"
|
220
|
-
- !ruby/object:Gem::Version
|
221
|
-
version: '0.10'
|
222
|
-
- !ruby/object:Gem::Dependency
|
223
|
-
name: hoe-highline
|
224
|
-
requirement: !ruby/object:Gem::Requirement
|
225
|
-
requirements:
|
226
|
-
- - "~>"
|
227
|
-
- !ruby/object:Gem::Version
|
228
|
-
version: '0.2'
|
200
|
+
version: '0.9'
|
229
201
|
type: :development
|
230
202
|
prerelease: false
|
231
203
|
version_requirements: !ruby/object:Gem::Requirement
|
232
204
|
requirements:
|
233
205
|
- - "~>"
|
234
206
|
- !ruby/object:Gem::Version
|
235
|
-
version: '0.
|
207
|
+
version: '0.9'
|
236
208
|
- !ruby/object:Gem::Dependency
|
237
209
|
name: rspec
|
238
210
|
requirement: !ruby/object:Gem::Requirement
|
239
211
|
requirements:
|
240
212
|
- - "~>"
|
241
213
|
- !ruby/object:Gem::Version
|
242
|
-
version: '3.
|
214
|
+
version: '3.8'
|
243
215
|
type: :development
|
244
216
|
prerelease: false
|
245
217
|
version_requirements: !ruby/object:Gem::Requirement
|
246
218
|
requirements:
|
247
219
|
- - "~>"
|
248
220
|
- !ruby/object:Gem::Version
|
249
|
-
version: '3.
|
221
|
+
version: '3.8'
|
250
222
|
- !ruby/object:Gem::Dependency
|
251
223
|
name: simplecov
|
252
224
|
requirement: !ruby/object:Gem::Requirement
|
@@ -276,104 +248,42 @@ dependencies:
|
|
276
248
|
- !ruby/object:Gem::Version
|
277
249
|
version: '0.1'
|
278
250
|
- !ruby/object:Gem::Dependency
|
279
|
-
name:
|
251
|
+
name: sqlite3
|
280
252
|
requirement: !ruby/object:Gem::Requirement
|
281
253
|
requirements:
|
282
|
-
- - "
|
283
|
-
- !ruby/object:Gem::Version
|
284
|
-
version: '4.0'
|
285
|
-
- - "<"
|
254
|
+
- - "~>"
|
286
255
|
- !ruby/object:Gem::Version
|
287
|
-
version: '
|
288
|
-
type: :development
|
289
|
-
prerelease: false
|
290
|
-
version_requirements: !ruby/object:Gem::Requirement
|
291
|
-
requirements:
|
256
|
+
version: '1.4'
|
292
257
|
- - ">="
|
293
258
|
- !ruby/object:Gem::Version
|
294
|
-
version:
|
295
|
-
- - "<"
|
296
|
-
- !ruby/object:Gem::Version
|
297
|
-
version: '7'
|
298
|
-
- !ruby/object:Gem::Dependency
|
299
|
-
name: hoe
|
300
|
-
requirement: !ruby/object:Gem::Requirement
|
301
|
-
requirements:
|
302
|
-
- - "~>"
|
303
|
-
- !ruby/object:Gem::Version
|
304
|
-
version: '3.18'
|
259
|
+
version: 1.4.2
|
305
260
|
type: :development
|
306
261
|
prerelease: false
|
307
262
|
version_requirements: !ruby/object:Gem::Requirement
|
308
263
|
requirements:
|
309
264
|
- - "~>"
|
310
265
|
- !ruby/object:Gem::Version
|
311
|
-
version: '
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
cosmonaut}[http://en.wikipedia.org/wiki/Strelka_(dog)#Belka_and_Strelka] who was
|
318
|
-
one of the first canine space travelers to orbit the Earth and return alive.
|
319
|
-
Her name means "little arrow".
|
266
|
+
version: '1.4'
|
267
|
+
- - ">="
|
268
|
+
- !ruby/object:Gem::Version
|
269
|
+
version: 1.4.2
|
270
|
+
description: Strelka is a framework for creating and deploying Mongrel2[http://mongrel2.org/]
|
271
|
+
web applications in Ruby.
|
320
272
|
email:
|
321
273
|
- mahlon@martini.nu
|
322
|
-
- ged@
|
323
|
-
executables:
|
324
|
-
- strelka
|
274
|
+
- ged@faeriemud.org
|
275
|
+
executables: []
|
325
276
|
extensions: []
|
326
|
-
extra_rdoc_files:
|
327
|
-
- Deploying.rdoc
|
328
|
-
- History.rdoc
|
329
|
-
- IDEAS.rdoc
|
330
|
-
- MILESTONES.rdoc
|
331
|
-
- Manifest.txt
|
332
|
-
- Plugins.rdoc
|
333
|
-
- README.rdoc
|
334
|
-
- Tutorial.rdoc
|
277
|
+
extra_rdoc_files: []
|
335
278
|
files:
|
336
|
-
- ".gemtest"
|
337
|
-
- ChangeLog
|
338
279
|
- Deploying.rdoc
|
339
280
|
- History.rdoc
|
340
281
|
- IDEAS.rdoc
|
341
|
-
- MILESTONES.rdoc
|
342
|
-
- Manifest.txt
|
343
282
|
- Plugins.rdoc
|
344
283
|
- README.rdoc
|
345
284
|
- Rakefile
|
346
285
|
- Tutorial.rdoc
|
347
286
|
- bin/strelka
|
348
|
-
- contrib/hoetemplate/History.rdoc.erb
|
349
|
-
- contrib/hoetemplate/Manifest.txt.erb
|
350
|
-
- contrib/hoetemplate/README.rdoc.erb
|
351
|
-
- contrib/hoetemplate/Rakefile.erb
|
352
|
-
- contrib/hoetemplate/data/project/apps/file_name_app
|
353
|
-
- contrib/hoetemplate/data/project/templates/layout.tmpl.erb
|
354
|
-
- contrib/hoetemplate/data/project/templates/top.tmpl.erb
|
355
|
-
- contrib/hoetemplate/lib/file_name.rb.erb
|
356
|
-
- contrib/hoetemplate/spec/file_name_spec.rb.erb
|
357
|
-
- contrib/strelka-dogs/doggie6.svg
|
358
|
-
- contrib/strelka-dogs/doggie7.svg
|
359
|
-
- examples/Procfile
|
360
|
-
- examples/apps/auth-demo
|
361
|
-
- examples/apps/auth-demo2
|
362
|
-
- examples/apps/hello-world
|
363
|
-
- examples/apps/sessions-demo
|
364
|
-
- examples/apps/upload-demo
|
365
|
-
- examples/apps/ws-chat
|
366
|
-
- examples/apps/ws-echo
|
367
|
-
- examples/config.yml
|
368
|
-
- examples/gen-config.rb
|
369
|
-
- examples/static/examples.css
|
370
|
-
- examples/static/examples.html
|
371
|
-
- examples/strelka.conf.example
|
372
|
-
- examples/templates/auth-form.tmpl
|
373
|
-
- examples/templates/auth-success.tmpl
|
374
|
-
- examples/templates/layout.tmpl
|
375
|
-
- examples/templates/upload-form.tmpl
|
376
|
-
- examples/templates/upload-success.tmpl
|
377
287
|
- lib/strelka.rb
|
378
288
|
- lib/strelka/app.rb
|
379
289
|
- lib/strelka/app/auth.rb
|
@@ -477,30 +387,28 @@ files:
|
|
477
387
|
- spec/strelka/websocketserver/routing_spec.rb
|
478
388
|
- spec/strelka/websocketserver_spec.rb
|
479
389
|
- spec/strelka_spec.rb
|
480
|
-
homepage:
|
390
|
+
homepage: https://hg.sr.ht/~ged/Strelka
|
481
391
|
licenses:
|
482
|
-
- BSD
|
392
|
+
- BSD-3-Clause
|
483
393
|
metadata: {}
|
484
394
|
post_install_message:
|
485
|
-
rdoc_options:
|
486
|
-
- "--main"
|
487
|
-
- README.rdoc
|
395
|
+
rdoc_options: []
|
488
396
|
require_paths:
|
489
397
|
- lib
|
490
398
|
required_ruby_version: !ruby/object:Gem::Requirement
|
491
399
|
requirements:
|
492
400
|
- - ">="
|
493
401
|
- !ruby/object:Gem::Version
|
494
|
-
version:
|
402
|
+
version: '0'
|
495
403
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
496
404
|
requirements:
|
497
405
|
- - ">="
|
498
406
|
- !ruby/object:Gem::Version
|
499
407
|
version: '0'
|
500
408
|
requirements: []
|
501
|
-
rubygems_version: 3.
|
409
|
+
rubygems_version: 3.1.2
|
502
410
|
signing_key:
|
503
411
|
specification_version: 4
|
504
412
|
summary: Strelka is a framework for creating and deploying Mongrel2[http://mongrel2.org/]
|
505
|
-
web applications in Ruby
|
413
|
+
web applications in Ruby.
|
506
414
|
test_files: []
|