strelka 0.0.1pre4 → 0.0.1.pre129

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 (73) hide show
  1. data/History.rdoc +1 -1
  2. data/IDEAS.rdoc +62 -0
  3. data/Manifest.txt +38 -7
  4. data/README.rdoc +124 -5
  5. data/Rakefile +22 -6
  6. data/bin/leash +102 -157
  7. data/contrib/hoetemplate/.autotest.erb +23 -0
  8. data/contrib/hoetemplate/History.rdoc.erb +4 -0
  9. data/contrib/hoetemplate/Manifest.txt.erb +8 -0
  10. data/contrib/hoetemplate/README.rdoc.erb +17 -0
  11. data/contrib/hoetemplate/Rakefile.erb +24 -0
  12. data/contrib/hoetemplate/data/file_name/apps/file_name_app +36 -0
  13. data/contrib/hoetemplate/data/file_name/templates/layout.tmpl.erb +13 -0
  14. data/contrib/hoetemplate/data/file_name/templates/top.tmpl.erb +8 -0
  15. data/contrib/hoetemplate/lib/file_name.rb.erb +18 -0
  16. data/contrib/hoetemplate/spec/file_name_spec.rb.erb +21 -0
  17. data/data/strelka/apps/hello-world +30 -0
  18. data/lib/strelka/app/defaultrouter.rb +49 -30
  19. data/lib/strelka/app/errors.rb +121 -0
  20. data/lib/strelka/app/exclusiverouter.rb +40 -0
  21. data/lib/strelka/app/filters.rb +18 -7
  22. data/lib/strelka/app/negotiation.rb +122 -0
  23. data/lib/strelka/app/parameters.rb +171 -14
  24. data/lib/strelka/app/paramvalidator.rb +751 -0
  25. data/lib/strelka/app/plugins.rb +66 -46
  26. data/lib/strelka/app/restresources.rb +499 -0
  27. data/lib/strelka/app/router.rb +73 -0
  28. data/lib/strelka/app/routing.rb +140 -18
  29. data/lib/strelka/app/templating.rb +12 -3
  30. data/lib/strelka/app.rb +174 -24
  31. data/lib/strelka/constants.rb +0 -20
  32. data/lib/strelka/exceptions.rb +29 -0
  33. data/lib/strelka/httprequest/acceptparams.rb +377 -0
  34. data/lib/strelka/httprequest/negotiation.rb +257 -0
  35. data/lib/strelka/httprequest.rb +155 -7
  36. data/lib/strelka/httpresponse/negotiation.rb +579 -0
  37. data/lib/strelka/httpresponse.rb +140 -0
  38. data/lib/strelka/logging.rb +4 -1
  39. data/lib/strelka/mixins.rb +53 -0
  40. data/lib/strelka.rb +22 -1
  41. data/spec/data/error.tmpl +1 -0
  42. data/spec/lib/constants.rb +0 -1
  43. data/spec/lib/helpers.rb +21 -0
  44. data/spec/strelka/app/defaultrouter_spec.rb +41 -35
  45. data/spec/strelka/app/errors_spec.rb +212 -0
  46. data/spec/strelka/app/exclusiverouter_spec.rb +220 -0
  47. data/spec/strelka/app/filters_spec.rb +196 -0
  48. data/spec/strelka/app/negotiation_spec.rb +73 -0
  49. data/spec/strelka/app/parameters_spec.rb +149 -0
  50. data/spec/strelka/app/paramvalidator_spec.rb +1059 -0
  51. data/spec/strelka/app/plugins_spec.rb +26 -19
  52. data/spec/strelka/app/restresources_spec.rb +393 -0
  53. data/spec/strelka/app/router_spec.rb +63 -0
  54. data/spec/strelka/app/routing_spec.rb +183 -9
  55. data/spec/strelka/app/templating_spec.rb +1 -2
  56. data/spec/strelka/app_spec.rb +265 -32
  57. data/spec/strelka/exceptions_spec.rb +53 -0
  58. data/spec/strelka/httprequest/acceptparams_spec.rb +282 -0
  59. data/spec/strelka/httprequest/negotiation_spec.rb +246 -0
  60. data/spec/strelka/httprequest_spec.rb +204 -14
  61. data/spec/strelka/httpresponse/negotiation_spec.rb +464 -0
  62. data/spec/strelka/httpresponse_spec.rb +114 -0
  63. data/spec/strelka/mixins_spec.rb +99 -0
  64. data.tar.gz.sig +1 -0
  65. metadata +175 -79
  66. metadata.gz.sig +2 -0
  67. data/IDEAS.textile +0 -174
  68. data/data/strelka/apps/strelka-admin +0 -65
  69. data/data/strelka/apps/strelka-setup +0 -26
  70. data/data/strelka/bootstrap-config.rb +0 -34
  71. data/data/strelka/templates/admin/console.tmpl +0 -21
  72. data/data/strelka/templates/layout.tmpl +0 -30
  73. data/lib/strelka/process.rb +0 -19
@@ -0,0 +1,114 @@
1
+ #!/usr/bin/env ruby
2
+ #encoding: utf-8
3
+
4
+ BEGIN {
5
+ require 'pathname'
6
+ basedir = Pathname.new( __FILE__ ).dirname.parent.parent
7
+
8
+ $LOAD_PATH.unshift( basedir ) unless $LOAD_PATH.include?( basedir )
9
+ }
10
+
11
+ require 'rspec'
12
+ require 'spec/lib/helpers'
13
+ require 'strelka/httpresponse'
14
+
15
+
16
+ #####################################################################
17
+ ### C O N T E X T S
18
+ #####################################################################
19
+
20
+ describe Strelka::HTTPResponse do
21
+
22
+ before( :all ) do
23
+ setup_logging( :fatal )
24
+ @request_factory = Mongrel2::RequestFactory.new( route: '/glossary' )
25
+ end
26
+
27
+ before( :each ) do
28
+ @res = @request_factory.get( '/glossary/reduct' ).response
29
+ end
30
+
31
+ after( :all ) do
32
+ reset_logging()
33
+ end
34
+
35
+
36
+ it "adds a charset to the response's content-type header if one is explicitly set" do
37
+ @res.content_type = 'text/html'
38
+ @res.charset = Encoding::UTF_8
39
+
40
+ @res.header_data.should =~ %r{Content-type: text/html; charset=UTF-8}i
41
+ end
42
+
43
+ it "replaces the existing content-type header charset if one is explicitly set" do
44
+ @res.content_type = 'text/html; charset=iso-8859-1'
45
+ @res.charset = Encoding::UTF_8
46
+
47
+ @res.header_data.should =~ /charset=UTF-8/i
48
+ @res.header_data.should_not =~ /charset=iso-8859-1/
49
+ end
50
+
51
+ it "adds a charset to the response's content-type header based on the entity body's encoding " +
52
+ "if there isn't already one set on the request or the header" do
53
+ @res.body = "Стрелке".encode( 'koi8-r' )
54
+ @res.content_type = 'text/plain'
55
+
56
+ @res.header_data.should =~ /charset=koi8-r/i
57
+ end
58
+
59
+ it "adds a charset to the response's content-type header based on the entity body's " +
60
+ "external encoding if there isn't already one set on the request or the header" do
61
+ @res.body = File.open( __FILE__, 'r:iso-8859-5' )
62
+ @res.content_type = 'text/plain'
63
+
64
+ @res.header_data.should =~ /charset=iso-8859-5/i
65
+ end
66
+
67
+ it "doesn't replace a charset in the content-type header with one based on the entity body" do
68
+ @res.body = "Стрелке".encode( 'iso-8859-5' )
69
+ @res.content_type = 'text/plain; charset=utf-8'
70
+
71
+ @res.header_data.should_not =~ /charset=iso-8859-5/i
72
+ @res.header_data.should =~ /charset=utf-8/i
73
+ end
74
+
75
+ it "doesn't add a charset to the response's content-type header if it's explicitly set " +
76
+ "to ASCII-8BIT" do
77
+ @res.content_type = 'text/plain'
78
+ @res.charset = Encoding::ASCII_8BIT
79
+
80
+ @res.header_data.should_not =~ /charset/i
81
+ end
82
+
83
+ it "strips an existing charset from the response's content-type header if it's explicitly " +
84
+ "set to ASCII-8BIT" do
85
+ @res.content_type = 'text/plain; charset=ISO-8859-15'
86
+ @res.charset = Encoding::ASCII_8BIT
87
+
88
+ @res.header_data.should_not =~ /charset/i
89
+ end
90
+
91
+
92
+ it "adds a Content-encoding header if there is one encoding" do
93
+ @res.encodings << 'gzip'
94
+ @res.header_data.should =~ /content-encoding: gzip\s*$/i
95
+ end
96
+
97
+ it "adds a Content-encoding header if there is more than one encoding" do
98
+ @res.encodings << 'gzip' << 'compress'
99
+ @res.header_data.should =~ /content-encoding: gzip, compress\s*$/i
100
+ end
101
+
102
+
103
+ it "adds a Content-language header if there is one language" do
104
+ @res.languages << 'de'
105
+ @res.header_data.should =~ /content-language: de\s*$/i
106
+ end
107
+
108
+ it "adds a Content-language header if there is more than one language" do
109
+ @res.languages << 'en' << 'sv-chef'
110
+ @res.header_data.should =~ /content-language: en, sv-chef\s*$/i
111
+ end
112
+
113
+ end
114
+
@@ -0,0 +1,99 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ BEGIN {
4
+ require 'pathname'
5
+ basedir = Pathname.new( __FILE__ ).dirname.parent.parent
6
+ $LOAD_PATH.unshift( basedir ) unless $LOAD_PATH.include?( basedir )
7
+ }
8
+
9
+ require 'rspec'
10
+ require 'spec/lib/helpers'
11
+ require 'strelka/mixins'
12
+
13
+
14
+ #####################################################################
15
+ ### C O N T E X T S
16
+ #####################################################################
17
+
18
+ describe Strelka, "mixins" do
19
+
20
+
21
+ describe Strelka::Loggable do
22
+ before(:each) do
23
+ @logfile = StringIO.new('')
24
+ Strelka.logger = Logger.new( @logfile )
25
+
26
+ @test_class = Class.new do
27
+ include Strelka::Loggable
28
+
29
+ def log_test_message( level, msg )
30
+ self.log.send( level, msg )
31
+ end
32
+
33
+ def logdebug_test_message( msg )
34
+ self.log_debug.debug( msg )
35
+ end
36
+ end
37
+ @obj = @test_class.new
38
+ end
39
+
40
+
41
+ it "is able to output to the log via its #log method" do
42
+ @obj.log_test_message( :debug, "debugging message" )
43
+ @logfile.rewind
44
+ @logfile.read.should =~ /debugging message/
45
+ end
46
+
47
+ it "is able to output to the log via its #log_debug method" do
48
+ @obj.logdebug_test_message( "sexydrownwatch" )
49
+ @logfile.rewind
50
+ @logfile.read.should =~ /sexydrownwatch/
51
+ end
52
+ end
53
+
54
+
55
+ describe Strelka::AbstractClass do
56
+
57
+ context "mixed into a class" do
58
+ it "will cause the including class to hide its ::new method" do
59
+ testclass = Class.new { include Strelka::AbstractClass }
60
+
61
+ expect {
62
+ testclass.new
63
+ }.to raise_error( NoMethodError, /private/ )
64
+ end
65
+
66
+ end
67
+
68
+
69
+ context "mixed into a superclass" do
70
+
71
+ before(:each) do
72
+ testclass = Class.new {
73
+ include Strelka::AbstractClass
74
+ pure_virtual :test_method
75
+ }
76
+ subclass = Class.new( testclass )
77
+ @instance = subclass.new
78
+ end
79
+
80
+
81
+ it "raises a NotImplementedError when unimplemented API methods are called" do
82
+ expect {
83
+ @instance.test_method
84
+ }.to raise_error( NotImplementedError, /does not provide an implementation of/ )
85
+ end
86
+
87
+ it "declares the virtual methods so that they can be used with arguments under Ruby 1.9" do
88
+ expect {
89
+ @instance.test_method( :some, :arguments )
90
+ }.to raise_error( NotImplementedError, /does not provide an implementation of/ )
91
+ end
92
+
93
+ end
94
+
95
+ end
96
+
97
+
98
+ end
99
+
data.tar.gz.sig ADDED
@@ -0,0 +1 @@
1
+ L:HH0�ˢ���3Z��g�'Ĕ<\G��W���T+�x � �4�ɼFm+���s.��O%�,_`�
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.0.1pre4
4
+ version: 0.0.1.pre129
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,61 +9,49 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain:
12
- - ! '-----BEGIN CERTIFICATE-----
13
-
14
- MIIDLDCCAhSgAwIBAgIBADANBgkqhkiG9w0BAQUFADA8MQwwCgYDVQQDDANnZWQx
15
-
16
- FzAVBgoJkiaJk/IsZAEZFgdfYWVyaWVfMRMwEQYKCZImiZPyLGQBGRYDb3JnMB4X
17
-
18
- DTEwMDkxNjE0NDg1MVoXDTExMDkxNjE0NDg1MVowPDEMMAoGA1UEAwwDZ2VkMRcw
19
-
20
- FQYKCZImiZPyLGQBGRYHX2FlcmllXzETMBEGCgmSJomT8ixkARkWA29yZzCCASIw
21
-
22
- DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALy//BFxC1f/cPSnwtJBWoFiFrir
23
-
24
- h7RicI+joq/ocVXQqI4TDWPyF/8tqkvt+rD99X9qs2YeR8CU/YiIpLWrQOYST70J
25
-
26
- vDn7Uvhb2muFVqq6+vobeTkILBEO6pionWDG8jSbo3qKm1RjKJDwg9p4wNKhPuu8
27
-
28
- KGue/BFb67KflqyApPmPeb3Vdd9clspzqeFqp7cUBMEpFS6LWxy4Gk+qvFFJBJLB
29
-
30
- BUHE/LZVJMVzfpC5Uq+QmY7B+FH/QqNndn3tOHgsPadLTNimuB1sCuL1a4z3Pepd
31
-
32
- TeLBEFmEao5Dk3K/Q8o8vlbIB/jBDTUx6Djbgxw77909x6gI9doU4LD5XMcCAwEA
33
-
34
- AaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFJeoGkOr9l4B
35
-
36
- +saMkW/ZXT4UeSvVMA0GCSqGSIb3DQEBBQUAA4IBAQBG2KObvYI2eHyyBUJSJ3jN
37
-
38
- vEnU3d60znAXbrSd2qb3r1lY1EPDD3bcy0MggCfGdg3Xu54z21oqyIdk8uGtWBPL
39
-
40
- HIa9EgfFGSUEgvcIvaYqiN4jTUtidfEFw+Ltjs8AP9gWgSIYS6Gr38V0WGFFNzIH
41
-
42
- aOD2wmu9oo/RffW4hS/8GuvfMzcw7CQ355wFR4KB/nyze+EsZ1Y5DerCAagMVuDQ
43
-
44
- U0BLmWDFzPGGWlPeQCrYHCr+AcJz+NRnaHCKLZdSKj/RHuTOt+gblRex8FAh8NeA
45
-
46
- cmlhXe46pZNJgWKbxZah85jIjx95hR8vOI+NAM5iH9kOqK13DrxacTKPhqj5PjwF
47
-
48
- -----END CERTIFICATE-----
49
-
50
- '
51
- date: 2011-09-24 00:00:00.000000000Z
12
+ - !binary |-
13
+ LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURMRENDQWhTZ0F3SUJB
14
+ Z0lCQURBTkJna3Foa2lHOXcwQkFRVUZBREE4TVF3d0NnWURWUVFEREFOblpX
15
+ UXgKRnpBVkJnb0praWFKay9Jc1pBRVpGZ2RmWVdWeWFXVmZNUk13RVFZS0Na
16
+ SW1pWlB5TEdRQkdSWURiM0puTUI0WApEVEV3TURreE5qRTBORGcxTVZvWERU
17
+ RXhNRGt4TmpFME5EZzFNVm93UERFTU1Bb0dBMVVFQXd3RFoyVmtNUmN3CkZR
18
+ WUtDWkltaVpQeUxHUUJHUllIWDJGbGNtbGxYekVUTUJFR0NnbVNKb21UOGl4
19
+ a0FSa1dBMjl5WnpDQ0FTSXcKRFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURD
20
+ Q0FRb0NnZ0VCQUx5Ly9CRnhDMWYvY1BTbnd0SkJXb0ZpRnJpcgpoN1JpY0kr
21
+ am9xL29jVlhRcUk0VERXUHlGLzh0cWt2dCtyRDk5WDlxczJZZVI4Q1UvWWlJ
22
+ cExXclFPWVNUNzBKCnZEbjdVdmhiMm11RlZxcTYrdm9iZVRrSUxCRU82cGlv
23
+ bldERzhqU2JvM3FLbTFSaktKRHdnOXA0d05LaFB1dTgKS0d1ZS9CRmI2N0tm
24
+ bHF5QXBQbVBlYjNWZGQ5Y2xzcHpxZUZxcDdjVUJNRXBGUzZMV3h5NEdrK3F2
25
+ RkZKQkpMQgpCVUhFL0xaVkpNVnpmcEM1VXErUW1ZN0IrRkgvUXFObmRuM3RP
26
+ SGdzUGFkTFROaW11QjFzQ3VMMWE0ejNQZXBkClRlTEJFRm1FYW81RGszSy9R
27
+ OG84dmxiSUIvakJEVFV4NkRqYmd4dzc3OTA5eDZnSTlkb1U0TEQ1WE1jQ0F3
28
+ RUEKQWFNNU1EY3dDUVlEVlIwVEJBSXdBREFMQmdOVkhROEVCQU1DQkxBd0hR
29
+ WURWUjBPQkJZRUZKZW9Ha09yOWw0Qgorc2FNa1cvWlhUNFVlU3ZWTUEwR0NT
30
+ cUdTSWIzRFFFQkJRVUFBNElCQVFCRzJLT2J2WUkyZUh5eUJVSlNKM2pOCnZF
31
+ blUzZDYwem5BWGJyU2QycWIzcjFsWTFFUEREM2JjeTBNZ2dDZkdkZzNYdTU0
32
+ ejIxb3F5SWRrOHVHdFdCUEwKSElhOUVnZkZHU1VFZ3ZjSXZhWXFpTjRqVFV0
33
+ aWRmRUZ3K0x0anM4QVA5Z1dnU0lZUzZHcjM4VjBXR0ZGTnpJSAphT0Qyd211
34
+ OW9vL1JmZlc0aFMvOEd1dmZNemN3N0NRMzU1d0ZSNEtCL255emUrRXNaMVk1
35
+ RGVyQ0FhZ01WdURRClUwQkxtV0RGelBHR1dsUGVRQ3JZSENyK0FjSnorTlJu
36
+ YUhDS0xaZFNLai9SSHVUT3QrZ2JsUmV4OEZBaDhOZUEKY21saFhlNDZwWk5K
37
+ Z1dLYnhaYWg4NWpJang5NWhSOHZPSStOQU01aUg5a09xSzEzRHJ4YWNUS1Bo
38
+ cWo1UGp3RgotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
39
+ date: 2012-03-02 00:00:00.000000000 Z
52
40
  dependencies:
53
41
  - !ruby/object:Gem::Dependency
54
42
  name: mongrel2
55
- requirement: &2157422980 !ruby/object:Gem::Requirement
43
+ requirement: &70261199645720 !ruby/object:Gem::Requirement
56
44
  none: false
57
45
  requirements:
58
46
  - - ~>
59
47
  - !ruby/object:Gem::Version
60
- version: 0.2.3
48
+ version: '0.15'
61
49
  type: :runtime
62
50
  prerelease: false
63
- version_requirements: *2157422980
51
+ version_requirements: *70261199645720
64
52
  - !ruby/object:Gem::Dependency
65
53
  name: configurability
66
- requirement: &2157422160 !ruby/object:Gem::Requirement
54
+ requirement: &70261199645180 !ruby/object:Gem::Requirement
67
55
  none: false
68
56
  requirements:
69
57
  - - ~>
@@ -71,54 +59,120 @@ dependencies:
71
59
  version: '1.0'
72
60
  type: :runtime
73
61
  prerelease: false
74
- version_requirements: *2157422160
62
+ version_requirements: *70261199645180
75
63
  - !ruby/object:Gem::Dependency
76
64
  name: inversion
77
- requirement: &2157421540 !ruby/object:Gem::Requirement
65
+ requirement: &70261199644720 !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ~>
69
+ - !ruby/object:Gem::Version
70
+ version: '0.2'
71
+ type: :runtime
72
+ prerelease: false
73
+ version_requirements: *70261199644720
74
+ - !ruby/object:Gem::Dependency
75
+ name: trollop
76
+ requirement: &70261199644080 !ruby/object:Gem::Requirement
77
+ none: false
78
+ requirements:
79
+ - - ~>
80
+ - !ruby/object:Gem::Version
81
+ version: '1.16'
82
+ type: :runtime
83
+ prerelease: false
84
+ version_requirements: *70261199644080
85
+ - !ruby/object:Gem::Dependency
86
+ name: highline
87
+ requirement: &70261199643540 !ruby/object:Gem::Requirement
88
+ none: false
89
+ requirements:
90
+ - - ~>
91
+ - !ruby/object:Gem::Version
92
+ version: '1.6'
93
+ type: :runtime
94
+ prerelease: false
95
+ version_requirements: *70261199643540
96
+ - !ruby/object:Gem::Dependency
97
+ name: formvalidator
98
+ requirement: &70261199643100 !ruby/object:Gem::Requirement
99
+ none: false
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 0.1.5
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: *70261199643100
107
+ - !ruby/object:Gem::Dependency
108
+ name: uuidtools
109
+ requirement: &70261199642580 !ruby/object:Gem::Requirement
110
+ none: false
111
+ requirements:
112
+ - - ~>
113
+ - !ruby/object:Gem::Version
114
+ version: 2.1.2
115
+ type: :runtime
116
+ prerelease: false
117
+ version_requirements: *70261199642580
118
+ - !ruby/object:Gem::Dependency
119
+ name: sysexits
120
+ requirement: &70261199641900 !ruby/object:Gem::Requirement
78
121
  none: false
79
122
  requirements:
80
123
  - - ~>
81
124
  - !ruby/object:Gem::Version
82
- version: '0.1'
125
+ version: '1.0'
83
126
  type: :runtime
84
127
  prerelease: false
85
- version_requirements: *2157421540
128
+ version_requirements: *70261199641900
129
+ - !ruby/object:Gem::Dependency
130
+ name: pluginfactory
131
+ requirement: &70261199641240 !ruby/object:Gem::Requirement
132
+ none: false
133
+ requirements:
134
+ - - ~>
135
+ - !ruby/object:Gem::Version
136
+ version: '1.0'
137
+ type: :runtime
138
+ prerelease: false
139
+ version_requirements: *70261199641240
86
140
  - !ruby/object:Gem::Dependency
87
141
  name: hoe-mercurial
88
- requirement: &2157420920 !ruby/object:Gem::Requirement
142
+ requirement: &70261199640460 !ruby/object:Gem::Requirement
89
143
  none: false
90
144
  requirements:
91
145
  - - ~>
92
146
  - !ruby/object:Gem::Version
93
- version: 1.3.0
147
+ version: 1.3.1
94
148
  type: :development
95
149
  prerelease: false
96
- version_requirements: *2157420920
150
+ version_requirements: *70261199640460
97
151
  - !ruby/object:Gem::Dependency
98
- name: hoe-highline
99
- requirement: &2157419980 !ruby/object:Gem::Requirement
152
+ name: hoe-manualgen
153
+ requirement: &70261199639200 !ruby/object:Gem::Requirement
100
154
  none: false
101
155
  requirements:
102
156
  - - ~>
103
157
  - !ruby/object:Gem::Version
104
- version: 0.0.1
158
+ version: 0.2.0
105
159
  type: :development
106
160
  prerelease: false
107
- version_requirements: *2157419980
161
+ version_requirements: *70261199639200
108
162
  - !ruby/object:Gem::Dependency
109
- name: tilt
110
- requirement: &2157419140 !ruby/object:Gem::Requirement
163
+ name: hoe-highline
164
+ requirement: &70261199654360 !ruby/object:Gem::Requirement
111
165
  none: false
112
166
  requirements:
113
167
  - - ~>
114
168
  - !ruby/object:Gem::Version
115
- version: '1.3'
169
+ version: 0.0.1
116
170
  type: :development
117
171
  prerelease: false
118
- version_requirements: *2157419140
172
+ version_requirements: *70261199654360
119
173
  - !ruby/object:Gem::Dependency
120
174
  name: rspec
121
- requirement: &2157418320 !ruby/object:Gem::Requirement
175
+ requirement: &70261199653800 !ruby/object:Gem::Requirement
122
176
  none: false
123
177
  requirements:
124
178
  - - ~>
@@ -126,24 +180,35 @@ dependencies:
126
180
  version: '2.6'
127
181
  type: :development
128
182
  prerelease: false
129
- version_requirements: *2157418320
183
+ version_requirements: *70261199653800
184
+ - !ruby/object:Gem::Dependency
185
+ name: rdoc
186
+ requirement: &70261199653300 !ruby/object:Gem::Requirement
187
+ none: false
188
+ requirements:
189
+ - - ~>
190
+ - !ruby/object:Gem::Version
191
+ version: '3.10'
192
+ type: :development
193
+ prerelease: false
194
+ version_requirements: *70261199653300
130
195
  - !ruby/object:Gem::Dependency
131
196
  name: hoe
132
- requirement: &2157417400 !ruby/object:Gem::Requirement
197
+ requirement: &70261199652840 !ruby/object:Gem::Requirement
133
198
  none: false
134
199
  requirements:
135
200
  - - ~>
136
201
  - !ruby/object:Gem::Version
137
- version: '2.12'
202
+ version: '2.13'
138
203
  type: :development
139
204
  prerelease: false
140
- version_requirements: *2157417400
205
+ version_requirements: *70261199652840
141
206
  description: ! 'Strelka is a framework for creating and deploying Mongrel2 web applications
142
207
 
143
- in Ruby. It''s still pre-alpha.
208
+ in Ruby, and for managing a Mongrel2 cluster.
144
209
 
145
210
 
146
- Strelka is named after a Russian dog who was one of the first space travelers
211
+ It''s named after the Russian dog who was one of the first space travelers
147
212
 
148
213
  to orbit the Earth and return alive.'
149
214
  email:
@@ -153,48 +218,79 @@ executables:
153
218
  extensions: []
154
219
  extra_rdoc_files:
155
220
  - Manifest.txt
156
- - README.rdoc
157
221
  - History.rdoc
222
+ - IDEAS.rdoc
223
+ - README.rdoc
158
224
  files:
225
+ - .gemtest
159
226
  - History.rdoc
160
- - IDEAS.textile
227
+ - IDEAS.rdoc
161
228
  - Manifest.txt
162
229
  - README.rdoc
163
230
  - Rakefile
164
231
  - bin/leash
165
- - data/strelka/apps/strelka-admin
166
- - data/strelka/apps/strelka-setup
167
- - data/strelka/bootstrap-config.rb
168
- - data/strelka/templates/admin/console.tmpl
169
- - data/strelka/templates/layout.tmpl
232
+ - contrib/hoetemplate/.autotest.erb
233
+ - contrib/hoetemplate/History.rdoc.erb
234
+ - contrib/hoetemplate/Manifest.txt.erb
235
+ - contrib/hoetemplate/README.rdoc.erb
236
+ - contrib/hoetemplate/Rakefile.erb
237
+ - contrib/hoetemplate/data/file_name/apps/file_name_app
238
+ - contrib/hoetemplate/data/file_name/templates/layout.tmpl.erb
239
+ - contrib/hoetemplate/data/file_name/templates/top.tmpl.erb
240
+ - contrib/hoetemplate/lib/file_name.rb.erb
241
+ - contrib/hoetemplate/spec/file_name_spec.rb.erb
242
+ - data/strelka/apps/hello-world
170
243
  - lib/strelka.rb
171
244
  - lib/strelka/app.rb
172
245
  - lib/strelka/app/defaultrouter.rb
246
+ - lib/strelka/app/errors.rb
247
+ - lib/strelka/app/exclusiverouter.rb
173
248
  - lib/strelka/app/filters.rb
249
+ - lib/strelka/app/negotiation.rb
174
250
  - lib/strelka/app/parameters.rb
251
+ - lib/strelka/app/paramvalidator.rb
175
252
  - lib/strelka/app/plugins.rb
253
+ - lib/strelka/app/restresources.rb
254
+ - lib/strelka/app/router.rb
176
255
  - lib/strelka/app/routing.rb
177
256
  - lib/strelka/app/templating.rb
178
257
  - lib/strelka/behavior/plugin.rb
179
258
  - lib/strelka/constants.rb
259
+ - lib/strelka/exceptions.rb
180
260
  - lib/strelka/httprequest.rb
261
+ - lib/strelka/httprequest/acceptparams.rb
262
+ - lib/strelka/httprequest/negotiation.rb
263
+ - lib/strelka/httpresponse.rb
264
+ - lib/strelka/httpresponse/negotiation.rb
181
265
  - lib/strelka/logging.rb
182
266
  - lib/strelka/mixins.rb
183
- - lib/strelka/process.rb
267
+ - spec/data/error.tmpl
184
268
  - spec/data/layout.tmpl
185
269
  - spec/data/main.tmpl
186
270
  - spec/lib/constants.rb
187
271
  - spec/lib/helpers.rb
188
272
  - spec/strelka/app/defaultrouter_spec.rb
273
+ - spec/strelka/app/errors_spec.rb
274
+ - spec/strelka/app/exclusiverouter_spec.rb
275
+ - spec/strelka/app/filters_spec.rb
276
+ - spec/strelka/app/negotiation_spec.rb
189
277
  - spec/strelka/app/parameters_spec.rb
278
+ - spec/strelka/app/paramvalidator_spec.rb
190
279
  - spec/strelka/app/plugins_spec.rb
280
+ - spec/strelka/app/restresources_spec.rb
281
+ - spec/strelka/app/router_spec.rb
191
282
  - spec/strelka/app/routing_spec.rb
192
283
  - spec/strelka/app/templating_spec.rb
193
284
  - spec/strelka/app_spec.rb
285
+ - spec/strelka/exceptions_spec.rb
286
+ - spec/strelka/httprequest/acceptparams_spec.rb
287
+ - spec/strelka/httprequest/negotiation_spec.rb
194
288
  - spec/strelka/httprequest_spec.rb
289
+ - spec/strelka/httpresponse/negotiation_spec.rb
290
+ - spec/strelka/httpresponse_spec.rb
195
291
  - spec/strelka/logging_spec.rb
292
+ - spec/strelka/mixins_spec.rb
196
293
  - spec/strelka_spec.rb
197
- - .gemtest
198
294
  homepage: http://deveiate.org/projects/Strelka
199
295
  licenses:
200
296
  - BSD
@@ -209,7 +305,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
209
305
  requirements:
210
306
  - - ! '>='
211
307
  - !ruby/object:Gem::Version
212
- version: 1.8.7
308
+ version: 1.9.2
213
309
  required_rubygems_version: !ruby/object:Gem::Requirement
214
310
  none: false
215
311
  requirements:
@@ -218,9 +314,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
218
314
  version: '0'
219
315
  requirements: []
220
316
  rubyforge_project: strelka
221
- rubygems_version: 1.8.10
317
+ rubygems_version: 1.8.16
222
318
  signing_key:
223
319
  specification_version: 3
224
320
  summary: Strelka is a framework for creating and deploying Mongrel2 web applications
225
- in Ruby
321
+ in Ruby, and for managing a Mongrel2 cluster
226
322
  test_files: []
metadata.gz.sig ADDED
@@ -0,0 +1,2 @@
1
+ C��m�P�3�rK��vXl�*ʈ��=*�xTA
2
+ � ,L Nl�*�RD���b��HDI<,�Ԧ(�_1��iwz�4k{D�W�ޞ�yI������K�����^�+� �U�]�}{_��T� s��#q�k��_�h��\W���@��{Ѷ�k`�g���vjIl؏ �ᢳ;F��@rv�*_Zb+h�bdS��_�57a$�� ��!S�I`/��lN [��fQ��V������ER)-;���}�7C