manveru-ramaze 2009.04.18 → 2009.04.22

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,3 +1,59 @@
1
+ [711c5df | Tue Apr 21 16:11:37 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
2
+
3
+ * strip some whitespace
4
+
5
+ [f65b9a6 | Mon Apr 20 15:25:27 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
6
+
7
+ * Relax Liquid input
8
+
9
+ [e81a073 | Mon Apr 20 15:25:09 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
10
+
11
+ * Allow access to Ramaze::View::get
12
+
13
+ [d18060d | Mon Apr 20 15:24:55 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
14
+
15
+ * Make methods of Helper::Formatting module-functions
16
+
17
+ [ea15f87 | Sun Apr 19 14:02:43 UTC 2009] Ryan Grove <ryan@wonko.com>
18
+
19
+ * Fix collisions when caching methods with the same name across multiple controllers and add support for a block parameter that returns a key value to make cache_action work as expected.
20
+
21
+ [9bf2985 | Mon Apr 20 05:13:15 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
22
+
23
+ * Require sequel/extensions/inflector to get rid of silly warning
24
+
25
+ [81e6bdb | Mon Apr 20 05:11:26 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
26
+
27
+ * Show unhelpful comment for the blog trackback until someone shows me how it's done
28
+
29
+ [648acce | Mon Apr 20 05:02:17 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
30
+
31
+ * We shouldn't use partial_content, use render_partial instead
32
+
33
+ [0ef8bb7 | Mon Apr 20 04:59:40 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
34
+
35
+ * Minor improvments and some comments for Liquid engine
36
+
37
+ [15a6c75 | Mon Apr 20 04:59:19 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
38
+
39
+ * Bring blog example up to date
40
+
41
+ [986ae27 | Sun Apr 19 15:24:08 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
42
+
43
+ * Fix wikore example, i wonder whether this is worth keeping
44
+
45
+ [7f478c3 | Sun Apr 19 02:17:01 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
46
+
47
+ * Fix auth example
48
+
49
+ [48adcf6 | Sat Apr 18 02:44:03 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
50
+
51
+ * It should be `ramaze create` now
52
+
53
+ [3951076 | Sat Apr 18 02:29:13 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
54
+
55
+ * Version 2009.04.18
56
+
1
57
  [afb3336 | Sat Apr 18 02:28:37 UTC 2009] Michael Fellinger <m.fellinger@gmail.com>
2
58
 
3
59
  * Improve tasks a bit
data/MANIFEST CHANGED
@@ -36,11 +36,11 @@ doc/meta/users.kml
36
36
  doc/tutorial/todolist.html
37
37
  doc/tutorial/todolist.mkd
38
38
  doc/tutorial/todolist.txt
39
- examples/app/auth/layout/auth.nag
39
+ examples/app/auth/layout/auth.xhtml
40
40
  examples/app/auth/start.rb
41
- examples/app/auth/view/index.nag
42
- examples/app/auth/view/login.nag
43
- examples/app/auth/view/secret.nag
41
+ examples/app/auth/view/index.xhtml
42
+ examples/app/auth/view/login.xhtml
43
+ examples/app/auth/view/secret.xhtml
44
44
  examples/app/blog/README
45
45
  examples/app/blog/app.rb
46
46
  examples/app/blog/config.ru
@@ -113,7 +113,7 @@ examples/app/wikore/spec/wikore.rb
113
113
  examples/app/wikore/src/controller.rb
114
114
  examples/app/wikore/src/model.rb
115
115
  examples/app/wikore/start.rb
116
- examples/app/wikore/template/index.xhtml
116
+ examples/app/wikore/view/index.xhtml
117
117
  examples/app/wiktacular/README
118
118
  examples/app/wiktacular/mkd/link/2007-07-20_19-45-51.mkd
119
119
  examples/app/wiktacular/mkd/link/current.mkd
data/Rakefile CHANGED
@@ -61,7 +61,7 @@ GEMSPEC = Gem::Specification.new{|s|
61
61
 
62
62
  Thank you for installing Ramaze!
63
63
  You can now do create a new project:
64
- # ramaze --create yourproject
64
+ # ramaze create yourproject
65
65
 
66
66
  ============================================================
67
67
  MESSAGE
data/bin/ramaze CHANGED
@@ -95,7 +95,7 @@ end
95
95
  def stop(command)
96
96
  unless pid_file = find_pid(OURARGS[OURARGS.index(command) + 1])
97
97
  $stderr.puts "No pid_file found! Cannot stop ramaze (may not be started)."
98
- return false
98
+ return false
99
99
  end
100
100
  pid = File.read(pid_file).to_i
101
101
  puts "Stopping pid #{pid}"
File without changes
File without changes
File without changes
File without changes
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
  require 'ramaze'
3
3
 
4
4
  Ramaze.setup :verbose => true do
5
- gem 'sequel', '2.11.0'
5
+ gem 'sequel', '2.12.0'
6
6
  gem 'maruku', '0.5.9'
7
7
  end
8
8
 
@@ -23,7 +23,7 @@ module Blog
23
23
  if @comment.update(@entry, request)
24
24
  redirect @comment.href
25
25
  else
26
- partial_content(:form, :comment => @comment, :entry => @entry)
26
+ render_partial(:form, :comment => @comment, :entry => @entry)
27
27
  end
28
28
  end
29
29
 
@@ -25,9 +25,6 @@ module Blog
25
25
  @comment_count = number_counter(@entry.comments.count, 'comment')
26
26
  end
27
27
 
28
- def feed
29
- end
30
-
31
28
  def edit(slug)
32
29
  login_required
33
30
  @entry = Entry.from_slug(slug)
@@ -61,6 +58,18 @@ module Blog
61
58
  Entry.from_slug(slug).destroy
62
59
  end
63
60
 
61
+ def trackback(slug)
62
+ render_partial(:index){|a|
63
+ a.method = :index
64
+ a.params << slug
65
+ } + <<-COMMENT.strip
66
+ I really have not the faintest idea about what this is supposed to do.<br />
67
+ People tell me it's broken, but nobody tells me how to fix it :)<br />
68
+ For now I'll just use it to show off how to modify an action that requires a
69
+ method parameter.
70
+ COMMENT
71
+ end
72
+
64
73
  private
65
74
 
66
75
  def fetch_tags
@@ -1,10 +1,15 @@
1
1
  require 'sequel'
2
+ require 'sequel/extensions/inflector'
2
3
 
3
4
  module Blog
4
5
  DB = Sequel.sqlite("#{__DIR__}/../blog.db")
5
6
  # DB = Sequel.connect("sqlite:///#{__DIR__}/../blog.db")
6
7
  end
7
8
 
9
+ Sequel::Model.plugin :validation_class_methods
10
+ Sequel::Model.plugin :schema
11
+ Sequel::Model.plugin :hook_class_methods
12
+
8
13
  require 'model/tag'
9
14
  require 'model/entry'
10
15
  require 'model/comment'
@@ -7,8 +7,8 @@ module Blog
7
7
  foreign_key :tag_id
8
8
  end
9
9
 
10
- belongs_to :entry, :class => 'Blog::Entry'
11
- belongs_to :tag, :class => 'Blog::Tag'
10
+ many_to_one :entry, :class => 'Blog::Entry'
11
+ many_to_one :tag, :class => 'Blog::Tag'
12
12
 
13
13
  create_table unless table_exists?
14
14
  end
@@ -1,7 +1,7 @@
1
- #{ Blog::Entries.partial_content(:show, :entry => @entry) }
1
+ #{ Blog::Entries.render_partial(:show, :entry => @entry) }
2
2
  <div id="comments" class="comments">
3
3
  <?r @entry.comments.each do |comment| ?>
4
- #{ Blog::Comments.partial_content(:show, :comment => comment) }
4
+ #{ Blog::Comments.render_partial(:show, :comment => comment) }
5
5
  <?r end ?>
6
- #{ Blog::Comments.partial_content(:form, :entry => @entry) }
6
+ #{ Blog::Comments.render_partial(:form, :entry => @entry) }
7
7
  </div>
@@ -13,6 +13,6 @@
13
13
  <id>#{ "#{ Blog.options.uuid }/atom" }</id>
14
14
  <generator uri='#{ @generator_uri }'>#{ @generator }</generator>
15
15
  <?r @entries.each do |entry| ?>
16
- #{ Blog::Entries.partial_content('feed.atom', :entry => entry) }
16
+ #{ Blog::Entries.render_partial('feed.atom', :entry => entry) }
17
17
  <?end ?>
18
18
  </feed>
@@ -19,7 +19,7 @@
19
19
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
20
20
  <ttl>240</ttl>
21
21
  <?r @entries.each do |entry| ?>
22
- #{ Blog::Entries.partial_content('feed.rss', :entry => entry) }
22
+ #{ Blog::Entries.render_partial('feed.rss', :entry => entry) }
23
23
  <?r end ?>
24
24
  </channel>
25
25
  </rss>
@@ -1,6 +1,6 @@
1
1
  <div id="entries">
2
2
  <?r @pager.each do |entry| ?>
3
- #{Blog::Entries.partial_content(:show, :entry => entry)}
3
+ #{Blog::Entries.render_partial(:show, :entry => entry)}
4
4
  <?r end ?>
5
5
  #{ @pager.navigation if @pager.needed? }
6
6
  </div>
@@ -1,5 +1,5 @@
1
1
  <?r @tags.each do |tag| ?>
2
2
  <?r tag.entries.each do |entry| ?>
3
- #{Blog::Entries.partial_content(:show, :entry => entry)}
3
+ #{Blog::Entries.render_partial(:show, :entry => entry)}
4
4
  <?r end ?>
5
5
  <?r end ?>
@@ -1,20 +1,18 @@
1
1
  require 'ramaze'
2
- require 'ramaze/spec/helper'
2
+ require 'ramaze/spec'
3
3
 
4
- spec_require 'hpricot', 'sequel'
4
+ spec_requires 'hpricot', 'sequel'
5
5
 
6
6
  $LOAD_PATH.unshift base = __DIR__('..')
7
7
  require 'start'
8
8
 
9
9
  describe 'Wikore' do
10
- behaves_like 'http'
11
- ramaze :public_root => base/:public,
12
- :view_root => base/:template
10
+ behaves_like :mock
13
11
 
14
12
  def check_redirect(to = '/')
15
13
  response = yield
16
14
  response.status.should == 302
17
- response.body.should =~ /<a href="#{to}">/
15
+ response.body.should =~ /<a href='.*#{to}'>/
18
16
  end
19
17
 
20
18
  def page_should_exist(name, *matches)
@@ -18,26 +18,28 @@ class MainController < Ramaze::Controller
18
18
  end
19
19
  end
20
20
 
21
- class PageController < Ramaze::Controller
21
+ class Pages < Ramaze::Controller
22
22
  map '/page'
23
23
 
24
- helper :aspect
25
-
26
24
  def create
25
+ redirect_referer unless request.post?
26
+
27
27
  change "Created Page '%s'" do |title, text|
28
28
  Page.create(:title => title, :text => text, :version => 1)
29
- redirect R(MainController, title)
29
+ redirect MainController.r(:/, title)
30
30
  end
31
31
  end
32
32
 
33
33
  def save
34
+ redirect_referer unless request.post?
35
+
34
36
  change "Updated Page '%s'" do |title, text|
35
37
  page = Page[:title => title]
36
38
  page.backup
37
39
  page.text = text
38
40
  page.version += 1
39
41
  page.save
40
- redirect R(MainController, title)
42
+ redirect MainController.r(:/, title)
41
43
  end
42
44
  end
43
45
 
@@ -60,11 +62,7 @@ class PageController < Ramaze::Controller
60
62
  def revert(title)
61
63
  page = Page[:title => title]
62
64
  page.revert
63
- redirect R(MainController, title)
64
- end
65
-
66
- before :create, :save do
67
- redirect_referer unless request.post?
65
+ redirect MainController.r(:/, title)
68
66
  end
69
67
 
70
68
  private
@@ -75,6 +73,6 @@ class PageController < Ramaze::Controller
75
73
  message % title
76
74
  end
77
75
 
78
- redirect(R(MainController, redirect_to))
76
+ redirect MainController.r(redirect_to)
79
77
  end
80
78
  end
@@ -1,17 +1,14 @@
1
1
  require 'sequel'
2
2
 
3
- begin
4
- case $wikore_db
5
- when :memory
6
- DB = Sequel.sqlite
7
- else
8
- DB_FILE = __DIR__('wikore.db')
9
- DB = Sequel.connect("sqlite://#{DB_FILE}")
10
- end
11
- rescue NoMethodError
12
- raise LoadError, 'Install latest Sequel gem'
3
+ if $wikore_db == :memory
4
+ DB = Sequel.sqlite
5
+ else
6
+ DB_FILE = __DIR__('wikore.db')
7
+ DB = Sequel.connect("sqlite://#{DB_FILE}")
13
8
  end
14
9
 
10
+ Sequel::Model.plugin :schema
11
+
15
12
  module Model
16
13
  PAGE_SCHEMA = lambda{
17
14
  primary_key :id
@@ -6,4 +6,4 @@ $wikore = {}
6
6
  require 'src/model'
7
7
  require 'src/controller'
8
8
 
9
- Ramaze.start
9
+ Ramaze.start :file => __FILE__
File without changes
@@ -31,13 +31,16 @@ module Ramaze
31
31
  temp = cache_action.dup
32
32
  ttl = temp.delete(:ttl)
33
33
 
34
+ cache_key = "#{action.node.name}_#{temp[:method].to_s}"
35
+ cache_key << "_#{temp.delete(:key).call.to_s}" if temp[:key]
36
+
34
37
  if temp.all?{|key, value| action[key] == value }
35
- if cached = cache[temp]
38
+ if cached = cache[cache_key]
36
39
  return cached
37
40
  elsif ttl
38
- return cache.store(temp, yield, :ttl => ttl)
41
+ return cache.store(cache_key, yield, :ttl => ttl)
39
42
  else
40
- return cache.store(temp, yield)
43
+ return cache.store(cache_key, yield)
41
44
  end
42
45
  end
43
46
  end
@@ -67,7 +70,8 @@ module Ramaze
67
70
  cache_action(hash.merge(:method => name))
68
71
  end
69
72
 
70
- def cache_action(hash)
73
+ def cache_action(hash, &block)
74
+ hash[:key] = block if block_given?
71
75
  hash[:method] = hash[:method].to_s
72
76
  trait[:cache_action] << hash
73
77
  end
@@ -3,6 +3,8 @@
3
3
 
4
4
  module Ramaze
5
5
  module Helper::Formatting
6
+ module_function
7
+
6
8
  FORMATTING_NUMBER_COUNTER = { 0 => 'no', 2 => 'two', 3 => 'three',
7
9
  4 => 'four', 5 => 'five', 6 => 'six', 7 => 'seven', 8 => 'eight',
8
10
  9 => 'nine', 10 => 'ten' }
@@ -1,3 +1,3 @@
1
1
  module Ramaze
2
- VERSION = "2009.04.18"
2
+ VERSION = "2009.04.22"
3
3
  end
data/lib/ramaze/view.rb CHANGED
@@ -9,6 +9,10 @@ module Ramaze
9
9
  module View
10
10
  extend Innate::View
11
11
 
12
+ def self.get(*args)
13
+ Innate::View.get(*args)
14
+ end
15
+
12
16
  # Combine Kernel#autoload and Innate::View::register
13
17
 
14
18
  def self.auto_register(name, *exts)
@@ -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
- instance.instance_variables.each do |iv|
14
- instance_variables[iv.to_s[1..-1]] = instance.instance_variable_get(iv)
15
- end
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
- template = ::Liquid::Template.parse(string)
18
- html = template.render(instance_variables)
54
+ template = ::Liquid::Template.parse(string.to_s)
55
+ html = template.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/ramaze.gemspec CHANGED
@@ -2,23 +2,23 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{ramaze}
5
- s.version = "2009.04.18"
5
+ s.version = "2009.04.22"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Michael 'manveru' Fellinger"]
9
- s.date = %q{2009-04-18}
9
+ s.date = %q{2009-04-22}
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/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/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/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/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/setup.rake", "tasks/todo.rake", "tasks/traits.rake", "tasks/yard.rake"]
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.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.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/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/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/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/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/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/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/setup.rake", "tasks/todo.rake", "tasks/traits.rake", "tasks/yard.rake"]
15
15
  s.has_rdoc = true
16
16
  s.homepage = %q{http://github.com/manveru/org}
17
17
  s.post_install_message = %q{============================================================
18
18
 
19
19
  Thank you for installing Ramaze!
20
20
  You can now do create a new project:
21
- # ramaze --create yourproject
21
+ # ramaze create yourproject
22
22
 
23
23
  ============================================================}
24
24
  s.require_paths = ["lib"]
@@ -36,9 +36,9 @@ end
36
36
  class SpecHelperCacheKey < Ramaze::Controller
37
37
  map '/key'
38
38
  helper :cache
39
- cache_action(:method => :name){ request[:name] }
39
+ cache_action(:method => :index){ request[:name] }
40
40
 
41
- def name
41
+ def index
42
42
  "hi #{request['name']} #{rand}"
43
43
  end
44
44
  end
@@ -81,4 +81,16 @@ describe Ramaze::Helper::Cache do
81
81
 
82
82
  lambda{ sleep 1; get('/ttl').body }.should.change{ get('/ttl').body }
83
83
  end
84
+
85
+ it 'caches actions with block keys' do
86
+ 2.times do
87
+ lambda{ get('/key?name=foo').body }.should.not.change{ get('/key?name=foo').body }
88
+ end
89
+
90
+ get('/key?name=foo').body.should.not == get('/key?name=bar').body
91
+ end
92
+
93
+ it 'caches actions on a per-controller basis' do
94
+ get('/ttl').body.should.not == get('/key').body
95
+ end
84
96
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: manveru-ramaze
3
3
  version: !ruby/object:Gem::Version
4
- version: 2009.04.18
4
+ version: 2009.04.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael 'manveru' Fellinger
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-04-18 00:00:00 -07:00
12
+ date: 2009-04-22 00:00:00 -07:00
13
13
  default_executable: ramaze
14
14
  dependencies: []
15
15
 
@@ -60,11 +60,11 @@ files:
60
60
  - doc/tutorial/todolist.html
61
61
  - doc/tutorial/todolist.mkd
62
62
  - doc/tutorial/todolist.txt
63
- - examples/app/auth/layout/auth.nag
63
+ - examples/app/auth/layout/auth.xhtml
64
64
  - examples/app/auth/start.rb
65
- - examples/app/auth/view/index.nag
66
- - examples/app/auth/view/login.nag
67
- - examples/app/auth/view/secret.nag
65
+ - examples/app/auth/view/index.xhtml
66
+ - examples/app/auth/view/login.xhtml
67
+ - examples/app/auth/view/secret.xhtml
68
68
  - examples/app/blog/README
69
69
  - examples/app/blog/app.rb
70
70
  - examples/app/blog/config.ru
@@ -137,7 +137,7 @@ files:
137
137
  - examples/app/wikore/src/controller.rb
138
138
  - examples/app/wikore/src/model.rb
139
139
  - examples/app/wikore/start.rb
140
- - examples/app/wikore/template/index.xhtml
140
+ - examples/app/wikore/view/index.xhtml
141
141
  - examples/app/wiktacular/README
142
142
  - examples/app/wiktacular/mkd/link/2007-07-20_19-45-51.mkd
143
143
  - examples/app/wiktacular/mkd/link/current.mkd
@@ -515,7 +515,7 @@ post_install_message: |-
515
515
 
516
516
  Thank you for installing Ramaze!
517
517
  You can now do create a new project:
518
- # ramaze --create yourproject
518
+ # ramaze create yourproject
519
519
 
520
520
  ============================================================
521
521
  rdoc_options: []