Pistos-ramaze 2009.04.08 → 2009.06.12
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +3 -0
- data/MANIFEST +37 -22
- data/{README.markdown → README.md} +5 -24
- data/Rakefile +33 -26
- data/benchmark/bench_templates/bench.rb +67 -0
- data/benchmark/bench_templates/view/large.erb +79 -0
- data/benchmark/bench_templates/view/large.haml +41 -0
- data/benchmark/bench_templates/view/large.xhtml +79 -0
- data/benchmark/bench_templates/view/small.erb +21 -0
- data/benchmark/bench_templates/view/small.haml +12 -0
- data/benchmark/bench_templates/view/small.xhtml +21 -0
- data/benchmark/run.rb +14 -21
- data/benchmark/suite/minimal.rb +3 -5
- data/benchmark/suite/no_informer.rb +0 -2
- data/benchmark/suite/no_sessions.rb +3 -4
- data/benchmark/suite/no_template.rb +1 -3
- data/benchmark/suite/simple.rb +1 -3
- data/benchmark/suite/template_erubis.rb +0 -2
- data/benchmark/suite/template_etanni.rb +8 -0
- data/benchmark/suite/template_ezamar.rb +1 -3
- data/benchmark/suite/template_haml.rb +0 -2
- data/benchmark/suite/template_liquid.rb +0 -2
- data/benchmark/suite/template_markaby.rb +0 -2
- data/benchmark/suite/template_nagoro.rb +1 -3
- data/benchmark/suite/template_redcloth.rb +0 -2
- data/benchmark/suite/template_tenjin.rb +0 -2
- data/bin/ramaze +11 -163
- data/doc/AUTHORS +15 -8
- data/doc/CHANGELOG +10094 -12262
- data/doc/meta/announcement.txt +93 -46
- data/doc/tutorial/todolist.html +22 -58
- data/doc/tutorial/todolist.txt +20 -39
- data/examples/app/auth/layout/{auth.nag → auth.xhtml} +0 -0
- data/examples/app/auth/view/{index.nag → index.xhtml} +0 -0
- data/examples/app/auth/view/{login.nag → login.xhtml} +0 -0
- data/examples/app/auth/view/{secret.nag → secret.xhtml} +0 -0
- data/examples/app/blog/app.rb +1 -1
- data/examples/app/blog/controller/comment.rb +1 -1
- data/examples/app/blog/controller/entry.rb +12 -3
- data/examples/app/blog/model/init.rb +5 -0
- data/examples/app/blog/model/tag.rb +2 -2
- data/examples/app/blog/view/entry/index.nag +3 -3
- data/examples/app/blog/view/feed.atom.nag +1 -1
- data/examples/app/blog/view/feed.rss.nag +1 -1
- data/examples/app/blog/view/index.nag +1 -1
- data/examples/app/blog/view/tag/index.nag +1 -1
- data/examples/app/chat/layout/{default.nag → default.xhtml} +0 -0
- data/examples/app/chat/view/{chat.nag → chat.xhtml} +0 -0
- data/examples/app/chat/view/{index.nag → index.xhtml} +0 -0
- data/examples/app/localization/locale/de.yaml +5 -0
- data/examples/app/localization/locale/en.yaml +5 -0
- data/examples/app/localization/locale/ja.yaml +5 -0
- data/examples/app/localization/start.rb +33 -20
- data/examples/app/wikore/spec/wikore.rb +4 -6
- data/examples/app/wikore/src/controller.rb +9 -11
- data/examples/app/wikore/src/model.rb +7 -10
- data/examples/app/wikore/start.rb +1 -1
- data/examples/app/wikore/{template → view}/index.xhtml +0 -0
- data/examples/helpers/cache.rb +6 -4
- data/examples/misc/css.rb +6 -12
- data/examples/misc/rapp.rb +28 -17
- data/lib/proto/app.rb +14 -0
- data/lib/proto/config.ru +8 -5
- data/lib/proto/controller/init.rb +3 -3
- data/lib/proto/spec/main.rb +9 -11
- data/lib/proto/start.rb +6 -10
- data/lib/ramaze.rb +8 -9
- data/lib/ramaze/app.rb +4 -3
- data/lib/ramaze/cache/localmemcache.rb +2 -2
- data/lib/ramaze/cache/memcache.rb +26 -1
- data/lib/ramaze/cache/sequel.rb +24 -9
- data/lib/ramaze/contrib/addressable_route.rb +56 -0
- data/lib/ramaze/contrib/email.rb +2 -0
- data/lib/ramaze/contrib/facebook/facebook.rb +4 -4
- data/lib/ramaze/contrib/sequel/create_join.rb +1 -0
- data/lib/ramaze/contrib/sequel/form_field.rb +4 -4
- data/lib/ramaze/contrib/sequel/image.rb +9 -11
- data/lib/ramaze/contrib/sequel/relation.rb +17 -3
- data/lib/ramaze/controller.rb +26 -18
- data/lib/ramaze/gestalt.rb +4 -1
- data/lib/ramaze/helper.rb +1 -0
- data/lib/ramaze/helper/auth.rb +0 -5
- data/lib/ramaze/helper/cache.rb +65 -25
- data/lib/ramaze/helper/form.rb +14 -2
- data/lib/ramaze/helper/formatting.rb +3 -1
- data/lib/ramaze/helper/gestalt.rb +32 -0
- data/lib/ramaze/helper/identity.rb +3 -3
- data/lib/ramaze/helper/layout.rb +97 -0
- data/lib/ramaze/helper/link.rb +6 -25
- data/lib/ramaze/helper/localize.rb +13 -3
- data/lib/ramaze/helper/paginate.rb +4 -2
- data/lib/ramaze/helper/ultraviolet.rb +2 -0
- data/lib/ramaze/helper/user.rb +3 -3
- data/lib/ramaze/log/rotatinginformer.rb +10 -10
- data/lib/ramaze/request.rb +3 -5
- data/lib/ramaze/setup.rb +22 -9
- data/lib/ramaze/spec.rb +8 -12
- data/lib/ramaze/spec/bacon.rb +34 -0
- data/lib/ramaze/spec/helper/template_examples.rb +15 -22
- data/lib/ramaze/tool/bin.rb +340 -0
- data/lib/ramaze/tool/project_creator.rb +1 -1
- data/lib/ramaze/version.rb +1 -1
- data/lib/ramaze/view.rb +6 -11
- data/lib/ramaze/view/erubis.rb +2 -2
- data/lib/ramaze/view/ezamar.rb +2 -2
- data/lib/ramaze/view/gestalt.rb +14 -0
- data/lib/ramaze/view/haml.rb +2 -1
- data/lib/ramaze/view/liquid.rb +45 -11
- data/lib/ramaze/view/maruku.rb +2 -1
- data/lib/ramaze/view/nagoro/render_partial.rb +9 -9
- data/lib/ramaze/view/sass.rb +1 -1
- data/lib/ramaze/view/tenjin.rb +7 -4
- data/lib/vendor/etag.rb +4 -2
- data/lib/vendor/route_exceptions.rb +9 -15
- data/ramaze.gemspec +56 -9
- data/spec/contrib/addressable_route.rb +30 -0
- data/spec/contrib/rest.rb +2 -2
- data/spec/examples/caching.rb +5 -7
- data/spec/examples/css.rb +3 -3
- data/spec/examples/element.rb +4 -3
- data/spec/examples/hello.rb +3 -3
- data/spec/examples/helpers/httpdigest.rb +44 -69
- data/spec/examples/linking.rb +3 -3
- data/spec/examples/simple.rb +3 -3
- data/spec/examples/templates/template_erubis.rb +8 -4
- data/spec/examples/templates/template_ezamar.rb +9 -4
- data/spec/examples/templates/template_haml.rb +8 -4
- data/spec/examples/templates/template_liquid.rb +8 -4
- data/spec/examples/templates/template_markaby.rb +9 -5
- data/spec/examples/templates/template_nagoro.rb +9 -5
- data/spec/examples/templates/template_redcloth.rb +8 -4
- data/spec/examples/templates/template_remarkably.rb +8 -4
- data/spec/examples/templates/template_tenjin.rb +8 -4
- data/spec/helper.rb +1 -2
- data/spec/ramaze/action/render.rb +4 -1
- data/spec/ramaze/app.rb +5 -2
- data/spec/ramaze/bin/ramaze.rb +96 -0
- data/spec/ramaze/cache/localmemcache.rb +1 -1
- data/spec/ramaze/cache/memcache.rb +7 -1
- data/spec/ramaze/cache/sequel.rb +1 -1
- data/spec/ramaze/controller/actionless_templates.rb +2 -2
- data/spec/ramaze/controller/lonely_mapping.rb +18 -0
- data/spec/ramaze/controller/mapping.rb +4 -15
- data/spec/ramaze/controller/provide_inheritance.rb +5 -2
- data/spec/ramaze/controller/resolve.rb +2 -2
- data/spec/ramaze/controller/subclass.rb +2 -2
- data/spec/ramaze/controller/template_resolving.rb +2 -2
- data/spec/ramaze/dispatcher/directory.rb +5 -2
- data/spec/ramaze/dispatcher/file.rb +28 -26
- data/spec/ramaze/error.rb +3 -3
- data/spec/ramaze/files.rb +5 -2
- data/spec/ramaze/gestalt.rb +26 -17
- data/spec/ramaze/helper/auth.rb +30 -41
- data/spec/ramaze/helper/bench.rb +6 -2
- data/spec/ramaze/helper/cache.rb +45 -5
- data/spec/ramaze/helper/flash.rb +11 -15
- data/spec/ramaze/helper/form.rb +6 -3
- data/spec/ramaze/helper/formatting.rb +4 -1
- data/spec/ramaze/helper/gestalt.rb +4 -1
- data/spec/ramaze/helper/gravatar.rb +4 -1
- data/spec/ramaze/helper/httpdigest.rb +51 -66
- data/spec/ramaze/helper/layout.rb +79 -0
- data/spec/ramaze/helper/layout/default.xhtml +5 -0
- data/spec/ramaze/helper/link.rb +33 -12
- data/spec/ramaze/helper/localize.rb +9 -4
- data/spec/ramaze/helper/maruku.rb +5 -2
- data/spec/ramaze/helper/pager.rb +2 -2
- data/spec/ramaze/helper/paginate.rb +5 -2
- data/spec/ramaze/helper/request_accessor.rb +5 -2
- data/spec/ramaze/helper/sequel_form.rb +7 -2
- data/spec/ramaze/helper/simple_captcha.rb +10 -14
- data/spec/ramaze/helper/stack.rb +32 -40
- data/spec/ramaze/helper/user.rb +19 -14
- data/spec/ramaze/helper/xhtml.rb +4 -1
- data/spec/ramaze/log/informer.rb +1 -1
- data/spec/ramaze/log/logging.rb +4 -1
- data/spec/ramaze/log/syslog.rb +6 -6
- data/spec/ramaze/params.rb +5 -6
- data/spec/ramaze/request.rb +16 -1
- data/spec/ramaze/session/memcache.rb +66 -0
- data/spec/ramaze/struct.rb +4 -1
- data/spec/ramaze/view.rb +2 -2
- data/spec/ramaze/view/erubis.rb +2 -2
- data/spec/ramaze/view/ezamar.rb +2 -2
- data/spec/ramaze/view/gestalt.rb +94 -0
- data/spec/ramaze/view/gestalt/external.ges +8 -0
- data/spec/ramaze/view/haml.rb +2 -2
- data/spec/ramaze/view/liquid.rb +2 -2
- data/spec/ramaze/view/nagoro.rb +2 -2
- data/spec/ramaze/view/redcloth.rb +2 -2
- data/spec/ramaze/view/remarkably.rb +2 -2
- data/spec/ramaze/view/sass.rb +2 -2
- data/spec/ramaze/view/tagz.rb +2 -2
- data/spec/ramaze/view/tenjin.rb +2 -2
- data/spec/snippets/array/put_within.rb +30 -25
- data/spec/snippets/binding/locals.rb +4 -1
- data/spec/snippets/numeric/filesize_format.rb +4 -1
- data/spec/snippets/numeric/time.rb +5 -2
- data/spec/snippets/object/__dir__.rb +4 -1
- data/spec/snippets/ordered_set.rb +4 -1
- data/spec/snippets/ramaze/acquire.rb +4 -1
- data/spec/snippets/ramaze/dictionary.rb +4 -1
- data/spec/snippets/ramaze/struct.rb +4 -1
- data/spec/snippets/string/camel_case.rb +4 -1
- data/spec/snippets/string/color.rb +4 -1
- data/spec/snippets/string/snake_case.rb +4 -1
- data/spec/snippets/string/unindent.rb +4 -1
- data/spec/snippets/thread/into.rb +4 -1
- data/tasks/bacon.rake +5 -3
- data/tasks/changelog.rake +3 -1
- data/tasks/{gem_installer.rake → gem_setup.rake} +45 -22
- data/tasks/release.rake +12 -27
- data/tasks/setup.rake +6 -0
- data/tasks/todo.rake +2 -4
- metadata +205 -31
- data/CHANGELOG +0 -16546
- data/benchmark/suite/template_builder.rb +0 -12
- data/doc/tutorial/todolist.mkd +0 -787
- data/examples/helpers/provide.rb +0 -23
- data/lib/proto/view/page.xhtml +0 -27
- data/lib/ramaze/snippets/divide.rb +0 -22
- data/lib/ramaze/snippets/kernel/constant.rb +0 -41
- data/lib/ramaze/snippets/object/acquire.rb +0 -37
- data/lib/ramaze/snippets/string/each.rb +0 -19
- data/spec/ramaze/helper/partial.rb +0 -40
- data/spec/snippets/kernel/constant.rb +0 -23
- data/tasks/install_dependencies.rake +0 -6
data/lib/ramaze/version.rb
CHANGED
data/lib/ramaze/view.rb
CHANGED
@@ -2,18 +2,17 @@
|
|
2
2
|
# All files in this distribution are subject to the terms of the Ruby license.
|
3
3
|
|
4
4
|
module Ramaze
|
5
|
+
View = Innate::View
|
5
6
|
|
6
7
|
# This is a container module for wrappers of templating engines and handles
|
7
8
|
# lazy requiring of needed engines.
|
8
|
-
|
9
9
|
module View
|
10
|
-
extend Innate::View
|
11
10
|
|
12
11
|
# Combine Kernel#autoload and Innate::View::register
|
13
12
|
|
14
13
|
def self.auto_register(name, *exts)
|
15
14
|
autoload(name, "ramaze/view/#{name}".downcase)
|
16
|
-
register("
|
15
|
+
register("Innate::View::#{name}", *exts)
|
17
16
|
end
|
18
17
|
|
19
18
|
# TODO:
|
@@ -25,20 +24,16 @@ module Ramaze
|
|
25
24
|
|
26
25
|
auto_register :Erubis, :erubis, :rhtml
|
27
26
|
auto_register :Ezamar, :zmr
|
27
|
+
auto_register :Gestalt, :ges
|
28
28
|
auto_register :Haml, :haml
|
29
|
+
auto_register :Less, :lss, :less
|
29
30
|
auto_register :Liquid, :liquid
|
30
31
|
auto_register :Maruku, :mkd, :md
|
31
32
|
auto_register :Nagoro, :nag
|
32
33
|
auto_register :RedCloth, :redcloth
|
33
|
-
auto_register :Sass, :sass
|
34
|
-
auto_register :Tenjin, :rbhtml, :tenjin
|
35
34
|
auto_register :Remarkably, :rem
|
35
|
+
auto_register :Sass, :sass
|
36
36
|
auto_register :Tagz, :rb, :tagz
|
37
|
-
|
38
|
-
end
|
39
|
-
|
40
|
-
module Innate
|
41
|
-
module View
|
42
|
-
include Ramaze::View
|
37
|
+
auto_register :Tenjin, :rbhtml, :tenjin
|
43
38
|
end
|
44
39
|
end
|
data/lib/ramaze/view/erubis.rb
CHANGED
@@ -12,9 +12,9 @@ module Ramaze
|
|
12
12
|
options = OPTIONS.dup
|
13
13
|
engine = options.delete(:engine)
|
14
14
|
|
15
|
-
eruby = engine.new(
|
15
|
+
eruby = View.compile(string){|s| engine.new(s, options) }
|
16
16
|
eruby.init_evaluator(:filename => (action.view || __FILE__))
|
17
|
-
html = eruby.
|
17
|
+
html = eruby.evaluate(action.instance)
|
18
18
|
|
19
19
|
return html, 'text/html'
|
20
20
|
end
|
data/lib/ramaze/view/ezamar.rb
CHANGED
@@ -6,8 +6,8 @@ module Ramaze
|
|
6
6
|
TRANSFORM_PIPELINE = [ ::Ezamar::Element ]
|
7
7
|
|
8
8
|
def self.call(action, string)
|
9
|
-
|
10
|
-
html =
|
9
|
+
ezamar = View.compile(string){|s| compile(action, s) }
|
10
|
+
html = ezamar.result(action.binding)
|
11
11
|
return html, 'text/html'
|
12
12
|
end
|
13
13
|
|
data/lib/ramaze/view/haml.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'haml/util'
|
1
2
|
require 'haml/engine'
|
2
3
|
|
3
4
|
module Ramaze
|
@@ -5,7 +6,7 @@ module Ramaze
|
|
5
6
|
module Haml
|
6
7
|
def self.call(action, string)
|
7
8
|
action.options[:filename] = (action.view || '(haml)')
|
8
|
-
haml = ::Haml::Engine.new(
|
9
|
+
haml = View.compile(string){|s| ::Haml::Engine.new(s, action.options) }
|
9
10
|
html = haml.to_html(action.instance, action.variables)
|
10
11
|
|
11
12
|
return html, 'text/html'
|
data/lib/ramaze/view/liquid.rb
CHANGED
@@ -5,22 +5,56 @@ require 'liquid'
|
|
5
5
|
|
6
6
|
module Ramaze
|
7
7
|
module View
|
8
|
+
# Liquid is a smarty-style templating engine that restricts the usage of
|
9
|
+
# code inside templates. This is mostly helpful if you want to let users
|
10
|
+
# submit templates but prevent them from running arbitrary code.
|
11
|
+
#
|
12
|
+
# Liquid offers a pipe-like syntax for chaining operations on objects.
|
13
|
+
# Any instance variable from your Controller is available as a variable
|
14
|
+
# inside Liquid, so be sensitive about what data you provide.
|
15
|
+
#
|
16
|
+
# If you want to allow partials you can provide a kind of virtual
|
17
|
+
# filesystem that contains partials. These can be rendered using the
|
18
|
+
# Liquid `{% include 'name' %}` tag. The include tag has no relation to the
|
19
|
+
# Ramaze::Helper::Render, it simply inlines the file.
|
20
|
+
#
|
21
|
+
# To tell Liquid where to find partials, you have to set the file_system.
|
22
|
+
# The naming-convention for liquid-partials is to use a '_' prefix to the
|
23
|
+
# filename and the '.liquid' filename extension. The names of partials
|
24
|
+
# are restricted to ASCII alpha-numeric characters and underscores. You
|
25
|
+
# can also use '/' to use templates located in deeper directories.
|
26
|
+
# The partial has access to the same variables as the template including
|
27
|
+
# it.
|
28
|
+
#
|
29
|
+
# @example setting file_system
|
30
|
+
# template_path = './partials/'
|
31
|
+
# Liquid::Template.file_system = Liquid::LocalFileSystem.new(template_path)
|
32
|
+
#
|
33
|
+
# @example using include
|
34
|
+
# {% include 'foo' %}
|
35
|
+
# {% include 'bar/foo' %}
|
36
|
+
#
|
37
|
+
# This will include the files located at './partials/_foo.liquid' and
|
38
|
+
# './partials/bar/_foo.liquid'.
|
39
|
+
#
|
40
|
+
# This functionality gets even more interesting if you customize it with
|
41
|
+
# your own virtual file-system, you can use anything that responds to
|
42
|
+
# `#read_template_file(path)`.
|
43
|
+
# That way you can even fetch templates from a database or instruct Liquid
|
44
|
+
# to allow you access to your own templates in the '/views' directory.
|
8
45
|
module Liquid
|
9
|
-
def self.call(action, string)
|
10
|
-
instance_variables = {}
|
11
|
-
instance = action.instance
|
12
46
|
|
13
|
-
|
14
|
-
|
15
|
-
|
47
|
+
# Liquid requires the variable keys to be strings, most likely for
|
48
|
+
# security resons (don't allow arbitrary symbols).
|
49
|
+
def self.call(action, string)
|
50
|
+
action.sync_variables(action)
|
51
|
+
variables = {}
|
52
|
+
action.variables.each{|k,v| variables[k.to_s] = v }
|
16
53
|
|
17
|
-
|
18
|
-
html =
|
54
|
+
liquid = View.compile(string){|s| ::Liquid::Template.parse(s) }
|
55
|
+
html = liquid.render(variables)
|
19
56
|
|
20
57
|
return html, 'text/html'
|
21
|
-
|
22
|
-
# data = action.variables[:data] || {}
|
23
|
-
# template.render(data, options)
|
24
58
|
end
|
25
59
|
|
26
60
|
class Tag < ::Liquid::Tag
|
data/lib/ramaze/view/maruku.rb
CHANGED
@@ -5,7 +5,8 @@ module Ramaze
|
|
5
5
|
module Maruku
|
6
6
|
def self.call(action, string)
|
7
7
|
string = File.read(action.view) if action.view
|
8
|
-
|
8
|
+
maruku = View.compile(string){|s| ::Maruku.new(s) }
|
9
|
+
html = maruku.to_html
|
9
10
|
|
10
11
|
return html, 'text/html'
|
11
12
|
end
|
@@ -1,24 +1,24 @@
|
|
1
|
-
require 'innate/helper/
|
1
|
+
require 'innate/helper/render'
|
2
2
|
|
3
3
|
module Nagoro
|
4
4
|
module Pipe
|
5
5
|
# Pipe that transforms <render /> tags.
|
6
6
|
#
|
7
7
|
# the src parameter in the render tag will be used as first parameter to
|
8
|
-
# render_partial, all other paramters are passed on as +
|
8
|
+
# render_partial, all other paramters are passed on as +variables+.
|
9
9
|
#
|
10
|
-
# Example calling render_partial('
|
11
|
-
# <render src="
|
10
|
+
# Example calling render_partial('hello'):
|
11
|
+
# <render src="hello" />
|
12
12
|
#
|
13
|
-
# Example calling render_partial('
|
14
|
-
# <render src="
|
13
|
+
# Example calling render_partial('hello', 'tail' => 'foo'):
|
14
|
+
# <render src="hello" tail="foo" />
|
15
15
|
#
|
16
16
|
class RenderPartial < Base
|
17
|
-
include Innate::Helper::
|
17
|
+
include Innate::Helper::Render
|
18
18
|
|
19
19
|
def tag_start(tag, attrs)
|
20
|
-
if tag == 'render' and
|
21
|
-
append(render_partial(
|
20
|
+
if tag == 'render' and action_name = attrs.delete('src')
|
21
|
+
append(render_partial(action_name, attrs))
|
22
22
|
else
|
23
23
|
super
|
24
24
|
end
|
data/lib/ramaze/view/sass.rb
CHANGED
data/lib/ramaze/view/tenjin.rb
CHANGED
@@ -4,10 +4,13 @@ module Ramaze
|
|
4
4
|
module View
|
5
5
|
module Tenjin
|
6
6
|
def self.call(action, string)
|
7
|
-
|
8
|
-
|
7
|
+
tenjin = View.compile(string){|s|
|
8
|
+
template = ::Tenjin::Template.new
|
9
|
+
template.convert(s)
|
10
|
+
template
|
11
|
+
}
|
9
12
|
|
10
|
-
html =
|
13
|
+
html = tenjin.ramaze_render(action.binding)
|
11
14
|
|
12
15
|
return html, 'text/html'
|
13
16
|
end
|
@@ -23,7 +26,7 @@ module Tenjin
|
|
23
26
|
# Tenjin::ContextHelper is not available here. Patches welcome.
|
24
27
|
def ramaze_render(binding)
|
25
28
|
code = "_buf = #{init_buf_expr}; #{@script}; _buf.to_s"
|
26
|
-
_buf =
|
29
|
+
_buf = eval(code, binding, @filename || '(tenjin)')
|
27
30
|
end
|
28
31
|
end
|
29
32
|
end
|
data/lib/vendor/etag.rb
CHANGED
@@ -10,8 +10,10 @@ module Rack
|
|
10
10
|
def call(env)
|
11
11
|
status, headers, body = @app.call(env)
|
12
12
|
|
13
|
-
|
14
|
-
|
13
|
+
unless headers.key?('Etag')
|
14
|
+
hashes = []
|
15
|
+
body.each{|chunk| hashes << chunk.hash }
|
16
|
+
headers['Etag'] = %("#{Digest::MD5.hexdigest(hashes.join)}")
|
15
17
|
end
|
16
18
|
|
17
19
|
[status, headers, body]
|
@@ -2,9 +2,8 @@ module Rack
|
|
2
2
|
class RouteExceptions
|
3
3
|
ROUTES = []
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
ROUTE_EXCEPTIONS_RETURNED = 'rack.route_exceptions.returned'.freeze
|
5
|
+
PATH_INFO = 'rack.route_exceptions.path_info'.freeze
|
6
|
+
EXCEPTION = 'rack.route_exceptions.exception'.freeze
|
8
7
|
|
9
8
|
class << self
|
10
9
|
def route(exception, to)
|
@@ -20,28 +19,23 @@ module Rack
|
|
20
19
|
end
|
21
20
|
|
22
21
|
def call(env, try_again = true)
|
23
|
-
|
22
|
+
@app.call(env)
|
24
23
|
rescue Exception => exception
|
25
24
|
raise(exception) unless try_again
|
26
25
|
|
27
26
|
ROUTES.each do |klass, to|
|
28
27
|
next unless klass === exception
|
29
|
-
return route(to, env,
|
28
|
+
return route(to, env, exception)
|
30
29
|
end
|
31
30
|
|
32
31
|
raise(exception)
|
33
32
|
end
|
34
33
|
|
35
|
-
def route(to, env,
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
}
|
41
|
-
env.merge!(hash)
|
42
|
-
|
43
|
-
env['PATH_INFO'] = to
|
44
|
-
|
34
|
+
def route(to, env, exception)
|
35
|
+
env.merge!(
|
36
|
+
PATH_INFO => env['PATH_INFO'],
|
37
|
+
EXCEPTION => exception,
|
38
|
+
'PATH_INFO' => to)
|
45
39
|
call(env, try_again = false)
|
46
40
|
end
|
47
41
|
end
|
data/ramaze.gemspec
CHANGED
@@ -2,37 +2,84 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{ramaze}
|
5
|
-
s.version = "2009.
|
5
|
+
s.version = "2009.06.12"
|
6
6
|
|
7
|
-
s.required_rubygems_version = Gem::Requirement.new(">=
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 1.3.1") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Michael 'manveru' Fellinger"]
|
9
|
-
s.date = %q{2009-
|
9
|
+
s.date = %q{2009-06-12}
|
10
10
|
s.default_executable = %q{ramaze}
|
11
11
|
s.description = %q{Ramaze is a simple and modular web framework}
|
12
12
|
s.email = %q{m.fellinger@gmail.com}
|
13
13
|
s.executables = ["ramaze"]
|
14
|
-
s.files = [".mailmap", "CHANGELOG", "MANIFEST", "README.markdown", "Rakefile", "benchmark/results.txt", "benchmark/run.rb", "benchmark/suite/minimal.rb", "benchmark/suite/no_informer.rb", "benchmark/suite/no_sessions.rb", "benchmark/suite/no_template.rb", "benchmark/suite/simple.rb", "benchmark/suite/template_builder.rb", "benchmark/suite/template_erubis.rb", "benchmark/suite/template_ezamar.rb", "benchmark/suite/template_haml.rb", "benchmark/suite/template_liquid.rb", "benchmark/suite/template_markaby.rb", "benchmark/suite/template_nagoro.rb", "benchmark/suite/template_redcloth.rb", "benchmark/suite/template_tenjin.rb", "benchmark/test.rb", "bin/ramaze", "doc/AUTHORS", "doc/CHANGELOG", "doc/COPYING", "doc/FAQ", "doc/GPL", "doc/INSTALL", "doc/LEGAL", "doc/TODO", "doc/meta/announcement.txt", "doc/meta/configuration.txt", "doc/meta/internals.txt", "doc/meta/users.kml", "doc/tutorial/todolist.html", "doc/tutorial/todolist.mkd", "doc/tutorial/todolist.txt", "examples/app/auth/layout/auth.nag", "examples/app/auth/start.rb", "examples/app/auth/view/index.nag", "examples/app/auth/view/login.nag", "examples/app/auth/view/secret.nag", "examples/app/blog/README", "examples/app/blog/app.rb", "examples/app/blog/config.ru", "examples/app/blog/controller/comment.rb", "examples/app/blog/controller/entry.rb", "examples/app/blog/controller/init.rb", "examples/app/blog/controller/main.rb", "examples/app/blog/controller/tag.rb", "examples/app/blog/layout/default.nag", "examples/app/blog/model/comment.rb", "examples/app/blog/model/entry.rb", "examples/app/blog/model/init.rb", "examples/app/blog/model/tag.rb", "examples/app/blog/public/css/screen.css", "examples/app/blog/spec/blog.rb", "examples/app/blog/start.rb", "examples/app/blog/view/comment/form.nag", "examples/app/blog/view/comment/show.nag", "examples/app/blog/view/entry/edit.nag", "examples/app/blog/view/entry/feed.atom.nag", "examples/app/blog/view/entry/feed.rss.nag", "examples/app/blog/view/entry/index.nag", "examples/app/blog/view/entry/new.nag", "examples/app/blog/view/entry/show.nag", "examples/app/blog/view/feed.atom.nag", "examples/app/blog/view/feed.rss.nag", "examples/app/blog/view/index.nag", "examples/app/blog/view/tag/index.nag", "examples/app/chat/layout/default.nag", "examples/app/chat/model/history.rb", "examples/app/chat/model/message.rb", "examples/app/chat/public/css/chat.css", "examples/app/chat/public/js/chat.js", "examples/app/chat/public/js/jquery.js", "examples/app/chat/start.rb", "examples/app/chat/view/chat.nag", "examples/app/chat/view/index.nag", "examples/app/localization/start.rb", "examples/app/sourceview/public/coderay.css", "examples/app/sourceview/public/images/file.gif", "examples/app/sourceview/public/images/folder.gif", "examples/app/sourceview/public/images/tv-collapsable-last.gif", "examples/app/sourceview/public/images/tv-collapsable.gif", "examples/app/sourceview/public/images/tv-expandable-last.gif", "examples/app/sourceview/public/images/tv-expandable.gif", "examples/app/sourceview/public/images/tv-item-last.gif", "examples/app/sourceview/public/images/tv-item.gif", "examples/app/sourceview/public/jquery.js", "examples/app/sourceview/public/jquery.treeview.css", "examples/app/sourceview/public/jquery.treeview.js", "examples/app/sourceview/public/sourceview.js", "examples/app/sourceview/start.rb", "examples/app/sourceview/view/index.haml", "examples/app/todolist/controller/init.rb", "examples/app/todolist/controller/task.rb", "examples/app/todolist/layout/default.xhtml", "examples/app/todolist/model/init.rb", "examples/app/todolist/model/task.rb", "examples/app/todolist/public/css/screen.css", "examples/app/todolist/public/favicon.ico", "examples/app/todolist/start.rb", "examples/app/todolist/view/index.xhtml", "examples/app/upload/start.rb", "examples/app/upload/view/index.xhtml", "examples/app/whywiki/spec/whywiki.rb", "examples/app/whywiki/start.rb", "examples/app/whywiki/template/edit.xhtml", "examples/app/whywiki/template/show.xhtml", "examples/app/wikore/spec/wikore.rb", "examples/app/wikore/src/controller.rb", "examples/app/wikore/src/model.rb", "examples/app/wikore/start.rb", "examples/app/wikore/template/index.xhtml", "examples/app/wiktacular/README", "examples/app/wiktacular/mkd/link/2007-07-20_19-45-51.mkd", "examples/app/wiktacular/mkd/link/current.mkd", "examples/app/wiktacular/mkd/main/2007-07-20_16-31-33.mkd", "examples/app/wiktacular/mkd/main/2007-07-20_19-21-12.mkd", "examples/app/wiktacular/mkd/main/2007-07-20_19-23-10.mkd", "examples/app/wiktacular/mkd/main/2007-07-20_19-45-07.mkd", "examples/app/wiktacular/mkd/main/current.mkd", "examples/app/wiktacular/mkd/markdown/current.mkd", "examples/app/wiktacular/mkd/testing/2007-07-20_16-43-46.mkd", "examples/app/wiktacular/mkd/testing/2007-07-20_19-43-50.mkd", "examples/app/wiktacular/mkd/testing/2007-07-21_18-46-01.mkd", "examples/app/wiktacular/mkd/testing/2007-07-21_18-46-32.mkd", "examples/app/wiktacular/mkd/testing/2007-07-21_18-47-08.mkd", "examples/app/wiktacular/mkd/testing/2007-07-21_18-47-54.mkd", "examples/app/wiktacular/mkd/testing/current.mkd", "examples/app/wiktacular/public/favicon.ico", "examples/app/wiktacular/public/screen.css", "examples/app/wiktacular/spec/wiktacular.rb", "examples/app/wiktacular/src/controller.rb", "examples/app/wiktacular/src/model.rb", "examples/app/wiktacular/start.rb", "examples/app/wiktacular/template/edit.xhtml", "examples/app/wiktacular/template/html_layout.xhtml", "examples/app/wiktacular/template/index.xhtml", "examples/app/wiktacular/template/new.xhtml", "examples/basic/element.rb", "examples/basic/gestalt.rb", "examples/basic/hello.rb", "examples/basic/layout.rb", "examples/basic/linking.rb", "examples/basic/partial.rb", "examples/basic/simple.rb", "examples/helpers/cache.rb", "examples/helpers/form_with_sequel.rb", "examples/helpers/httpdigest.rb", "examples/helpers/identity.rb", "examples/helpers/nitro_form.rb", "examples/helpers/paginate.rb", "examples/helpers/provide.rb", "examples/helpers/rest.rb", "examples/helpers/simple_captcha.rb", "examples/misc/css.rb", "examples/misc/facebook.rb", "examples/misc/memleak_detector.rb", "examples/misc/nagoro_element.rb", "examples/misc/ramaise.rb", "examples/misc/rapp.rb", "examples/misc/sequel_scaffolding.rb", "examples/misc/serve_directory.rb", "examples/templates/template_erubis.rb", "examples/templates/template_ezamar.rb", "examples/templates/template_haml.rb", "examples/templates/template_liquid.rb", "examples/templates/template_markaby.rb", "examples/templates/template_nagoro.rb", "examples/templates/template_redcloth.rb", "examples/templates/template_remarkably.rb", "examples/templates/template_tenjin.rb", "examples/templates/view/external.haml", "examples/templates/view/external.liquid", "examples/templates/view/external.mab", "examples/templates/view/external.nag", "examples/templates/view/external.redcloth", "examples/templates/view/external.rem", "examples/templates/view/external.rhtml", "examples/templates/view/external.tenjin", "examples/templates/view/external.zmr", "lib/proto/config.ru", "lib/proto/controller/init.rb", "lib/proto/controller/main.rb", "lib/proto/layout/default.xhtml", "lib/proto/model/init.rb", "lib/proto/public/.htaccess", "lib/proto/public/css/screen.css", "lib/proto/public/dispatch.fcgi", "lib/proto/public/favicon.ico", "lib/proto/public/js/jquery.js", "lib/proto/public/ramaze.png", "lib/proto/spec/main.rb", "lib/proto/start.rb", "lib/proto/view/index.xhtml", "lib/proto/view/page.xhtml", "lib/ramaze.rb", "lib/ramaze/app.rb", "lib/ramaze/cache.rb", "lib/ramaze/cache/localmemcache.rb", "lib/ramaze/cache/memcache.rb", "lib/ramaze/cache/sequel.rb", "lib/ramaze/contrib/app_graph.rb", "lib/ramaze/contrib/email.rb", "lib/ramaze/contrib/facebook.rb", "lib/ramaze/contrib/facebook/facebook.rb", "lib/ramaze/contrib/gettext.rb", "lib/ramaze/contrib/gettext/mo.rb", "lib/ramaze/contrib/gettext/parser.rb", "lib/ramaze/contrib/gettext/po.rb", "lib/ramaze/contrib/gzip_filter.rb", "lib/ramaze/contrib/maruku_uv.rb", "lib/ramaze/contrib/profiling.rb", "lib/ramaze/contrib/rest.rb", "lib/ramaze/contrib/sequel/create_join.rb", "lib/ramaze/contrib/sequel/form_field.rb", "lib/ramaze/contrib/sequel/image.rb", "lib/ramaze/contrib/sequel/relation.rb", "lib/ramaze/controller.rb", "lib/ramaze/controller/default.rb", "lib/ramaze/current.rb", "lib/ramaze/files.rb", "lib/ramaze/gestalt.rb", "lib/ramaze/helper.rb", "lib/ramaze/helper/auth.rb", "lib/ramaze/helper/bench.rb", "lib/ramaze/helper/cache.rb", "lib/ramaze/helper/disqus.rb", "lib/ramaze/helper/flash.rb", "lib/ramaze/helper/form.rb", "lib/ramaze/helper/formatting.rb", "lib/ramaze/helper/gestalt.rb", "lib/ramaze/helper/gravatar.rb", "lib/ramaze/helper/httpdigest.rb", "lib/ramaze/helper/identity.rb", "lib/ramaze/helper/link.rb", "lib/ramaze/helper/localize.rb", "lib/ramaze/helper/markaby.rb", "lib/ramaze/helper/maruku.rb", "lib/ramaze/helper/nitroform.rb", "lib/ramaze/helper/pager.rb", "lib/ramaze/helper/paginate.rb", "lib/ramaze/helper/partial.rb", "lib/ramaze/helper/remarkably.rb", "lib/ramaze/helper/request_accessor.rb", "lib/ramaze/helper/sequel.rb", "lib/ramaze/helper/sequel_form.rb", "lib/ramaze/helper/simple_captcha.rb", "lib/ramaze/helper/stack.rb", "lib/ramaze/helper/tagz.rb", "lib/ramaze/helper/thread.rb", "lib/ramaze/helper/ultraviolet.rb", "lib/ramaze/helper/user.rb", "lib/ramaze/helper/xhtml.rb", "lib/ramaze/log.rb", "lib/ramaze/log/analogger.rb", "lib/ramaze/log/growl.rb", "lib/ramaze/log/hub.rb", "lib/ramaze/log/informer.rb", "lib/ramaze/log/knotify.rb", "lib/ramaze/log/logger.rb", "lib/ramaze/log/logging.rb", "lib/ramaze/log/rotatinginformer.rb", "lib/ramaze/log/syslog.rb", "lib/ramaze/log/xosd.rb", "lib/ramaze/middleware_compiler.rb", "lib/ramaze/plugin.rb", "lib/ramaze/reloader.rb", "lib/ramaze/reloader/watch_inotify.rb", "lib/ramaze/reloader/watch_stat.rb", "lib/ramaze/request.rb", "lib/ramaze/response.rb", "lib/ramaze/setup.rb", "lib/ramaze/snippets.rb", "lib/ramaze/snippets/array/put_within.rb", "lib/ramaze/snippets/binding/locals.rb", "lib/ramaze/snippets/blankslate.rb", "lib/ramaze/snippets/divide.rb", "lib/ramaze/snippets/fiber.rb", "lib/ramaze/snippets/kernel/constant.rb", "lib/ramaze/snippets/kernel/pretty_inspect.rb", "lib/ramaze/snippets/metaid.rb", "lib/ramaze/snippets/numeric/filesize_format.rb", "lib/ramaze/snippets/numeric/time.rb", "lib/ramaze/snippets/object/__dir__.rb", "lib/ramaze/snippets/object/acquire.rb", "lib/ramaze/snippets/object/instance_variable_defined.rb", "lib/ramaze/snippets/object/pretty.rb", "lib/ramaze/snippets/object/scope.rb", "lib/ramaze/snippets/ordered_set.rb", "lib/ramaze/snippets/proc/locals.rb", "lib/ramaze/snippets/ramaze/acquire.rb", "lib/ramaze/snippets/ramaze/deprecated.rb", "lib/ramaze/snippets/ramaze/dictionary.rb", "lib/ramaze/snippets/ramaze/fiber.rb", "lib/ramaze/snippets/ramaze/struct.rb", "lib/ramaze/snippets/string/camel_case.rb", "lib/ramaze/snippets/string/color.rb", "lib/ramaze/snippets/string/each.rb", "lib/ramaze/snippets/string/end_with.rb", "lib/ramaze/snippets/string/esc.rb", "lib/ramaze/snippets/string/ord.rb", "lib/ramaze/snippets/string/snake_case.rb", "lib/ramaze/snippets/string/start_with.rb", "lib/ramaze/snippets/string/unindent.rb", "lib/ramaze/snippets/thread/into.rb", "lib/ramaze/spec.rb", "lib/ramaze/spec/helper/bacon.rb", "lib/ramaze/spec/helper/pretty_output.rb", "lib/ramaze/spec/helper/snippets.rb", "lib/ramaze/spec/helper/template_examples.rb", "lib/ramaze/tool/create.rb", "lib/ramaze/tool/project_creator.rb", "lib/ramaze/version.rb", "lib/ramaze/view.rb", "lib/ramaze/view/erubis.rb", "lib/ramaze/view/ezamar.rb", "lib/ramaze/view/haml.rb", "lib/ramaze/view/liquid.rb", "lib/ramaze/view/maruku.rb", "lib/ramaze/view/nagoro.rb", "lib/ramaze/view/nagoro/render_partial.rb", "lib/ramaze/view/redcloth.rb", "lib/ramaze/view/remarkably.rb", "lib/ramaze/view/sass.rb", "lib/ramaze/view/tagz.rb", "lib/ramaze/view/tenjin.rb", "lib/vendor/etag.rb", "lib/vendor/route_exceptions.rb", "ramaze.gemspec", "spec/contrib/rest.rb", "spec/examples/caching.rb", "spec/examples/css.rb", "spec/examples/element.rb", "spec/examples/hello.rb", "spec/examples/helpers/httpdigest.rb", "spec/examples/linking.rb", "spec/examples/simple.rb", "spec/examples/templates/template_erubis.rb", "spec/examples/templates/template_ezamar.rb", "spec/examples/templates/template_haml.rb", "spec/examples/templates/template_liquid.rb", "spec/examples/templates/template_markaby.rb", "spec/examples/templates/template_nagoro.rb", "spec/examples/templates/template_redcloth.rb", "spec/examples/templates/template_remarkably.rb", "spec/examples/templates/template_tenjin.rb", "spec/helper.rb", "spec/ramaze/action/render.rb", "spec/ramaze/action/view/bar.xhtml", "spec/ramaze/action/view/instancevars/layout.xhtml", "spec/ramaze/action/view/other_wrapper.erb", "spec/ramaze/action/view/other_wrapper.xhtml", "spec/ramaze/action/view/single_wrapper.xhtml", "spec/ramaze/action/view/sub/sub_wrapper.erb", "spec/ramaze/action/view/sub/sub_wrapper.xhtml", "spec/ramaze/app.rb", "spec/ramaze/cache/localmemcache.rb", "spec/ramaze/cache/memcache.rb", "spec/ramaze/cache/sequel.rb", "spec/ramaze/controller/actionless_templates.rb", "spec/ramaze/controller/mapping.rb", "spec/ramaze/controller/provide_inheritance.rb", "spec/ramaze/controller/resolve.rb", "spec/ramaze/controller/subclass.rb", "spec/ramaze/controller/template_resolving.rb", "spec/ramaze/controller/view/bar.xhtml", "spec/ramaze/controller/view/base/another.xhtml", "spec/ramaze/controller/view/greet.xhtml", "spec/ramaze/controller/view/list.xhtml", "spec/ramaze/controller/view/other/greet/other.xhtml", "spec/ramaze/controller/view/other_wrapper.xhtml", "spec/ramaze/dispatcher/directory.rb", "spec/ramaze/dispatcher/file.rb", "spec/ramaze/dispatcher/public/favicon.ico", "spec/ramaze/dispatcher/public/file name.txt", "spec/ramaze/dispatcher/public/test_download.css", "spec/ramaze/error.rb", "spec/ramaze/files.rb", "spec/ramaze/files/public_1/plain.txt", "spec/ramaze/files/public_2/rich.txt", "spec/ramaze/gestalt.rb", "spec/ramaze/helper/auth.rb", "spec/ramaze/helper/bench.rb", "spec/ramaze/helper/cache.rb", "spec/ramaze/helper/flash.rb", "spec/ramaze/helper/form.rb", "spec/ramaze/helper/formatting.rb", "spec/ramaze/helper/gestalt.rb", "spec/ramaze/helper/gravatar.rb", "spec/ramaze/helper/httpdigest.rb", "spec/ramaze/helper/link.rb", "spec/ramaze/helper/localize.rb", "spec/ramaze/helper/maruku.rb", "spec/ramaze/helper/pager.rb", "spec/ramaze/helper/paginate.rb", "spec/ramaze/helper/partial.rb", "spec/ramaze/helper/request_accessor.rb", "spec/ramaze/helper/sequel_form.rb", "spec/ramaze/helper/simple_captcha.rb", "spec/ramaze/helper/stack.rb", "spec/ramaze/helper/user.rb", "spec/ramaze/helper/view/locals.xhtml", "spec/ramaze/helper/view/loop.xhtml", "spec/ramaze/helper/view/num.xhtml", "spec/ramaze/helper/view/partial.xhtml", "spec/ramaze/helper/view/recursive.xhtml", "spec/ramaze/helper/view/recursive_local_ivars.xhtml", "spec/ramaze/helper/view/recursive_locals.xhtml", "spec/ramaze/helper/view/test_template.xhtml", "spec/ramaze/helper/xhtml.rb", "spec/ramaze/log/informer.rb", "spec/ramaze/log/logging.rb", "spec/ramaze/log/syslog.rb", "spec/ramaze/params.rb", "spec/ramaze/public/favicon.ico", "spec/ramaze/public/ramaze.png", "spec/ramaze/public/test_download.css", "spec/ramaze/request.rb", "spec/ramaze/rewrite/file.css", "spec/ramaze/struct.rb", "spec/ramaze/template/ramaze/external.test", "spec/ramaze/view.rb", "spec/ramaze/view/erubis.rb", "spec/ramaze/view/erubis/external.rhtml", "spec/ramaze/view/erubis/sum.rhtml", "spec/ramaze/view/ezamar.rb", "spec/ramaze/view/ezamar/external.zmr", "spec/ramaze/view/ezamar/sum.zmr", "spec/ramaze/view/haml.rb", "spec/ramaze/view/haml/external.haml", "spec/ramaze/view/haml/sum.haml", "spec/ramaze/view/liquid.rb", "spec/ramaze/view/liquid/external.liquid", "spec/ramaze/view/liquid/sum.liquid", "spec/ramaze/view/nagoro.rb", "spec/ramaze/view/nagoro/external.nag", "spec/ramaze/view/nagoro/sum.nag", "spec/ramaze/view/redcloth.rb", "spec/ramaze/view/redcloth/external.redcloth", "spec/ramaze/view/remarkably.rb", "spec/ramaze/view/remarkably/external.rem", "spec/ramaze/view/remarkably/sum.rem", "spec/ramaze/view/sass.rb", "spec/ramaze/view/sass/file.css.sass", "spec/ramaze/view/tagz.rb", "spec/ramaze/view/tagz/external.tagz", "spec/ramaze/view/tagz/sum.tagz", "spec/ramaze/view/tenjin.rb", "spec/ramaze/view/tenjin/external.rbhtml", "spec/ramaze/view/tenjin/sum.rbhtml", "spec/snippets/array/put_within.rb", "spec/snippets/binding/locals.rb", "spec/snippets/kernel/constant.rb", "spec/snippets/numeric/filesize_format.rb", "spec/snippets/numeric/time.rb", "spec/snippets/object/__dir__.rb", "spec/snippets/ordered_set.rb", "spec/snippets/ramaze/acquire.rb", "spec/snippets/ramaze/dictionary.rb", "spec/snippets/ramaze/struct.rb", "spec/snippets/string/camel_case.rb", "spec/snippets/string/color.rb", "spec/snippets/string/snake_case.rb", "spec/snippets/string/unindent.rb", "spec/snippets/thread/into.rb", "tasks/authors.rake", "tasks/bacon.rake", "tasks/changelog.rake", "tasks/copyright.rake", "tasks/gem.rake", "tasks/gem_installer.rake", "tasks/git.rake", "tasks/grancher.rake", "tasks/install_dependencies.rake", "tasks/jquery.rake", "tasks/manifest.rake", "tasks/metric_changes.rake", "tasks/rcov.rake", "tasks/release.rake", "tasks/reversion.rake", "tasks/todo.rake", "tasks/traits.rake", "tasks/yard.rake"]
|
15
|
-
s.
|
16
|
-
s.homepage = %q{http://github.com/manveru/org}
|
14
|
+
s.files = [".gitignore", ".mailmap", "MANIFEST", "README.md", "Rakefile", "benchmark/bench_templates/bench.rb", "benchmark/bench_templates/view/large.erb", "benchmark/bench_templates/view/large.haml", "benchmark/bench_templates/view/large.xhtml", "benchmark/bench_templates/view/small.erb", "benchmark/bench_templates/view/small.haml", "benchmark/bench_templates/view/small.xhtml", "benchmark/results.txt", "benchmark/run.rb", "benchmark/suite/minimal.rb", "benchmark/suite/no_informer.rb", "benchmark/suite/no_sessions.rb", "benchmark/suite/no_template.rb", "benchmark/suite/simple.rb", "benchmark/suite/template_erubis.rb", "benchmark/suite/template_etanni.rb", "benchmark/suite/template_ezamar.rb", "benchmark/suite/template_haml.rb", "benchmark/suite/template_liquid.rb", "benchmark/suite/template_markaby.rb", "benchmark/suite/template_nagoro.rb", "benchmark/suite/template_redcloth.rb", "benchmark/suite/template_tenjin.rb", "benchmark/test.rb", "bin/ramaze", "doc/AUTHORS", "doc/CHANGELOG", "doc/COPYING", "doc/FAQ", "doc/GPL", "doc/INSTALL", "doc/LEGAL", "doc/TODO", "doc/meta/announcement.txt", "doc/meta/configuration.txt", "doc/meta/internals.txt", "doc/meta/users.kml", "doc/tutorial/todolist.html", "doc/tutorial/todolist.txt", "examples/app/auth/layout/auth.xhtml", "examples/app/auth/start.rb", "examples/app/auth/view/index.xhtml", "examples/app/auth/view/login.xhtml", "examples/app/auth/view/secret.xhtml", "examples/app/blog/README", "examples/app/blog/app.rb", "examples/app/blog/config.ru", "examples/app/blog/controller/comment.rb", "examples/app/blog/controller/entry.rb", "examples/app/blog/controller/init.rb", "examples/app/blog/controller/main.rb", "examples/app/blog/controller/tag.rb", "examples/app/blog/layout/default.nag", "examples/app/blog/model/comment.rb", "examples/app/blog/model/entry.rb", "examples/app/blog/model/init.rb", "examples/app/blog/model/tag.rb", "examples/app/blog/public/css/screen.css", "examples/app/blog/spec/blog.rb", "examples/app/blog/start.rb", "examples/app/blog/view/comment/form.nag", "examples/app/blog/view/comment/show.nag", "examples/app/blog/view/entry/edit.nag", "examples/app/blog/view/entry/feed.atom.nag", "examples/app/blog/view/entry/feed.rss.nag", "examples/app/blog/view/entry/index.nag", "examples/app/blog/view/entry/new.nag", "examples/app/blog/view/entry/show.nag", "examples/app/blog/view/feed.atom.nag", "examples/app/blog/view/feed.rss.nag", "examples/app/blog/view/index.nag", "examples/app/blog/view/tag/index.nag", "examples/app/chat/layout/default.xhtml", "examples/app/chat/model/history.rb", "examples/app/chat/model/message.rb", "examples/app/chat/public/css/chat.css", "examples/app/chat/public/js/chat.js", "examples/app/chat/public/js/jquery.js", "examples/app/chat/start.rb", "examples/app/chat/view/chat.xhtml", "examples/app/chat/view/index.xhtml", "examples/app/localization/locale/de.yaml", "examples/app/localization/locale/en.yaml", "examples/app/localization/locale/ja.yaml", "examples/app/localization/start.rb", "examples/app/sourceview/public/coderay.css", "examples/app/sourceview/public/images/file.gif", "examples/app/sourceview/public/images/folder.gif", "examples/app/sourceview/public/images/tv-collapsable-last.gif", "examples/app/sourceview/public/images/tv-collapsable.gif", "examples/app/sourceview/public/images/tv-expandable-last.gif", "examples/app/sourceview/public/images/tv-expandable.gif", "examples/app/sourceview/public/images/tv-item-last.gif", "examples/app/sourceview/public/images/tv-item.gif", "examples/app/sourceview/public/jquery.js", "examples/app/sourceview/public/jquery.treeview.css", "examples/app/sourceview/public/jquery.treeview.js", "examples/app/sourceview/public/sourceview.js", "examples/app/sourceview/start.rb", "examples/app/sourceview/view/index.haml", "examples/app/todolist/controller/init.rb", "examples/app/todolist/controller/task.rb", "examples/app/todolist/layout/default.xhtml", "examples/app/todolist/model/init.rb", "examples/app/todolist/model/task.rb", "examples/app/todolist/public/css/screen.css", "examples/app/todolist/public/favicon.ico", "examples/app/todolist/start.rb", "examples/app/todolist/view/index.xhtml", "examples/app/upload/start.rb", "examples/app/upload/view/index.xhtml", "examples/app/whywiki/spec/whywiki.rb", "examples/app/whywiki/start.rb", "examples/app/whywiki/template/edit.xhtml", "examples/app/whywiki/template/show.xhtml", "examples/app/wikore/spec/wikore.rb", "examples/app/wikore/src/controller.rb", "examples/app/wikore/src/model.rb", "examples/app/wikore/start.rb", "examples/app/wikore/view/index.xhtml", "examples/app/wiktacular/README", "examples/app/wiktacular/mkd/link/2007-07-20_19-45-51.mkd", "examples/app/wiktacular/mkd/link/current.mkd", "examples/app/wiktacular/mkd/main/2007-07-20_16-31-33.mkd", "examples/app/wiktacular/mkd/main/2007-07-20_19-21-12.mkd", "examples/app/wiktacular/mkd/main/2007-07-20_19-23-10.mkd", "examples/app/wiktacular/mkd/main/2007-07-20_19-45-07.mkd", "examples/app/wiktacular/mkd/main/current.mkd", "examples/app/wiktacular/mkd/markdown/current.mkd", "examples/app/wiktacular/mkd/testing/2007-07-20_16-43-46.mkd", "examples/app/wiktacular/mkd/testing/2007-07-20_19-43-50.mkd", "examples/app/wiktacular/mkd/testing/2007-07-21_18-46-01.mkd", "examples/app/wiktacular/mkd/testing/2007-07-21_18-46-32.mkd", "examples/app/wiktacular/mkd/testing/2007-07-21_18-47-08.mkd", "examples/app/wiktacular/mkd/testing/2007-07-21_18-47-54.mkd", "examples/app/wiktacular/mkd/testing/current.mkd", "examples/app/wiktacular/public/favicon.ico", "examples/app/wiktacular/public/screen.css", "examples/app/wiktacular/spec/wiktacular.rb", "examples/app/wiktacular/src/controller.rb", "examples/app/wiktacular/src/model.rb", "examples/app/wiktacular/start.rb", "examples/app/wiktacular/template/edit.xhtml", "examples/app/wiktacular/template/html_layout.xhtml", "examples/app/wiktacular/template/index.xhtml", "examples/app/wiktacular/template/new.xhtml", "examples/basic/element.rb", "examples/basic/gestalt.rb", "examples/basic/hello.rb", "examples/basic/layout.rb", "examples/basic/linking.rb", "examples/basic/partial.rb", "examples/basic/simple.rb", "examples/helpers/cache.rb", "examples/helpers/form_with_sequel.rb", "examples/helpers/httpdigest.rb", "examples/helpers/identity.rb", "examples/helpers/nitro_form.rb", "examples/helpers/paginate.rb", "examples/helpers/rest.rb", "examples/helpers/simple_captcha.rb", "examples/misc/css.rb", "examples/misc/facebook.rb", "examples/misc/memleak_detector.rb", "examples/misc/nagoro_element.rb", "examples/misc/ramaise.rb", "examples/misc/rapp.rb", "examples/misc/sequel_scaffolding.rb", "examples/misc/serve_directory.rb", "examples/templates/template_erubis.rb", "examples/templates/template_ezamar.rb", "examples/templates/template_haml.rb", "examples/templates/template_liquid.rb", "examples/templates/template_markaby.rb", "examples/templates/template_nagoro.rb", "examples/templates/template_redcloth.rb", "examples/templates/template_remarkably.rb", "examples/templates/template_tenjin.rb", "examples/templates/view/external.haml", "examples/templates/view/external.liquid", "examples/templates/view/external.mab", "examples/templates/view/external.nag", "examples/templates/view/external.redcloth", "examples/templates/view/external.rem", "examples/templates/view/external.rhtml", "examples/templates/view/external.tenjin", "examples/templates/view/external.zmr", "lib/proto/app.rb", "lib/proto/config.ru", "lib/proto/controller/init.rb", "lib/proto/controller/main.rb", "lib/proto/layout/default.xhtml", "lib/proto/model/init.rb", "lib/proto/public/.htaccess", "lib/proto/public/css/screen.css", "lib/proto/public/dispatch.fcgi", "lib/proto/public/favicon.ico", "lib/proto/public/js/jquery.js", "lib/proto/public/ramaze.png", "lib/proto/spec/main.rb", "lib/proto/start.rb", "lib/proto/view/index.xhtml", "lib/ramaze.rb", "lib/ramaze/app.rb", "lib/ramaze/cache.rb", "lib/ramaze/cache/localmemcache.rb", "lib/ramaze/cache/memcache.rb", "lib/ramaze/cache/sequel.rb", "lib/ramaze/contrib/addressable_route.rb", "lib/ramaze/contrib/app_graph.rb", "lib/ramaze/contrib/email.rb", "lib/ramaze/contrib/facebook.rb", "lib/ramaze/contrib/facebook/facebook.rb", "lib/ramaze/contrib/gettext.rb", "lib/ramaze/contrib/gettext/mo.rb", "lib/ramaze/contrib/gettext/parser.rb", "lib/ramaze/contrib/gettext/po.rb", "lib/ramaze/contrib/gzip_filter.rb", "lib/ramaze/contrib/maruku_uv.rb", "lib/ramaze/contrib/profiling.rb", "lib/ramaze/contrib/rest.rb", "lib/ramaze/contrib/sequel/create_join.rb", "lib/ramaze/contrib/sequel/form_field.rb", "lib/ramaze/contrib/sequel/image.rb", "lib/ramaze/contrib/sequel/relation.rb", "lib/ramaze/controller.rb", "lib/ramaze/controller/default.rb", "lib/ramaze/current.rb", "lib/ramaze/files.rb", "lib/ramaze/gestalt.rb", "lib/ramaze/helper.rb", "lib/ramaze/helper/auth.rb", "lib/ramaze/helper/bench.rb", "lib/ramaze/helper/cache.rb", "lib/ramaze/helper/disqus.rb", "lib/ramaze/helper/flash.rb", "lib/ramaze/helper/form.rb", "lib/ramaze/helper/formatting.rb", "lib/ramaze/helper/gestalt.rb", "lib/ramaze/helper/gravatar.rb", "lib/ramaze/helper/httpdigest.rb", "lib/ramaze/helper/identity.rb", "lib/ramaze/helper/layout.rb", "lib/ramaze/helper/link.rb", "lib/ramaze/helper/localize.rb", "lib/ramaze/helper/markaby.rb", "lib/ramaze/helper/maruku.rb", "lib/ramaze/helper/nitroform.rb", "lib/ramaze/helper/pager.rb", "lib/ramaze/helper/paginate.rb", "lib/ramaze/helper/partial.rb", "lib/ramaze/helper/remarkably.rb", "lib/ramaze/helper/request_accessor.rb", "lib/ramaze/helper/sequel.rb", "lib/ramaze/helper/sequel_form.rb", "lib/ramaze/helper/simple_captcha.rb", "lib/ramaze/helper/stack.rb", "lib/ramaze/helper/tagz.rb", "lib/ramaze/helper/thread.rb", "lib/ramaze/helper/ultraviolet.rb", "lib/ramaze/helper/user.rb", "lib/ramaze/helper/xhtml.rb", "lib/ramaze/log.rb", "lib/ramaze/log/analogger.rb", "lib/ramaze/log/growl.rb", "lib/ramaze/log/hub.rb", "lib/ramaze/log/informer.rb", "lib/ramaze/log/knotify.rb", "lib/ramaze/log/logger.rb", "lib/ramaze/log/logging.rb", "lib/ramaze/log/rotatinginformer.rb", "lib/ramaze/log/syslog.rb", "lib/ramaze/log/xosd.rb", "lib/ramaze/middleware_compiler.rb", "lib/ramaze/plugin.rb", "lib/ramaze/reloader.rb", "lib/ramaze/reloader/watch_inotify.rb", "lib/ramaze/reloader/watch_stat.rb", "lib/ramaze/request.rb", "lib/ramaze/response.rb", "lib/ramaze/setup.rb", "lib/ramaze/snippets.rb", "lib/ramaze/snippets/array/put_within.rb", "lib/ramaze/snippets/binding/locals.rb", "lib/ramaze/snippets/blankslate.rb", "lib/ramaze/snippets/fiber.rb", "lib/ramaze/snippets/kernel/pretty_inspect.rb", "lib/ramaze/snippets/metaid.rb", "lib/ramaze/snippets/numeric/filesize_format.rb", "lib/ramaze/snippets/numeric/time.rb", "lib/ramaze/snippets/object/__dir__.rb", "lib/ramaze/snippets/object/instance_variable_defined.rb", "lib/ramaze/snippets/object/pretty.rb", "lib/ramaze/snippets/object/scope.rb", "lib/ramaze/snippets/ordered_set.rb", "lib/ramaze/snippets/proc/locals.rb", "lib/ramaze/snippets/ramaze/acquire.rb", "lib/ramaze/snippets/ramaze/deprecated.rb", "lib/ramaze/snippets/ramaze/dictionary.rb", "lib/ramaze/snippets/ramaze/fiber.rb", "lib/ramaze/snippets/ramaze/struct.rb", "lib/ramaze/snippets/string/camel_case.rb", "lib/ramaze/snippets/string/color.rb", "lib/ramaze/snippets/string/end_with.rb", "lib/ramaze/snippets/string/esc.rb", "lib/ramaze/snippets/string/ord.rb", "lib/ramaze/snippets/string/snake_case.rb", "lib/ramaze/snippets/string/start_with.rb", "lib/ramaze/snippets/string/unindent.rb", "lib/ramaze/snippets/thread/into.rb", "lib/ramaze/spec.rb", "lib/ramaze/spec/bacon.rb", "lib/ramaze/spec/helper/bacon.rb", "lib/ramaze/spec/helper/pretty_output.rb", "lib/ramaze/spec/helper/snippets.rb", "lib/ramaze/spec/helper/template_examples.rb", "lib/ramaze/tool/bin.rb", "lib/ramaze/tool/create.rb", "lib/ramaze/tool/project_creator.rb", "lib/ramaze/version.rb", "lib/ramaze/view.rb", "lib/ramaze/view/erubis.rb", "lib/ramaze/view/ezamar.rb", "lib/ramaze/view/gestalt.rb", "lib/ramaze/view/haml.rb", "lib/ramaze/view/liquid.rb", "lib/ramaze/view/maruku.rb", "lib/ramaze/view/nagoro.rb", "lib/ramaze/view/nagoro/render_partial.rb", "lib/ramaze/view/redcloth.rb", "lib/ramaze/view/remarkably.rb", "lib/ramaze/view/sass.rb", "lib/ramaze/view/tagz.rb", "lib/ramaze/view/tenjin.rb", "lib/vendor/etag.rb", "lib/vendor/route_exceptions.rb", "ramaze.gemspec", "spec/contrib/addressable_route.rb", "spec/contrib/rest.rb", "spec/examples/caching.rb", "spec/examples/css.rb", "spec/examples/element.rb", "spec/examples/hello.rb", "spec/examples/helpers/httpdigest.rb", "spec/examples/linking.rb", "spec/examples/simple.rb", "spec/examples/templates/template_erubis.rb", "spec/examples/templates/template_ezamar.rb", "spec/examples/templates/template_haml.rb", "spec/examples/templates/template_liquid.rb", "spec/examples/templates/template_markaby.rb", "spec/examples/templates/template_nagoro.rb", "spec/examples/templates/template_redcloth.rb", "spec/examples/templates/template_remarkably.rb", "spec/examples/templates/template_tenjin.rb", "spec/helper.rb", "spec/ramaze/action/render.rb", "spec/ramaze/action/view/bar.xhtml", "spec/ramaze/action/view/instancevars/layout.xhtml", "spec/ramaze/action/view/other_wrapper.erb", "spec/ramaze/action/view/other_wrapper.xhtml", "spec/ramaze/action/view/single_wrapper.xhtml", "spec/ramaze/action/view/sub/sub_wrapper.erb", "spec/ramaze/action/view/sub/sub_wrapper.xhtml", "spec/ramaze/app.rb", "spec/ramaze/bin/ramaze.rb", "spec/ramaze/cache/localmemcache.rb", "spec/ramaze/cache/memcache.rb", "spec/ramaze/cache/sequel.rb", "spec/ramaze/controller/actionless_templates.rb", "spec/ramaze/controller/lonely_mapping.rb", "spec/ramaze/controller/mapping.rb", "spec/ramaze/controller/provide_inheritance.rb", "spec/ramaze/controller/resolve.rb", "spec/ramaze/controller/subclass.rb", "spec/ramaze/controller/template_resolving.rb", "spec/ramaze/controller/view/bar.xhtml", "spec/ramaze/controller/view/base/another.xhtml", "spec/ramaze/controller/view/greet.xhtml", "spec/ramaze/controller/view/list.xhtml", "spec/ramaze/controller/view/other/greet/other.xhtml", "spec/ramaze/controller/view/other_wrapper.xhtml", "spec/ramaze/dispatcher/directory.rb", "spec/ramaze/dispatcher/file.rb", "spec/ramaze/dispatcher/public/favicon.ico", "spec/ramaze/dispatcher/public/file name.txt", "spec/ramaze/dispatcher/public/test_download.css", "spec/ramaze/error.rb", "spec/ramaze/files.rb", "spec/ramaze/files/public_1/plain.txt", "spec/ramaze/files/public_2/rich.txt", "spec/ramaze/gestalt.rb", "spec/ramaze/helper/auth.rb", "spec/ramaze/helper/bench.rb", "spec/ramaze/helper/cache.rb", "spec/ramaze/helper/flash.rb", "spec/ramaze/helper/form.rb", "spec/ramaze/helper/formatting.rb", "spec/ramaze/helper/gestalt.rb", "spec/ramaze/helper/gravatar.rb", "spec/ramaze/helper/httpdigest.rb", "spec/ramaze/helper/layout.rb", "spec/ramaze/helper/layout/default.xhtml", "spec/ramaze/helper/link.rb", "spec/ramaze/helper/localize.rb", "spec/ramaze/helper/maruku.rb", "spec/ramaze/helper/pager.rb", "spec/ramaze/helper/paginate.rb", "spec/ramaze/helper/request_accessor.rb", "spec/ramaze/helper/sequel_form.rb", "spec/ramaze/helper/simple_captcha.rb", "spec/ramaze/helper/stack.rb", "spec/ramaze/helper/user.rb", "spec/ramaze/helper/view/locals.xhtml", "spec/ramaze/helper/view/loop.xhtml", "spec/ramaze/helper/view/num.xhtml", "spec/ramaze/helper/view/partial.xhtml", "spec/ramaze/helper/view/recursive.xhtml", "spec/ramaze/helper/view/recursive_local_ivars.xhtml", "spec/ramaze/helper/view/recursive_locals.xhtml", "spec/ramaze/helper/view/test_template.xhtml", "spec/ramaze/helper/xhtml.rb", "spec/ramaze/log/informer.rb", "spec/ramaze/log/logging.rb", "spec/ramaze/log/syslog.rb", "spec/ramaze/params.rb", "spec/ramaze/public/favicon.ico", "spec/ramaze/public/ramaze.png", "spec/ramaze/public/test_download.css", "spec/ramaze/request.rb", "spec/ramaze/rewrite/file.css", "spec/ramaze/session/memcache.rb", "spec/ramaze/struct.rb", "spec/ramaze/template/ramaze/external.test", "spec/ramaze/view.rb", "spec/ramaze/view/erubis.rb", "spec/ramaze/view/erubis/external.rhtml", "spec/ramaze/view/erubis/sum.rhtml", "spec/ramaze/view/ezamar.rb", "spec/ramaze/view/ezamar/external.zmr", "spec/ramaze/view/ezamar/sum.zmr", "spec/ramaze/view/gestalt.rb", "spec/ramaze/view/gestalt/external.ges", "spec/ramaze/view/haml.rb", "spec/ramaze/view/haml/external.haml", "spec/ramaze/view/haml/sum.haml", "spec/ramaze/view/liquid.rb", "spec/ramaze/view/liquid/external.liquid", "spec/ramaze/view/liquid/sum.liquid", "spec/ramaze/view/nagoro.rb", "spec/ramaze/view/nagoro/external.nag", "spec/ramaze/view/nagoro/sum.nag", "spec/ramaze/view/redcloth.rb", "spec/ramaze/view/redcloth/external.redcloth", "spec/ramaze/view/remarkably.rb", "spec/ramaze/view/remarkably/external.rem", "spec/ramaze/view/remarkably/sum.rem", "spec/ramaze/view/sass.rb", "spec/ramaze/view/sass/file.css.sass", "spec/ramaze/view/tagz.rb", "spec/ramaze/view/tagz/external.tagz", "spec/ramaze/view/tagz/sum.tagz", "spec/ramaze/view/tenjin.rb", "spec/ramaze/view/tenjin/external.rbhtml", "spec/ramaze/view/tenjin/sum.rbhtml", "spec/snippets/array/put_within.rb", "spec/snippets/binding/locals.rb", "spec/snippets/numeric/filesize_format.rb", "spec/snippets/numeric/time.rb", "spec/snippets/object/__dir__.rb", "spec/snippets/ordered_set.rb", "spec/snippets/ramaze/acquire.rb", "spec/snippets/ramaze/dictionary.rb", "spec/snippets/ramaze/struct.rb", "spec/snippets/string/camel_case.rb", "spec/snippets/string/color.rb", "spec/snippets/string/snake_case.rb", "spec/snippets/string/unindent.rb", "spec/snippets/thread/into.rb", "tasks/authors.rake", "tasks/bacon.rake", "tasks/changelog.rake", "tasks/copyright.rake", "tasks/gem.rake", "tasks/gem_setup.rake", "tasks/git.rake", "tasks/grancher.rake", "tasks/jquery.rake", "tasks/manifest.rake", "tasks/metric_changes.rake", "tasks/rcov.rake", "tasks/release.rake", "tasks/reversion.rake", "tasks/setup.rake", "tasks/todo.rake", "tasks/traits.rake", "tasks/yard.rake"]
|
15
|
+
s.homepage = %q{http://ramaze.net}
|
17
16
|
s.post_install_message = %q{============================================================
|
18
17
|
|
19
18
|
Thank you for installing Ramaze!
|
20
19
|
You can now do create a new project:
|
21
|
-
# ramaze
|
20
|
+
# ramaze create yourproject
|
22
21
|
|
23
22
|
============================================================}
|
24
23
|
s.require_paths = ["lib"]
|
25
24
|
s.rubyforge_project = %q{ramaze}
|
26
|
-
s.rubygems_version = %q{1.3.
|
25
|
+
s.rubygems_version = %q{1.3.4}
|
27
26
|
s.summary = %q{Ramaze is a simple and modular web framework}
|
28
27
|
|
29
28
|
if s.respond_to? :specification_version then
|
30
29
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
31
|
-
s.specification_version =
|
30
|
+
s.specification_version = 3
|
32
31
|
|
33
32
|
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
33
|
+
s.add_runtime_dependency(%q<innate>, ["= 2009.06.12"])
|
34
|
+
s.add_development_dependency(%q<Remarkably>, ["~> 0.5.2"])
|
35
|
+
s.add_development_dependency(%q<bacon>, [">= 1.1.0"])
|
36
|
+
s.add_development_dependency(%q<erubis>, [">= 2.6.4"])
|
37
|
+
s.add_development_dependency(%q<ezamar>, [">= 2009.06"])
|
38
|
+
s.add_development_dependency(%q<haml>, ["~> 2.0.9"])
|
39
|
+
s.add_development_dependency(%q<hpricot>, [">= 0.8.1"])
|
40
|
+
s.add_development_dependency(%q<json>, [">= 1.1.6"])
|
41
|
+
s.add_development_dependency(%q<liquid>, ["~> 2.0.0"])
|
42
|
+
s.add_development_dependency(%q<localmemcache>, ["~> 0.4.0"])
|
43
|
+
s.add_development_dependency(%q<memcache-client>, ["~> 1.7.2"])
|
44
|
+
s.add_development_dependency(%q<nagoro>, [">= 2009.05"])
|
45
|
+
s.add_development_dependency(%q<rack-test>, [">= 0.3.0"])
|
46
|
+
s.add_development_dependency(%q<sequel>, ["= 3.1.0"])
|
47
|
+
s.add_development_dependency(%q<tagz>, [">= 5.0.1"])
|
48
|
+
s.add_development_dependency(%q<tenjin>, ["~> 0.6.1"])
|
34
49
|
else
|
50
|
+
s.add_dependency(%q<innate>, ["= 2009.06.12"])
|
51
|
+
s.add_dependency(%q<Remarkably>, ["~> 0.5.2"])
|
52
|
+
s.add_dependency(%q<bacon>, [">= 1.1.0"])
|
53
|
+
s.add_dependency(%q<erubis>, [">= 2.6.4"])
|
54
|
+
s.add_dependency(%q<ezamar>, [">= 2009.06"])
|
55
|
+
s.add_dependency(%q<haml>, ["~> 2.0.9"])
|
56
|
+
s.add_dependency(%q<hpricot>, [">= 0.8.1"])
|
57
|
+
s.add_dependency(%q<json>, [">= 1.1.6"])
|
58
|
+
s.add_dependency(%q<liquid>, ["~> 2.0.0"])
|
59
|
+
s.add_dependency(%q<localmemcache>, ["~> 0.4.0"])
|
60
|
+
s.add_dependency(%q<memcache-client>, ["~> 1.7.2"])
|
61
|
+
s.add_dependency(%q<nagoro>, [">= 2009.05"])
|
62
|
+
s.add_dependency(%q<rack-test>, [">= 0.3.0"])
|
63
|
+
s.add_dependency(%q<sequel>, ["= 3.1.0"])
|
64
|
+
s.add_dependency(%q<tagz>, [">= 5.0.1"])
|
65
|
+
s.add_dependency(%q<tenjin>, ["~> 0.6.1"])
|
35
66
|
end
|
36
67
|
else
|
68
|
+
s.add_dependency(%q<innate>, ["= 2009.06.12"])
|
69
|
+
s.add_dependency(%q<Remarkably>, ["~> 0.5.2"])
|
70
|
+
s.add_dependency(%q<bacon>, [">= 1.1.0"])
|
71
|
+
s.add_dependency(%q<erubis>, [">= 2.6.4"])
|
72
|
+
s.add_dependency(%q<ezamar>, [">= 2009.06"])
|
73
|
+
s.add_dependency(%q<haml>, ["~> 2.0.9"])
|
74
|
+
s.add_dependency(%q<hpricot>, [">= 0.8.1"])
|
75
|
+
s.add_dependency(%q<json>, [">= 1.1.6"])
|
76
|
+
s.add_dependency(%q<liquid>, ["~> 2.0.0"])
|
77
|
+
s.add_dependency(%q<localmemcache>, ["~> 0.4.0"])
|
78
|
+
s.add_dependency(%q<memcache-client>, ["~> 1.7.2"])
|
79
|
+
s.add_dependency(%q<nagoro>, [">= 2009.05"])
|
80
|
+
s.add_dependency(%q<rack-test>, [">= 0.3.0"])
|
81
|
+
s.add_dependency(%q<sequel>, ["= 3.1.0"])
|
82
|
+
s.add_dependency(%q<tagz>, [">= 5.0.1"])
|
83
|
+
s.add_dependency(%q<tenjin>, ["~> 0.6.1"])
|
37
84
|
end
|
38
85
|
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require File.expand_path('../../../spec/helper', __FILE__)
|
2
|
+
require 'ramaze/contrib/addressable_route'
|
3
|
+
|
4
|
+
class SpecAddressableRoute < Ramaze::Controller
|
5
|
+
map '/'
|
6
|
+
|
7
|
+
def order__show(*args)
|
8
|
+
[args, request.params].inspect
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
describe 'addressable routing' do
|
13
|
+
behaves_like :rack_test
|
14
|
+
|
15
|
+
Ramaze.middleware! :spec do |m|
|
16
|
+
m.use(Ramaze::AddressableRoute,
|
17
|
+
'/customer/{customer_id}/order/{order_id}' => '/order/show')
|
18
|
+
m.run Ramaze::AppMap
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'should route based on URI template' do
|
22
|
+
body = eval(get('/customer/12/order/15').body)
|
23
|
+
body.should == [[], {'customer_id' => '12', 'order_id' => '15'}]
|
24
|
+
end
|
25
|
+
|
26
|
+
it "should not route URIs that don't match" do
|
27
|
+
get('/order/nothing/15')
|
28
|
+
last_response.status.should == 404
|
29
|
+
end
|
30
|
+
end
|