merb 0.4.1 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. data/README +138 -56
  2. data/Rakefile +23 -8
  3. data/app_generators/merb/templates/Rakefile +13 -0
  4. data/app_generators/merb/templates/app/helpers/global_helper.rb +1 -1
  5. data/app_generators/merb/templates/app/views/exceptions/internal_server_error.html.erb +12 -3
  6. data/app_generators/merb/templates/config/merb.yml +14 -1
  7. data/app_generators/merb/templates/spec/spec_helper.rb +6 -0
  8. data/app_generators/merb/templates/test/test_helper.rb +1 -0
  9. data/lib/merb.rb +27 -7
  10. data/lib/merb/abstract_controller.rb +76 -36
  11. data/lib/merb/caching/store/memcache.rb +20 -0
  12. data/lib/merb/constants.rb +2 -4
  13. data/lib/merb/controller.rb +44 -2
  14. data/lib/merb/core_ext/get_args.rb +23 -4
  15. data/lib/merb/core_ext/hash.rb +16 -11
  16. data/lib/merb/core_ext/inflections.rb +1 -1
  17. data/lib/merb/core_ext/kernel.rb +106 -26
  18. data/lib/merb/core_ext/numeric.rb +1 -1
  19. data/lib/merb/core_ext/string.rb +10 -13
  20. data/lib/merb/dispatcher.rb +2 -2
  21. data/lib/merb/exceptions.rb +3 -1
  22. data/lib/merb/logger.rb +15 -6
  23. data/lib/merb/mail_controller.rb +18 -2
  24. data/lib/merb/mailer.rb +1 -1
  25. data/lib/merb/mixins/controller.rb +64 -228
  26. data/lib/merb/mixins/erubis_capture.rb +1 -1
  27. data/lib/merb/mixins/general_controller.rb +258 -0
  28. data/lib/merb/mixins/render.rb +45 -24
  29. data/lib/merb/mixins/responder.rb +89 -18
  30. data/lib/merb/mixins/view_context.rb +32 -5
  31. data/lib/merb/mixins/web_controller.rb +8 -1
  32. data/lib/merb/mongrel_handler.rb +27 -17
  33. data/lib/merb/part_controller.rb +10 -0
  34. data/lib/merb/request.rb +34 -14
  35. data/lib/merb/router.rb +77 -45
  36. data/lib/merb/server.rb +116 -72
  37. data/lib/merb/session/cookie_store.rb +14 -22
  38. data/lib/merb/session/mem_cache_session.rb +2 -2
  39. data/lib/merb/session/memory_session.rb +12 -1
  40. data/lib/merb/template/erubis.rb +31 -0
  41. data/lib/merb/template/haml.rb +4 -14
  42. data/lib/merb/template/xml_builder.rb +1 -1
  43. data/lib/merb/test/helper.rb +90 -18
  44. data/lib/merb/test/rspec.rb +145 -74
  45. data/lib/merb/version.rb +11 -0
  46. data/lib/merb/view_context.rb +3 -6
  47. data/lib/patch +69 -0
  48. data/lib/tasks/merb.rake +1 -1
  49. data/spec/fixtures/config/environments/environment_config_test.yml +1 -0
  50. data/spec/fixtures/controllers/render_spec_controllers.rb +63 -4
  51. data/spec/fixtures/views/examples/template_throw_content_without_block.html.erb +3 -0
  52. data/spec/fixtures/views/partials/_erubis.html.erb +1 -1
  53. data/spec/merb/abstract_controller_spec.rb +1 -0
  54. data/spec/merb/controller_filters_spec.rb +68 -3
  55. data/spec/merb/controller_spec.rb +35 -68
  56. data/spec/merb/cookie_store_spec.rb +7 -20
  57. data/spec/merb/core_ext_spec.rb +35 -1
  58. data/spec/merb/dispatch_spec.rb +8 -2
  59. data/spec/merb/generator_spec.rb +12 -4
  60. data/spec/merb/mail_controller_spec.rb +33 -0
  61. data/spec/merb/part_controller_spec.rb +33 -1
  62. data/spec/merb/render_spec.rb +74 -0
  63. data/spec/merb/request_spec.rb +43 -0
  64. data/spec/merb/responder_spec.rb +1 -0
  65. data/spec/merb/router_spec.rb +118 -13
  66. data/spec/merb/server_spec.rb +19 -0
  67. data/spec/merb/view_context_spec.rb +31 -3
  68. data/spec/spec_helper.rb +8 -0
  69. data/spec/spec_helpers/url_shared_behaviour.rb +112 -0
  70. metadata +124 -87
@@ -0,0 +1,19 @@
1
+ require File.dirname(__FILE__) + '/../spec_helper'
2
+
3
+ describe Merb::Server do
4
+ it "should apply environment from the command line option --environment" do
5
+ options = Merb::Server.merb_config(["--environment", "performance_testing"])
6
+ options[:environment].should == "performance_testing"
7
+ end
8
+
9
+ it "should apply environment from the command line option -e" do
10
+ options = Merb::Server.merb_config(["-e", "selenium"])
11
+ options[:environment].should == "selenium"
12
+ end
13
+
14
+ it "should load the yaml file for the environment if it exists" do
15
+ options = Merb::Server.merb_config(["-e", "environment_config_test"])
16
+ options[:loaded_config_for_environment_config_test].should == true
17
+ end
18
+
19
+ end
@@ -14,6 +14,12 @@ describe "View Context", "image tag" do
14
14
  it "should render local image" do
15
15
  image_tag('foo.gif').clean.should == %[<img src="/images/foo.gif"/>].clean
16
16
  end
17
+
18
+ it "should render a local image with a path_prefix" do
19
+ Merb::Server.config[:path_prefix] = '/inky'
20
+ image_tag('foo.gif').clean.should == %[<img src="/inky/images/foo.gif"/>].clean
21
+ Merb::Server.config.delete(:path_prefix)
22
+ end
17
23
 
18
24
  it "should render local image with class" do
19
25
  image_tag('foo.gif', :class => 'bar').clean.should == %[<img src="/images/foo.gif" class="bar" />].clean
@@ -47,9 +53,18 @@ describe "View Context", "css tag" do
47
53
  css_include_tag('foo') +
48
54
  css_include_tag('bar')
49
55
  end
56
+
57
+ it "should render a link tag with a path_prefix" do
58
+ Merb::Server.config[:path_prefix] = '/inky'
59
+ css_include_tag('foo.css').clean.should ==
60
+ %[<link href="/inky/stylesheets/foo.css" media="all" rel="Stylesheet" type="text/css"/>].clean
61
+ Merb::Server.config.delete(:path_prefix)
62
+ end
63
+
50
64
  it "should not generate a script tag with the include_required_css" do
51
65
  include_required_css.clean.should == ''
52
- end
66
+ end
67
+
53
68
  it "should generate script tags with the include_required_css" do
54
69
  require_css('foo')
55
70
  require_css('bar')
@@ -71,9 +86,18 @@ describe "View Context", "script tag" do
71
86
  js_include_tag('foo') +
72
87
  js_include_tag('bar')
73
88
  end
89
+
90
+ it "should render a script tag with a path_prefix" do
91
+ Merb::Server.config[:path_prefix] = '/inky'
92
+ js_include_tag('foo.js').clean.should ==
93
+ %[<script src="/inky/javascripts/foo.js" type="text/javascript">//</script>].clean
94
+ Merb::Server.config.delete(:path_prefix)
95
+ end
96
+
74
97
  it "should not generate a script tag with the include_required_js" do
75
98
  include_required_js.clean.should == ''
76
- end
99
+ end
100
+
77
101
  it "should generate script tags with the include_required_js" do
78
102
  require_js('foo')
79
103
  require_js('bar')
@@ -115,8 +139,12 @@ describe "View Context", "throw_content, catch_content" do
115
139
  content = c.render :template => "examples/template_catch_content", :layout => :none
116
140
  content.should match( /\A\s*START HEADER\s*CAUGHT CONTENT\s*END HEADER\s*START FOOTER\s*CAUGHT FOOTER\s*END FOOTER\s*\Z/m)
117
141
  end
118
-
119
142
 
143
+ it "should throw content as an argument without a block" do
144
+ c = new_controller
145
+ content = c.render :template => "examples/template_throw_content_without_block", :layout => :none
146
+ content.should match(/Content Without Block/)
147
+ end
120
148
  end
121
149
 
122
150
  describe Merb::ViewContextMixin do
@@ -13,6 +13,13 @@ require 'merb/test/helper'
13
13
 
14
14
  FIXTURES = File.expand_path(File.join(File.dirname(__FILE__), 'fixtures'))
15
15
 
16
+ require File.join(File.dirname(__FILE__), "spec_helpers", "url_shared_behaviour")
17
+
18
+ Spec::Runner.configure do |config|
19
+ config.include(Merb::Test::Helper)
20
+ config.include(Merb::Test::RspecMatchers)
21
+ config.include(Merb::Test::MerbRspecControllerRedirect)
22
+ end
16
23
 
17
24
  # Creates a new controller, e.g.
18
25
  # c = new_controller('index', Examples) do |request|
@@ -36,6 +43,7 @@ class Merb::Controller
36
43
  require "lib/merb/session/memory_session"
37
44
  Merb::MemorySessionContainer.setup
38
45
  include ::Merb::SessionMixin
46
+ self.session_secret_key = "footo the bar to the baz"
39
47
  end
40
48
 
41
49
  class String
@@ -0,0 +1,112 @@
1
+ describe "class with general url generation", :shared => true do
2
+
3
+ before(:all) do
4
+ Merb::Router.prepare do |r|
5
+ @resource_routes = r.resources(:blogs)
6
+ r.resources(:gardens) do |gardens|
7
+ @nested_resource = gardens.resources :flowers
8
+ end
9
+ @test_route = r.match("/the/:place/:goes/here").to(:controller => "Test", :action => "show").name(:test)
10
+ @default_route = r.default_routes
11
+ end
12
+ end
13
+
14
+
15
+ it "should generate a url from a route using a hash" do
16
+ c = new_url_controller(@test_route, :place => "1")
17
+ c.url_from_route(@test_route, :goes => "g").should == "/the/1/g/here"
18
+ end
19
+
20
+ it "should generate a url from a route using an object" do
21
+ c = new_url_controller(@test_route, :place => "2")
22
+ obj = OpenStruct.new(:goes => "elsewhere")
23
+ c.url_from_route(@test_route, obj).should == "/the/2/elsewhere/here"
24
+ end
25
+
26
+ it "should generate a url and tack extra params on as a query string" do
27
+ c = new_url_controller(@test_route, :place => "1")
28
+ c.url_from_route(@test_route, :goes => "g", :page => 2).should == "/the/1/g/here?page=2"
29
+ end
30
+
31
+ it "should generate a url directly from a hash using the current route as a default" do
32
+ c = new_url_controller(@test_route, :goes => "swimmingly")
33
+ c.url(:place => "provo").should == "/the/provo/swimmingly/here"
34
+ end
35
+
36
+ it "should generate a default route url with just :controller" do
37
+ c = new_url_controller(@default_route)
38
+ c.url(:controller => "welcome").should == "/welcome"
39
+ end
40
+
41
+ it 'should generate urls from nested resources' do
42
+ c = new_url_controller(@nested_resource, :garden => 5)
43
+ c.url(:flower, :garden_id => 1, :id => 3).should == "/gardens/1/flowers/3"
44
+ end
45
+
46
+ # it "should generate a default route url with an extra param" do
47
+ # c = new_url_controller(@default_route, :controller => "foo", :action => "bar")
48
+ # c.url(:controller => :current, :monkey => "quux").should == "/foo/bar?monkey=quux"
49
+ # end
50
+
51
+ it "should generate a default route url with all options" do
52
+ c = new_url_controller(@default_route, :controller => "foo", :action => "bar")
53
+ c.url(:controller => "foo", :action => "bar", :id => "baz", :format => :js, :monkey => "quux").should == "/foo/bar/baz.js?monkey=quux"
54
+ end
55
+
56
+ it "should handle an object as the second arg" do
57
+ c = new_url_controller(@resource_routes, :controller => "blogs", :action => "show")
58
+ blog = mock("blog")
59
+ blog.should_receive(:id).once.and_return(7)
60
+ url = c.url(:blog, blog)
61
+ url.should == "/blogs/7"
62
+ end
63
+
64
+ it "should point to /blogs/:blog_id if @blog is not new_record" do
65
+ c = new_url_controller(@resource_routes, :controller => "blogs", :action => "index")
66
+ blog = mock("blog")
67
+ blog.should_receive(:id).once.and_return(7)
68
+ blog.should_receive(:new_record?).once.and_return(false)
69
+ url = c.url(:blog, blog)
70
+ url.should == "/blogs/7"
71
+ end
72
+
73
+ it "should point to /blogs/ if @blog is new_record" do
74
+ c = new_url_controller(@resource_routes, :controller => "blogs", :action => "index")
75
+ blog = mock("blog")
76
+ blog.should_receive(:new_record?).once.and_return(true)
77
+ url = c.url(:blog, blog)
78
+ url.should == "/blogs/"
79
+ end
80
+ end
81
+
82
+ describe "non routeable controller with url mixin", :shared => true do
83
+
84
+ before(:all) do
85
+ Merb::Router.prepare do |r|
86
+ @resource_routes = r.resources(:blogs)
87
+ r.resources(:gardens) do |gardens|
88
+ @nested_resource = gardens.resources :flowers
89
+ end
90
+ @test_route = r.match("/the/:place/:goes/here").to(:controller => "Test", :action => "show").name(:test)
91
+ @default_route = r.default_routes
92
+ end
93
+ end
94
+
95
+ it "should route when given a controller and an action" do
96
+ c = new_url_controller(@default_route, :controller => "blah")
97
+ the_url = c.url(:controller => "foo", :action => "bar")
98
+ the_url.should == "/foo/bar"
99
+ end
100
+
101
+ it "should generate a route when only a controller is given" do
102
+ c = new_url_controller(@default_route, :controller => "blah")
103
+ the_url = c.url(:controller => "foo")
104
+ the_url.should == "/foo"
105
+ end
106
+
107
+ it "should generate a route with controller action and extra options" do
108
+ c = new_url_controller(@default_route, :controller => "blah")
109
+ the_url = c.url(:controller => "foo", :action => "bar", :cool => "false")
110
+ the_url.should == "/foo/bar?cool=false"
111
+ end
112
+ end
metadata CHANGED
@@ -1,10 +1,10 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.2
2
+ rubygems_version: 0.9.4
3
3
  specification_version: 1
4
4
  name: merb
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.4.1
7
- date: 2007-11-12 00:00:00 -06:00
6
+ version: 0.4.2
7
+ date: 2007-12-14 00:00:00 -08:00
8
8
  summary: Merb == Mongrel + Erb. Pocket rocket web framework.
9
9
  require_paths:
10
10
  - lib
@@ -35,25 +35,20 @@ files:
35
35
  - TODO
36
36
  - bin/merb
37
37
  - spec/fixtures
38
- - spec/merb
39
- - spec/spec_generator_helper.rb
40
- - spec/spec_helper.rb
41
38
  - spec/fixtures/config
42
- - spec/fixtures/controllers
43
- - spec/fixtures/foo.rb
44
- - spec/fixtures/mailers
45
- - spec/fixtures/models
46
- - spec/fixtures/parts
47
- - spec/fixtures/sample.txt
48
- - spec/fixtures/views
39
+ - spec/fixtures/config/environments
40
+ - spec/fixtures/config/environments/environment_config_test.yml
49
41
  - spec/fixtures/config/merb.yml
42
+ - spec/fixtures/controllers
50
43
  - spec/fixtures/controllers/dispatch_spec_controllers.rb
51
44
  - spec/fixtures/controllers/render_spec_controllers.rb
45
+ - spec/fixtures/foo.rb
46
+ - spec/fixtures/mailers
52
47
  - spec/fixtures/mailers/views
53
48
  - spec/fixtures/mailers/views/layout
54
- - spec/fixtures/mailers/views/test_mail_controller
55
49
  - spec/fixtures/mailers/views/layout/application.html.erb
56
50
  - spec/fixtures/mailers/views/layout/application.text.erb
51
+ - spec/fixtures/mailers/views/test_mail_controller
57
52
  - spec/fixtures/mailers/views/test_mail_controller/eighth.html.erb
58
53
  - spec/fixtures/mailers/views/test_mail_controller/eighth.text.erb
59
54
  - spec/fixtures/mailers/views/test_mail_controller/first.html.erb
@@ -62,30 +57,23 @@ files:
62
57
  - spec/fixtures/mailers/views/test_mail_controller/ninth.text.erb
63
58
  - spec/fixtures/mailers/views/test_mail_controller/second.text.erb
64
59
  - spec/fixtures/mailers/views/test_mail_controller/third.html.erb
60
+ - spec/fixtures/models
65
61
  - spec/fixtures/models/router_spec_models.rb
62
+ - spec/fixtures/parts
66
63
  - spec/fixtures/parts/helpers
67
64
  - spec/fixtures/parts/views
68
65
  - spec/fixtures/parts/views/layout
69
- - spec/fixtures/parts/views/todo_part
70
66
  - spec/fixtures/parts/views/layout/todo_part.html.erb
71
67
  - spec/fixtures/parts/views/layout/todo_part.xml.erb
68
+ - spec/fixtures/parts/views/todo_part
72
69
  - spec/fixtures/parts/views/todo_part/formatted_output.html.erb
73
70
  - spec/fixtures/parts/views/todo_part/formatted_output.js.erb
74
71
  - spec/fixtures/parts/views/todo_part/formatted_output.xml.erb
75
72
  - spec/fixtures/parts/views/todo_part/list.html.erb
73
+ - spec/fixtures/sample.txt
74
+ - spec/fixtures/views
76
75
  - spec/fixtures/views/erubis.html.erb
77
76
  - spec/fixtures/views/examples
78
- - spec/fixtures/views/exceptions
79
- - spec/fixtures/views/extension_template_controller
80
- - spec/fixtures/views/haml.html.haml
81
- - spec/fixtures/views/haml.xml.haml
82
- - spec/fixtures/views/layout
83
- - spec/fixtures/views/markaby.html.mab
84
- - spec/fixtures/views/nested
85
- - spec/fixtures/views/partials
86
- - spec/fixtures/views/render_object_controller
87
- - spec/fixtures/views/template_views
88
- - spec/fixtures/views/test.dir
89
77
  - spec/fixtures/views/examples/_erubis.html.erb
90
78
  - spec/fixtures/views/examples/_haml.html.haml
91
79
  - spec/fixtures/views/examples/_markaby.html.mab
@@ -95,7 +83,10 @@ files:
95
83
  - spec/fixtures/views/examples/template_catch_content.html.erb
96
84
  - spec/fixtures/views/examples/template_catch_content_from_partial.html.erb
97
85
  - spec/fixtures/views/examples/template_throw_content.html.erb
86
+ - spec/fixtures/views/examples/template_throw_content_without_block.html.erb
87
+ - spec/fixtures/views/exceptions
98
88
  - spec/fixtures/views/exceptions/admin_access_required.html.erb
89
+ - spec/fixtures/views/extension_template_controller
99
90
  - spec/fixtures/views/extension_template_controller/_nested_js.js.erb
100
91
  - spec/fixtures/views/extension_template_controller/_nested_xml.xml.erb
101
92
  - spec/fixtures/views/extension_template_controller/_render_partial_multiple_times.html.erb
@@ -115,12 +106,18 @@ files:
115
106
  - spec/fixtures/views/extension_template_controller/render_multiple_partials.html.erb
116
107
  - spec/fixtures/views/extension_template_controller/render_nested_js.js.erb
117
108
  - spec/fixtures/views/extension_template_controller/render_nested_xml.xml.erb
109
+ - spec/fixtures/views/haml.html.haml
110
+ - spec/fixtures/views/haml.xml.haml
111
+ - spec/fixtures/views/layout
118
112
  - spec/fixtures/views/layout/application.html.erb
119
113
  - spec/fixtures/views/layout/application.xml.erb
120
114
  - spec/fixtures/views/layout/nested
121
115
  - spec/fixtures/views/layout/nested/example.html.erb
116
+ - spec/fixtures/views/markaby.html.mab
117
+ - spec/fixtures/views/nested
122
118
  - spec/fixtures/views/nested/example
123
119
  - spec/fixtures/views/nested/example/test.html.erb
120
+ - spec/fixtures/views/partials
124
121
  - spec/fixtures/views/partials/_erubis.html.erb
125
122
  - spec/fixtures/views/partials/_erubis_collection.html.erb
126
123
  - spec/fixtures/views/partials/_erubis_collection_with_locals.html.erb
@@ -133,9 +130,11 @@ files:
133
130
  - spec/fixtures/views/partials/_markaby_collection.html.mab
134
131
  - spec/fixtures/views/partials/_markaby_collection_with_locals.html.mab
135
132
  - spec/fixtures/views/partials/_markaby_new.html.mab
133
+ - spec/fixtures/views/render_object_controller
136
134
  - spec/fixtures/views/render_object_controller/render_object_with_template.html.erb
137
135
  - spec/fixtures/views/render_object_controller/render_object_with_template.js.erb
138
136
  - spec/fixtures/views/render_object_controller/render_object_with_template.xml.erb
137
+ - spec/fixtures/views/template_views
139
138
  - spec/fixtures/views/template_views/interface__buffer_erubis.html.erb
140
139
  - spec/fixtures/views/template_views/interface__buffer_haml.html.haml
141
140
  - spec/fixtures/views/template_views/interface__buffer_markaby.html.mab
@@ -145,7 +144,9 @@ files:
145
144
  - spec/fixtures/views/template_views/interface_concat_erubis.html.erb
146
145
  - spec/fixtures/views/template_views/interface_concat_haml.html.haml
147
146
  - spec/fixtures/views/template_views/interface_concat_markaby.html.mab
147
+ - spec/fixtures/views/test.dir
148
148
  - spec/fixtures/views/test.dir/the_template.html.erb
149
+ - spec/merb
149
150
  - spec/merb/abstract_controller_spec.rb
150
151
  - spec/merb/caching_spec.rb
151
152
  - spec/merb/config_spec.rb
@@ -167,52 +168,30 @@ files:
167
168
  - spec/merb/request_spec.rb
168
169
  - spec/merb/responder_spec.rb
169
170
  - spec/merb/router_spec.rb
171
+ - spec/merb/server_spec.rb
170
172
  - spec/merb/template_spec.rb
171
173
  - spec/merb/upload_handler_spec.rb
172
174
  - spec/merb/view_context_spec.rb
175
+ - spec/spec_generator_helper.rb
176
+ - spec/spec_helper.rb
177
+ - spec/spec_helpers
178
+ - spec/spec_helpers/url_shared_behaviour.rb
173
179
  - lib/autotest
174
- - lib/merb
175
- - lib/merb.rb
176
- - lib/tasks
177
- - lib/tasks.rb
178
180
  - lib/autotest/discover.rb
179
181
  - lib/autotest/merb_rspec.rb
182
+ - lib/merb
180
183
  - lib/merb/abstract_controller.rb
181
184
  - lib/merb/caching
182
- - lib/merb/caching.rb
183
- - lib/merb/constants.rb
184
- - lib/merb/controller.rb
185
- - lib/merb/core_ext
186
- - lib/merb/core_ext.rb
187
- - lib/merb/dispatcher.rb
188
- - lib/merb/drb_server.rb
189
- - lib/merb/erubis_ext.rb
190
- - lib/merb/exceptions.rb
191
- - lib/merb/generators
192
- - lib/merb/logger.rb
193
- - lib/merb/mail_controller.rb
194
- - lib/merb/mailer.rb
195
- - lib/merb/mixins
196
- - lib/merb/mongrel_handler.rb
197
- - lib/merb/part_controller.rb
198
- - lib/merb/plugins.rb
199
- - lib/merb/rack_adapter.rb
200
- - lib/merb/request.rb
201
- - lib/merb/router.rb
202
- - lib/merb/server.rb
203
- - lib/merb/session
204
- - lib/merb/session.rb
205
- - lib/merb/template
206
- - lib/merb/template.rb
207
- - lib/merb/test
208
- - lib/merb/upload_handler.rb
209
- - lib/merb/upload_progress.rb
210
- - lib/merb/view_context.rb
211
185
  - lib/merb/caching/action_cache.rb
212
186
  - lib/merb/caching/fragment_cache.rb
213
187
  - lib/merb/caching/store
214
188
  - lib/merb/caching/store/file_cache.rb
189
+ - lib/merb/caching/store/memcache.rb
215
190
  - lib/merb/caching/store/memory_cache.rb
191
+ - lib/merb/caching.rb
192
+ - lib/merb/constants.rb
193
+ - lib/merb/controller.rb
194
+ - lib/merb/core_ext
216
195
  - lib/merb/core_ext/array.rb
217
196
  - lib/merb/core_ext/class.rb
218
197
  - lib/merb/core_ext/enumerable.rb
@@ -227,90 +206,120 @@ files:
227
206
  - lib/merb/core_ext/object.rb
228
207
  - lib/merb/core_ext/string.rb
229
208
  - lib/merb/core_ext/symbol.rb
209
+ - lib/merb/core_ext.rb
210
+ - lib/merb/dispatcher.rb
211
+ - lib/merb/drb_server.rb
212
+ - lib/merb/erubis_ext.rb
213
+ - lib/merb/exceptions.rb
214
+ - lib/merb/generators
230
215
  - lib/merb/generators/merb_app
216
+ - lib/merb/generators/merb_app/merb_app.rb
231
217
  - lib/merb/generators/merb_generator_helpers.rb
232
218
  - lib/merb/generators/merb_plugin.rb
233
- - lib/merb/generators/merb_app/merb_app.rb
219
+ - lib/merb/logger.rb
220
+ - lib/merb/mail_controller.rb
221
+ - lib/merb/mailer.rb
222
+ - lib/merb/mixins
234
223
  - lib/merb/mixins/basic_authentication.rb
235
224
  - lib/merb/mixins/controller.rb
236
225
  - lib/merb/mixins/erubis_capture.rb
237
226
  - lib/merb/mixins/form_control.rb
227
+ - lib/merb/mixins/general_controller.rb
238
228
  - lib/merb/mixins/render.rb
239
229
  - lib/merb/mixins/responder.rb
240
230
  - lib/merb/mixins/view_context.rb
241
231
  - lib/merb/mixins/web_controller.rb
232
+ - lib/merb/mongrel_handler.rb
233
+ - lib/merb/part_controller.rb
234
+ - lib/merb/plugins.rb
235
+ - lib/merb/rack_adapter.rb
236
+ - lib/merb/request.rb
237
+ - lib/merb/router.rb
238
+ - lib/merb/server.rb
239
+ - lib/merb/session
242
240
  - lib/merb/session/cookie_store.rb
243
241
  - lib/merb/session/mem_cache_session.rb
244
242
  - lib/merb/session/memory_session.rb
243
+ - lib/merb/session.rb
244
+ - lib/merb/template
245
245
  - lib/merb/template/erubis.rb
246
246
  - lib/merb/template/haml.rb
247
247
  - lib/merb/template/markaby.rb
248
248
  - lib/merb/template/xml_builder.rb
249
+ - lib/merb/template.rb
250
+ - lib/merb/test
249
251
  - lib/merb/test/fake_request.rb
250
252
  - lib/merb/test/helper.rb
251
253
  - lib/merb/test/hpricot.rb
252
254
  - lib/merb/test/multipart.rb
253
255
  - lib/merb/test/rspec.rb
256
+ - lib/merb/upload_handler.rb
257
+ - lib/merb/upload_progress.rb
258
+ - lib/merb/version.rb
259
+ - lib/merb/view_context.rb
260
+ - lib/merb.rb
261
+ - lib/patch
262
+ - lib/tasks
254
263
  - lib/tasks/merb.rake
264
+ - lib/tasks.rb
255
265
  - app_generators/merb
256
- - app_generators/merb_plugin
257
266
  - app_generators/merb/merb_generator.rb
258
267
  - app_generators/merb/templates
259
- - app_generators/merb/USAGE
260
268
  - app_generators/merb/templates/app
261
- - app_generators/merb/templates/config
262
- - app_generators/merb/templates/public
263
- - app_generators/merb/templates/Rakefile
264
- - app_generators/merb/templates/script
265
- - app_generators/merb/templates/spec
266
- - app_generators/merb/templates/test
267
269
  - app_generators/merb/templates/app/controllers
268
- - app_generators/merb/templates/app/helpers
269
- - app_generators/merb/templates/app/mailers
270
- - app_generators/merb/templates/app/parts
271
- - app_generators/merb/templates/app/views
272
270
  - app_generators/merb/templates/app/controllers/application.rb
273
271
  - app_generators/merb/templates/app/controllers/exceptions.rb
272
+ - app_generators/merb/templates/app/helpers
274
273
  - app_generators/merb/templates/app/helpers/global_helper.rb
274
+ - app_generators/merb/templates/app/mailers
275
275
  - app_generators/merb/templates/app/mailers/views
276
276
  - app_generators/merb/templates/app/mailers/views/layout
277
277
  - app_generators/merb/templates/app/mailers/views/layout/application.html.erb
278
278
  - app_generators/merb/templates/app/mailers/views/layout/application.text.erb
279
+ - app_generators/merb/templates/app/parts
279
280
  - app_generators/merb/templates/app/parts/views
280
281
  - app_generators/merb/templates/app/parts/views/layout
281
282
  - app_generators/merb/templates/app/parts/views/layout/application.html.erb
283
+ - app_generators/merb/templates/app/views
282
284
  - app_generators/merb/templates/app/views/exceptions
283
- - app_generators/merb/templates/app/views/layout
284
285
  - app_generators/merb/templates/app/views/exceptions/internal_server_error.html.erb
285
286
  - app_generators/merb/templates/app/views/exceptions/not_acceptable.html.erb
286
287
  - app_generators/merb/templates/app/views/exceptions/not_found.html.erb
288
+ - app_generators/merb/templates/app/views/layout
287
289
  - app_generators/merb/templates/app/views/layout/application.html.erb
290
+ - app_generators/merb/templates/config
288
291
  - app_generators/merb/templates/config/boot.rb
289
292
  - app_generators/merb/templates/config/dependencies.rb
290
293
  - app_generators/merb/templates/config/environments
294
+ - app_generators/merb/templates/config/environments/development.rb
295
+ - app_generators/merb/templates/config/environments/production.rb
296
+ - app_generators/merb/templates/config/environments/test.rb
291
297
  - app_generators/merb/templates/config/merb.yml
292
298
  - app_generators/merb/templates/config/merb_init.rb
293
299
  - app_generators/merb/templates/config/plugins.yml
294
300
  - app_generators/merb/templates/config/router.rb
295
301
  - app_generators/merb/templates/config/upload.conf
296
- - app_generators/merb/templates/config/environments/development.rb
297
- - app_generators/merb/templates/config/environments/production.rb
298
- - app_generators/merb/templates/config/environments/test.rb
302
+ - app_generators/merb/templates/public
299
303
  - app_generators/merb/templates/public/images
304
+ - app_generators/merb/templates/public/images/merb.jpg
300
305
  - app_generators/merb/templates/public/merb.fcgi
301
306
  - app_generators/merb/templates/public/stylesheets
302
- - app_generators/merb/templates/public/images/merb.jpg
303
307
  - app_generators/merb/templates/public/stylesheets/master.css
308
+ - app_generators/merb/templates/Rakefile
309
+ - app_generators/merb/templates/script
304
310
  - app_generators/merb/templates/script/destroy
305
311
  - app_generators/merb/templates/script/generate
306
312
  - app_generators/merb/templates/script/stop_merb
307
313
  - app_generators/merb/templates/script/win_script.cmd
314
+ - app_generators/merb/templates/spec
308
315
  - app_generators/merb/templates/spec/spec.opts
309
316
  - app_generators/merb/templates/spec/spec_helper.rb
317
+ - app_generators/merb/templates/test
310
318
  - app_generators/merb/templates/test/test_helper.rb
319
+ - app_generators/merb/USAGE
320
+ - app_generators/merb_plugin
311
321
  - app_generators/merb_plugin/merb_plugin_generator.rb
312
322
  - app_generators/merb_plugin/templates
313
- - app_generators/merb_plugin/USAGE
314
323
  - app_generators/merb_plugin/templates/LICENSE
315
324
  - app_generators/merb_plugin/templates/merbtasks.rb
316
325
  - app_generators/merb_plugin/templates/Rakefile
@@ -319,33 +328,33 @@ files:
319
328
  - app_generators/merb_plugin/templates/sampleplugin_spec.rb
320
329
  - app_generators/merb_plugin/templates/spec_helper.rb
321
330
  - app_generators/merb_plugin/templates/TODO
331
+ - app_generators/merb_plugin/USAGE
322
332
  - merb_generators/controller
323
- - merb_generators/resource
324
333
  - merb_generators/controller/controller_generator.rb
325
334
  - merb_generators/controller/templates
326
- - merb_generators/controller/USAGE
327
335
  - merb_generators/controller/templates/controller.rb
328
336
  - merb_generators/controller/templates/helper.rb
329
337
  - merb_generators/controller/templates/index.html.erb
338
+ - merb_generators/controller/USAGE
339
+ - merb_generators/resource
330
340
  - merb_generators/resource/resource_generator.rb
331
341
  - merb_generators/resource/USAGE
332
342
  - merb_default_generators/model
333
- - merb_default_generators/resource_controller
334
343
  - merb_default_generators/model/model_generator.rb
335
344
  - merb_default_generators/model/templates
336
- - merb_default_generators/model/USAGE
337
345
  - merb_default_generators/model/templates/new_model_template.erb
346
+ - merb_default_generators/model/USAGE
347
+ - merb_default_generators/resource_controller
338
348
  - merb_default_generators/resource_controller/resource_controller_generator.rb
339
349
  - merb_default_generators/resource_controller/templates
340
- - merb_default_generators/resource_controller/USAGE
341
350
  - merb_default_generators/resource_controller/templates/controller.rb
342
351
  - merb_default_generators/resource_controller/templates/edit.html.erb
343
352
  - merb_default_generators/resource_controller/templates/helper.rb
344
353
  - merb_default_generators/resource_controller/templates/index.html.erb
345
354
  - merb_default_generators/resource_controller/templates/new.html.erb
346
355
  - merb_default_generators/resource_controller/templates/show.html.erb
356
+ - merb_default_generators/resource_controller/USAGE
347
357
  - rspec_generators/merb_controller_test
348
- - rspec_generators/merb_model_test
349
358
  - rspec_generators/merb_controller_test/merb_controller_test_generator.rb
350
359
  - rspec_generators/merb_controller_test/templates
351
360
  - rspec_generators/merb_controller_test/templates/controller_spec.rb
@@ -354,15 +363,16 @@ files:
354
363
  - rspec_generators/merb_controller_test/templates/index_spec.rb
355
364
  - rspec_generators/merb_controller_test/templates/new_spec.rb
356
365
  - rspec_generators/merb_controller_test/templates/show_spec.rb
366
+ - rspec_generators/merb_model_test
357
367
  - rspec_generators/merb_model_test/merb_model_test_generator.rb
358
368
  - rspec_generators/merb_model_test/templates
359
369
  - rspec_generators/merb_model_test/templates/model_spec_template.erb
360
370
  - test_unit_generators/merb_controller_test
361
- - test_unit_generators/merb_model_test
362
371
  - test_unit_generators/merb_controller_test/merb_controller_test_generator.rb
363
372
  - test_unit_generators/merb_controller_test/templates
364
373
  - test_unit_generators/merb_controller_test/templates/functional_test.rb
365
374
  - test_unit_generators/merb_controller_test/templates/helper_test.rb
375
+ - test_unit_generators/merb_model_test
366
376
  - test_unit_generators/merb_model_test/merb_model_test_generator.rb
367
377
  - test_unit_generators/merb_model_test/templates
368
378
  - test_unit_generators/merb_model_test/templates/model_test_unit_template.erb
@@ -378,8 +388,8 @@ executables:
378
388
  - merb
379
389
  extensions: []
380
390
 
381
- requirements: []
382
-
391
+ requirements:
392
+ - install the json gem to get faster json parsing
383
393
  dependencies:
384
394
  - !ruby/object:Gem::Dependency
385
395
  name: mongrel
@@ -417,3 +427,30 @@ dependencies:
417
427
  - !ruby/object:Gem::Version
418
428
  version: 0.0.0
419
429
  version:
430
+ - !ruby/object:Gem::Dependency
431
+ name: rake
432
+ version_requirement:
433
+ version_requirements: !ruby/object:Gem::Version::Requirement
434
+ requirements:
435
+ - - ">"
436
+ - !ruby/object:Gem::Version
437
+ version: 0.0.0
438
+ version:
439
+ - !ruby/object:Gem::Dependency
440
+ name: ruby2ruby
441
+ version_requirement:
442
+ version_requirements: !ruby/object:Gem::Version::Requirement
443
+ requirements:
444
+ - - ">"
445
+ - !ruby/object:Gem::Version
446
+ version: 0.0.0
447
+ version:
448
+ - !ruby/object:Gem::Dependency
449
+ name: json_pure
450
+ version_requirement:
451
+ version_requirements: !ruby/object:Gem::Version::Requirement
452
+ requirements:
453
+ - - ">"
454
+ - !ruby/object:Gem::Version
455
+ version: 0.0.0
456
+ version: