ramaze 2011.07.25 → 2011.10.23

Sign up to get free protection for your applications and to get access to all the features.
Files changed (181) hide show
  1. data/.gitignore +3 -0
  2. data/.mailmap +3 -2
  3. data/.travis.yml +17 -0
  4. data/.yardopts +13 -0
  5. data/README.md +95 -352
  6. data/examples/app/blog/app.rb +25 -64
  7. data/examples/app/blog/config.ru +11 -9
  8. data/examples/app/blog/controller/init.rb +29 -86
  9. data/examples/app/blog/controller/posts.rb +232 -0
  10. data/examples/app/blog/controller/users.rb +160 -0
  11. data/examples/app/blog/layout/default.xhtml +61 -0
  12. data/examples/app/blog/migrations/01_create_schema.rb +50 -0
  13. data/examples/app/blog/model/comment.rb +41 -54
  14. data/examples/app/blog/model/init.rb +41 -13
  15. data/examples/app/blog/model/post.rb +35 -0
  16. data/examples/app/blog/model/user.rb +105 -0
  17. data/examples/app/blog/public/.htaccess +24 -0
  18. data/examples/app/blog/public/css/grid.css +107 -0
  19. data/examples/app/blog/public/css/layout.css +203 -0
  20. data/examples/app/blog/public/css/reset.css +123 -0
  21. data/examples/app/blog/public/css/text.css +109 -0
  22. data/examples/app/blog/public/dispatch.fcgi +11 -0
  23. data/examples/app/blog/public/favicon.ico +0 -0
  24. data/examples/app/blog/public/images/bg.png +0 -0
  25. data/examples/app/blog/start.rb +18 -3
  26. data/examples/app/blog/view/feed.xhtml +23 -0
  27. data/examples/app/blog/view/form.xhtml +11 -0
  28. data/examples/app/blog/view/index.xhtml +44 -0
  29. data/examples/app/blog/view/users/form.xhtml +12 -0
  30. data/examples/app/blog/view/users/index.xhtml +30 -0
  31. data/examples/app/blog/view/users/login.xhtml +8 -0
  32. data/examples/app/blog/view/view.xhtml +68 -0
  33. data/{doc → guide}/AUTHORS +5 -3
  34. data/{doc → guide}/CHANGELOG +428 -0
  35. data/{doc/GPL → guide/GPL_LICENSE} +0 -0
  36. data/{doc/COPYING → guide/RUBY_LICENSE} +3 -6
  37. data/guide/_static/logo.png +0 -0
  38. data/guide/_static/logo.svg +49 -0
  39. data/guide/_static/ramaze_console.png +0 -0
  40. data/guide/css/common.css +20 -0
  41. data/guide/general/cache.md +167 -0
  42. data/guide/general/configuration.md +168 -0
  43. data/guide/general/contributing.md +108 -0
  44. data/guide/general/controllers.md +115 -0
  45. data/guide/general/helpers.md +76 -0
  46. data/guide/general/installation.md +58 -0
  47. data/guide/general/logging.md +99 -0
  48. data/guide/general/middlewares.md +100 -0
  49. data/guide/general/models.md +78 -0
  50. data/guide/general/principles.md +53 -0
  51. data/guide/general/ramaze_command.md +155 -0
  52. data/guide/general/routes.md +81 -0
  53. data/guide/general/sessions.md +140 -0
  54. data/guide/general/special_thanks.md +67 -0
  55. data/guide/general/testing.md +61 -0
  56. data/guide/general/views.md +322 -0
  57. data/guide/tutorials/introduction.md +259 -0
  58. data/lib/proto/config.ru +1 -1
  59. data/lib/proto/public/favicon.ico +0 -0
  60. data/lib/proto/view/index.xhtml +7 -7
  61. data/lib/ramaze.rb +4 -4
  62. data/lib/ramaze/app.rb +11 -11
  63. data/lib/ramaze/app_graph.rb +2 -4
  64. data/lib/ramaze/bin/console.rb +3 -3
  65. data/lib/ramaze/bin/create.rb +2 -2
  66. data/lib/ramaze/bin/restart.rb +4 -4
  67. data/lib/ramaze/bin/runner.rb +5 -5
  68. data/lib/ramaze/bin/start.rb +19 -4
  69. data/lib/ramaze/bin/status.rb +3 -3
  70. data/lib/ramaze/bin/stop.rb +3 -3
  71. data/lib/ramaze/cache.rb +1 -0
  72. data/lib/ramaze/cache/lru.rb +8 -4
  73. data/lib/ramaze/cache/memcache.rb +32 -13
  74. data/lib/ramaze/cache/redis.rb +164 -0
  75. data/lib/ramaze/cache/sequel.rb +43 -28
  76. data/lib/ramaze/controller.rb +1 -2
  77. data/lib/ramaze/dependencies.rb +40 -3
  78. data/lib/ramaze/helper/bench.rb +26 -16
  79. data/lib/ramaze/helper/blue_form.rb +46 -73
  80. data/lib/ramaze/helper/cache.rb +10 -6
  81. data/lib/ramaze/helper/csrf.rb +35 -39
  82. data/lib/ramaze/helper/disqus.rb +5 -4
  83. data/lib/ramaze/helper/email.rb +35 -24
  84. data/lib/ramaze/helper/erector.rb +9 -13
  85. data/lib/ramaze/helper/flash.rb +7 -9
  86. data/lib/ramaze/helper/formatting.rb +194 -179
  87. data/lib/ramaze/helper/gravatar.rb +4 -8
  88. data/lib/ramaze/helper/identity.rb +3 -3
  89. data/lib/ramaze/helper/layout.rb +23 -8
  90. data/lib/ramaze/helper/markaby.rb +1 -1
  91. data/lib/ramaze/helper/paginate.rb +46 -39
  92. data/lib/ramaze/helper/request_accessor.rb +3 -1
  93. data/lib/ramaze/helper/simple_captcha.rb +18 -17
  94. data/lib/ramaze/helper/stack.rb +1 -1
  95. data/lib/ramaze/helper/tagz.rb +4 -2
  96. data/lib/ramaze/helper/upload.rb +523 -0
  97. data/lib/ramaze/helper/user.rb +4 -8
  98. data/lib/ramaze/helper/xhtml.rb +11 -15
  99. data/lib/ramaze/log.rb +9 -6
  100. data/lib/ramaze/log/rotatinginformer.rb +62 -27
  101. data/lib/ramaze/log/syslog.rb +20 -15
  102. data/lib/ramaze/log/xosd.rb +2 -1
  103. data/lib/ramaze/reloader.rb +2 -0
  104. data/lib/ramaze/request.rb +11 -10
  105. data/lib/ramaze/setup.rb +23 -6
  106. data/lib/ramaze/snippets/array/put_within.rb +3 -9
  107. data/lib/ramaze/snippets/binding/locals.rb +5 -10
  108. data/lib/ramaze/snippets/fiber.rb +1 -23
  109. data/lib/ramaze/snippets/kernel/pretty_inspect.rb +3 -6
  110. data/lib/ramaze/snippets/numeric/filesize_format.rb +3 -5
  111. data/lib/ramaze/snippets/numeric/time.rb +3 -7
  112. data/lib/ramaze/snippets/object/__dir__.rb +3 -7
  113. data/lib/ramaze/snippets/object/instance_variable_defined.rb +3 -6
  114. data/lib/ramaze/snippets/object/pretty.rb +3 -7
  115. data/lib/ramaze/snippets/object/scope.rb +7 -9
  116. data/lib/ramaze/snippets/proc/locals.rb +12 -12
  117. data/lib/ramaze/snippets/ramaze/acquire.rb +15 -14
  118. data/lib/ramaze/snippets/ramaze/deprecated.rb +1 -1
  119. data/lib/ramaze/snippets/ramaze/fiber.rb +1 -1
  120. data/lib/ramaze/snippets/ramaze/lru_hash.rb +2 -3
  121. data/lib/ramaze/snippets/ramaze/struct.rb +2 -4
  122. data/lib/ramaze/snippets/string/camel_case.rb +8 -10
  123. data/lib/ramaze/snippets/string/color.rb +3 -4
  124. data/lib/ramaze/snippets/string/end_with.rb +3 -6
  125. data/lib/ramaze/snippets/string/esc.rb +3 -8
  126. data/lib/ramaze/snippets/string/ord.rb +3 -8
  127. data/lib/ramaze/snippets/string/snake_case.rb +6 -9
  128. data/lib/ramaze/snippets/string/start_with.rb +3 -8
  129. data/lib/ramaze/snippets/string/unindent.rb +3 -6
  130. data/lib/ramaze/snippets/thread/into.rb +1 -3
  131. data/lib/ramaze/spec.rb +2 -31
  132. data/lib/ramaze/spec/bacon.rb +18 -2
  133. data/lib/ramaze/version.rb +1 -1
  134. data/lib/ramaze/view.rb +1 -1
  135. data/ramaze.gemspec +1 -1
  136. data/spec/helper.rb +2 -1
  137. data/spec/ramaze/bin/start.rb +16 -20
  138. data/spec/ramaze/cache/localmemcache.rb +4 -7
  139. data/spec/ramaze/cache/memcache.rb +3 -1
  140. data/spec/ramaze/cache/redis.rb +62 -0
  141. data/spec/ramaze/helper/blue_form.rb +33 -4
  142. data/spec/ramaze/helper/layout.rb +40 -7
  143. data/spec/ramaze/helper/upload.rb +149 -0
  144. data/spec/ramaze/helper/uploads/text_1.txt +1 -0
  145. data/spec/ramaze/helper/uploads/text_2.txt +1 -0
  146. data/spec/ramaze/log/growl.rb +4 -6
  147. data/spec/ramaze/log/syslog.rb +6 -0
  148. data/spec/ramaze/view/lokar.rb +5 -0
  149. data/spec/ramaze/view/nagoro.rb +5 -0
  150. data/tasks/authors.rake +1 -1
  151. data/tasks/bacon.rake +14 -5
  152. data/tasks/changelog.rake +1 -1
  153. data/tasks/yard.rake +12 -4
  154. metadata +277 -239
  155. data/doc/LEGAL +0 -26
  156. data/examples/app/blog/README +0 -3
  157. data/examples/app/blog/controller/comment.rb +0 -45
  158. data/examples/app/blog/controller/entry.rb +0 -85
  159. data/examples/app/blog/controller/main.rb +0 -20
  160. data/examples/app/blog/controller/tag.rb +0 -9
  161. data/examples/app/blog/layout/default.nag +0 -31
  162. data/examples/app/blog/model/entry.rb +0 -89
  163. data/examples/app/blog/model/tag.rb +0 -36
  164. data/examples/app/blog/public/css/screen.css +0 -273
  165. data/examples/app/blog/spec/blog.rb +0 -87
  166. data/examples/app/blog/view/comment/form.nag +0 -10
  167. data/examples/app/blog/view/comment/show.nag +0 -16
  168. data/examples/app/blog/view/entry/edit.nag +0 -14
  169. data/examples/app/blog/view/entry/feed.atom.nag +0 -8
  170. data/examples/app/blog/view/entry/feed.rss.nag +0 -7
  171. data/examples/app/blog/view/entry/index.nag +0 -7
  172. data/examples/app/blog/view/entry/new.nag +0 -13
  173. data/examples/app/blog/view/entry/show.nag +0 -36
  174. data/examples/app/blog/view/feed.atom.nag +0 -18
  175. data/examples/app/blog/view/feed.rss.nag +0 -25
  176. data/examples/app/blog/view/index.nag +0 -6
  177. data/examples/app/blog/view/tag/index.nag +0 -5
  178. data/lib/proto/public/ramaze.png +0 -0
  179. data/lib/ramaze/rest.rb +0 -36
  180. data/spec/ramaze/rest.rb +0 -28
  181. data/tasks/rcov.rake +0 -22
@@ -0,0 +1,109 @@
1
+ /**
2
+ * Stylesheet used for styling headings, links, etc.
3
+ *
4
+ * @author Yorick Peterse
5
+ * @link http://yorickpeterse.com/
6
+ */
7
+ body
8
+ {
9
+ background: url('../images/bg.png') repeat top left;
10
+ border-top: 5px solid #444;
11
+ color: #444;
12
+ font-family: 'Lucida Grande', 'Lucida Sans Unicode', Verdana, Arial, sans-serif;
13
+ font-size: 14px;
14
+ }
15
+
16
+ p
17
+ {
18
+ font-size: 14px;
19
+ line-height: 22px;
20
+ margin-bottom: 20px;
21
+ }
22
+
23
+ a
24
+ {
25
+ color: #444;
26
+ }
27
+
28
+ ol
29
+ {
30
+ margin-left: 20px;
31
+ }
32
+
33
+ ol li
34
+ {
35
+ list-style-type: decimal;
36
+ }
37
+
38
+ ul
39
+ {
40
+ margin-left: 18px;
41
+ }
42
+
43
+ ul li
44
+ {
45
+ list-style-type: disc;
46
+ }
47
+
48
+ ul, ol
49
+ {
50
+ line-height: 22px;
51
+ margin-bottom: 20px;
52
+ }
53
+
54
+ a:hover, h1 a:hover
55
+ {
56
+ color: #E33F1E;
57
+ }
58
+
59
+ h1, h2, h3, h4, h5, h6
60
+ {
61
+ font-weight: bold;
62
+ margin-bottom: 5px;
63
+ }
64
+
65
+ h1
66
+ {
67
+ font-size: 28px;
68
+ }
69
+
70
+ h2
71
+ {
72
+ font-size: 24px;
73
+ }
74
+
75
+ h3
76
+ {
77
+ font-size: 22px;
78
+ }
79
+
80
+ h4
81
+ {
82
+ font-size: 20px;
83
+ }
84
+
85
+ h5
86
+ {
87
+ font-size: 18px;
88
+ }
89
+
90
+ h6
91
+ {
92
+ font-size: 16px;
93
+ }
94
+
95
+ h1 a
96
+ {
97
+ color: #444;
98
+ text-decoration: none;
99
+ }
100
+
101
+ pre
102
+ {
103
+ margin: 20px 0px;
104
+ }
105
+
106
+ code
107
+ {
108
+ background: #eee;
109
+ }
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'ramaze'
5
+
6
+ # FCGI doesn't like you writing to stdout
7
+ Ramaze::Log.loggers = [ Ramaze::Logger::Informer.new( __DIR__("../ramaze.fcgi.log") ) ]
8
+ Ramaze.options.adapter.handler = :fastcgi
9
+
10
+ $0 = __DIR__("../start.rb")
11
+ require $0
@@ -1,5 +1,20 @@
1
- $LOAD_PATH.unshift(File.dirname(__FILE__))
1
+ #!/usr/bin/env ruby
2
2
 
3
- require 'app'
3
+ # Use this file directly like `ruby start.rb` if you don't want to use the
4
+ # `ramaze start` command.
5
+ #
6
+ # All application related things should go into `app.rb`, this file is simply
7
+ # for options related to running the application locally.
8
+ #
9
+ # You can run this file as following:
10
+ #
11
+ # $ ruby start.rb
12
+ # $ ./start.rb
13
+ #
14
+ # If you want to be able to do the latter you'll have to make sure the file can be
15
+ # executed:
16
+ #
17
+ # $ chmod +x ./start.rb
18
+ require File.expand_path('../app', __FILE__)
4
19
 
5
- Ramaze.start :adapter => :webrick, :mode => :dev
20
+ Ramaze.start(:adapter => :webrick, :port => 7000, :file => __FILE__)
@@ -0,0 +1,23 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"
3
+ xml:base="http://localhost:7000/">
4
+ <id>tag:ramaze-blog</id>
5
+ <title>Ramaze Blog</title>
6
+ <updated>#{@posts.last.created_at.strftime('%Y-%m-%dT%H:%M:%SZ')}</updated>
7
+
8
+ <?r @posts.each do |post| ?>
9
+ <entry>
10
+ <id>tag:ramaze-blog,#{post.id}</id>
11
+ <title>#{post.title}</title>
12
+ <author>
13
+ <name>#{post.user.username}</name>
14
+ </author>
15
+ <updated>#{post.created_at.strftime('%Y-%m-%dT%H:%M:%SZ')}</updated>
16
+ <content type="xhtml">
17
+ <div xmlns="http://www.w3.org/1999/xhtml">
18
+ #{RDiscount.new(post.body).to_html}
19
+ </div>
20
+ </content>
21
+ </entry>
22
+ <?r end ?>
23
+ </feed>
@@ -0,0 +1,11 @@
1
+ #{form_for(@post, :method => :post, :action => Posts.r(:save)) do |f|
2
+ f.input_hidden(:id)
3
+
4
+ f.input_text('Title', :title)
5
+
6
+ f.g.p('You can use Markdown when writing your post.')
7
+
8
+ f.textarea('Body', :body, :rows => 15, :cols => 70)
9
+
10
+ f.input_submit('Submit')
11
+ end}
@@ -0,0 +1,44 @@
1
+ <?r if !@posts.empty? ?>
2
+
3
+ <?r @posts.each do |post| ?>
4
+ <?r created_at = post.created_at.strftime('%Y-%m-%d') ?>
5
+
6
+ <article>
7
+ <header>
8
+ <h1>
9
+ #{Posts.a(post.title, :view, post.id)}
10
+ </h1>
11
+ <p>
12
+ Created at <time pubdate="pubdate"
13
+ datetime="#{created_at}">#{created_at}</time> and written by
14
+ #{post.user.username}
15
+ </p>
16
+ </header>
17
+
18
+ #{RDiscount.new(post.body).to_html}
19
+
20
+ <p>
21
+ #{post.comments.length} comment(s)
22
+
23
+ <?r if logged_in? ?>
24
+ | #{Posts.a('Edit', :edit, post.id)}
25
+ | #{Posts.a('Delete', :delete, post.id)}
26
+ <?r end ?>
27
+ </p>
28
+ </article>
29
+
30
+ <?r end ?>
31
+
32
+ #{if @posts.respond_to?(:navigation) and @posts.page_count > 1
33
+ @posts.navigation
34
+ end}
35
+
36
+ <?r else ?>
37
+
38
+ <p>No posts were found.</p>
39
+
40
+ <?r end ?>
41
+
42
+ <?r if logged_in? ?>
43
+ <p>#{Posts.a('New Post', :new)}</p>
44
+ <?r end ?>
@@ -0,0 +1,12 @@
1
+ #{form_for(@user, :method => :post, :action => Users.r(:save)) do |f|
2
+ f.input_hidden(:id)
3
+
4
+ f.input_text('Username', :username)
5
+
6
+ # Not setting an empty value for the password field would display the hash.
7
+ # Note that setting it to nil wouldn't work as the BlueForm helper would still
8
+ # try to extract the value from the @user object.
9
+ f.input_password('Password', :password, :value => '')
10
+
11
+ f.input_submit('Submit')
12
+ end}
@@ -0,0 +1,30 @@
1
+ <?r if !@users.empty? ?>
2
+
3
+ <table>
4
+ <thead>
5
+ <tr>
6
+ <th>Username</th>
7
+ <th>Actions</th>
8
+ </tr>
9
+ </thead>
10
+ <tbody>
11
+ <?r @users.each do |user| ?>
12
+ <tr>
13
+ <td>#{Users.a(user.username, :edit, user.id)}</td>
14
+ <td>#{Users.a('Delete', :delete, user.id)}</td>
15
+ </tr>
16
+ <?r end ?>
17
+ </tbody>
18
+ </table>
19
+
20
+ #{if @users.respond_to?(:navigation) and @users.page_count > 1
21
+ @users.navigation
22
+ end}
23
+
24
+ <?r else ?>
25
+
26
+ <p>No users were found.</p>
27
+
28
+ <?r end ?>
29
+
30
+ <p>#{Users.a('New User', :new)}</p>
@@ -0,0 +1,8 @@
1
+ <p>The default username and password combination is "admin".</p>
2
+
3
+ #{form_for(nil, :method => :post, :action => Users.r(:login)) do |f|
4
+ f.input_text('Username', :username)
5
+ f.input_password('Password', :password)
6
+
7
+ f.input_submit('Login')
8
+ end}
@@ -0,0 +1,68 @@
1
+ <article>
2
+ <header>
3
+ <h1>
4
+ #{@post.title}
5
+ </h1>
6
+ <p>
7
+ Created at <time pubdate="pubdate"
8
+ datetime="#{@created_at}">#{@created_at}</time> and written by
9
+ #{@post.user.username}
10
+ </p>
11
+ </header>
12
+
13
+ #{RDiscount.new(@post.body).to_html}
14
+
15
+ <?r if logged_in? ?>
16
+ <p>
17
+ #{Posts.a('Edit', :edit, @post.id)}
18
+ | #{Posts.a('Delete', :delete, @post.id)}
19
+ </p>
20
+ <?r end ?>
21
+ </article>
22
+
23
+ <div id="comments">
24
+ <h2>Comments</h2>
25
+
26
+ <?r if !@post.comments.empty? ?>
27
+
28
+ <?r @post.comments.each do |comment| ?>
29
+ <article>
30
+ <header>
31
+ <h1>#{comment.username}</h1>
32
+
33
+ <p class="meta">
34
+ <time pubdate="pubdate"
35
+ datetime="#{comment.created_at.strftime('%Y-%m-%d')}">
36
+ #{comment.created_at.strftime('%Y-%m-%d')}
37
+ </time>
38
+ </p>
39
+ </header>
40
+
41
+ <p>#{comment.comment}</p>
42
+ </article>
43
+ <?r end ?>
44
+
45
+ <?r else ?>
46
+
47
+ <p>No comments have been added yet.</p>
48
+
49
+ <?r end ?>
50
+
51
+ <h2>Add Comment</h2>
52
+
53
+ #{form_for(
54
+ @new_comment,
55
+ :method => :post,
56
+ :action => Posts.r(:add_comment)
57
+ ) do |f|
58
+ f.input_hidden(:post_id, @post.id)
59
+
60
+ unless logged_in?
61
+ f.input_text('Username', :username)
62
+ end
63
+
64
+ f.textarea('Comment', :comment, :rows => 7, :cols => 60)
65
+
66
+ f.input_submit('Submit')
67
+ end}
68
+ </div>
@@ -1,15 +1,16 @@
1
1
  Following persons have contributed to ramaze.
2
2
  (Sorted by number of submitted patches, then alphabetically)
3
3
 
4
- 2725 Michael Fellinger <m.fellinger@gmail.com>
4
+ 2726 Michael Fellinger <m.fellinger@gmail.com>
5
5
  216 Aman Gupta <aman@ramaze.net>
6
+ 140 Yorick Peterse <yorickpeterse@gmail.com>
6
7
  89 Jonathan Buch <jonathan.buch@gmail.com>
7
- 89 YorickPeterse <yorickpeterse@gmail.com>
8
8
  77 Pistos <gitsomegrace.5.pistos@geoshell.com>
9
9
  69 Clive Crous <clive@crous.co.za>
10
10
  27 Keita Yamaguchi <keita.yamaguchi@gmail.com>
11
11
  20 injekt <injekt.me@gmail.com>
12
12
  20 Ryan Grove <ryan@wonko.com>
13
+ 18 Lars Olsson <lasso@lassoweb.se>
13
14
  16 Lee Jarvis <injekt.me@gmail.com>
14
15
  16 TJ Vanderpoel <bougy.man@gmail.com>
15
16
  11 Wang, Jinjing <nfjinjing@gmail.com>
@@ -29,9 +30,9 @@ Following persons have contributed to ramaze.
29
30
  3 Clinton R. Nixon <clinton.nixon@viget.com>
30
31
  3 Riku Raisaenen <riku@helloit.fi>
31
32
  3 starapor <me@sarahtaraporewalla.com>
33
+ 3 Stas SUȘCOV <stas@net.utcluj.ro>
32
34
  2 Andrew Farmer <xichekolas@gmail.com>
33
35
  2 jShaf <joshua.shaffner@gmail.com>
34
- 2 Lars Olsson <lasso@lassoweb.se>
35
36
  2 Yutaka HARA <yutaka.hara+github@gmail.com>
36
37
  1 Aaron Mueller <mail@aaron-mueller.de>
37
38
  1 Ara T. Howard <ara.t.howard@gmail.com>
@@ -44,6 +45,7 @@ Following persons have contributed to ramaze.
44
45
  1 Dmitry Gorbik <dmitrygorbik@isengard.local>
45
46
  1 Esad Hajdarevic <esad@esse.at>
46
47
  1 Fabian Buch <fabian.buch@fabian-buch.de>
48
+ 1 Francesc Esplugas <francesc.esplugas@gmail.com>
47
49
  1 Gavin Kistner <gavin@phrogz.net>
48
50
  1 huma <huma@boxbot.org>
49
51
  1 Jason Torres <jason.e.torres@gmail.com>
@@ -1,3 +1,431 @@
1
+ [7c6cd3d | Sun Oct 23 17:01:27 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
2
+
3
+ * Added Michael to the Email list for Travis.
4
+
5
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
6
+
7
+ [8bcf6ca | Sun Oct 23 17:00:04 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
8
+
9
+ * Removed jruby from the Travis list.
10
+
11
+ It seems jruby is having some trouble on travis when trying to install the
12
+ SQLite3 gem. While jruby itself runs Ramaze just fine I'm removing it from the
13
+ list for the time being.
14
+
15
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
16
+
17
+ [8d9d169 | Sun Oct 23 16:08:52 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
18
+
19
+ * Updated the list of authors and the changelog.
20
+
21
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
22
+
23
+ [73f2dbc | Fri Oct 21 21:14:49 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
24
+
25
+ * Updated the list of authors and the changelog.
26
+
27
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
28
+
29
+ [1eb0b71 | Fri Oct 21 20:48:48 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
30
+
31
+ * RUBY_ENGINE isn't available on 1.8.7.
32
+
33
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
34
+
35
+ [9727888 | Fri Oct 21 20:07:23 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
36
+
37
+ * Fixed the remainder of all platform issues.
38
+
39
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
40
+
41
+ [9c8fc8a | Fri Oct 21 19:04:48 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
42
+
43
+ * Doh! Last commit broke ramaze start.
44
+
45
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
46
+
47
+ [794e075 | Fri Oct 21 19:01:10 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
48
+
49
+ * Jruby support and simplified various tests.
50
+
51
+ In order to achieve jruby compatibility I had to make some modifications to the
52
+ development dependencies setup we've been using for a while now. I added a list
53
+ of unsupported gems (such as lokar) which will be "marked" as supported on
54
+ certain systems. For example, lokar is only supported if the user isn't running
55
+ Rubinius.
56
+
57
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
58
+
59
+ [c6e328c | Fri Oct 21 17:24:13 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
60
+
61
+ * Fixed more 1.8.7 issues.
62
+
63
+ Hopefully this fixes all the remaining issues, though it wouldn't surprise me if
64
+ ``gets()`` still doesn't work on Travis (sadly I can't reproduce this).
65
+
66
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
67
+
68
+ [87d4ab6 | Fri Oct 21 17:12:36 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
69
+
70
+ * Fixed a few issues with 1.8.7
71
+
72
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
73
+
74
+ [0d37c8e | Fri Oct 21 16:17:52 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
75
+
76
+ * Platform checks and used FileUtils::RUBY directly.
77
+
78
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
79
+
80
+ [e04f7f4 | Fri Oct 21 15:41:43 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
81
+
82
+ * Fixed various issues with different Rubies.
83
+
84
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
85
+
86
+ [33746a4 | Fri Oct 21 14:56:14 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
87
+
88
+ * Test commit to see if Travis works
89
+
90
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
91
+
92
+ [2faefd7 | Fri Oct 21 14:54:36 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
93
+
94
+ * Updated the changelog
95
+
96
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
97
+
98
+ [dee363c | Fri Oct 21 14:54:24 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
99
+
100
+ * Added a Travis configuration file
101
+
102
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
103
+
104
+ [dfb8ca8 | Fri Oct 21 14:01:40 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
105
+
106
+ * Updated the AUTHORS file for the upcoming release.
107
+
108
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
109
+
110
+ [4aa9706 | Sat Oct 15 13:15:33 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
111
+
112
+ * Added a chapter on contributing to Ramaze
113
+
114
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
115
+
116
+ [156e902 | Fri Oct 14 20:35:52 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
117
+
118
+ * Added a list of guide contributors.
119
+
120
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
121
+
122
+ [4c7996e | Fri Oct 14 20:30:27 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
123
+
124
+ * Style changes to the Testing chapter.
125
+
126
+ Besides these style changes I've also expanded the chapter a bit.
127
+
128
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
129
+
130
+ [0c6e4e3 | Fri Oct 14 20:15:33 UTC 2011] Stas SUȘCOV <stas@net.utcluj.ro>
131
+
132
+ * Added a short guide for testing ramaze apps (with simplecov too)
133
+
134
+ [7c7a2a6 | Fri Oct 14 19:35:17 UTC 2011] Stas SUȘCOV <stas@net.utcluj.ro>
135
+
136
+ * Added flashbox trait details.
137
+
138
+ [791758e | Fri Oct 14 19:28:24 UTC 2011] Stas SUȘCOV <stas@net.utcluj.ro>
139
+
140
+ * Updated flash usage details.
141
+
142
+ [f2f9347 | Thu Oct 13 17:59:12 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
143
+
144
+ * Updated various files.
145
+
146
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
147
+
148
+ [be1b000 | Thu Oct 13 17:24:31 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
149
+
150
+ * Updated the YARD task to include Innate.
151
+
152
+ The Rake task ``yard`` can now optionally include Innate when a valid path is
153
+ specified.
154
+
155
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
156
+
157
+ [2dac2cd | Thu Oct 13 17:05:24 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
158
+
159
+ * Cache examples and documented RotatingInformer.
160
+
161
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
162
+
163
+ [a8174d2 | Thu Oct 13 16:23:15 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
164
+
165
+ * Autoload Growl/RotatinInformer
166
+
167
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
168
+
169
+ [8853778 | Thu Oct 13 13:33:29 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
170
+
171
+ * Documented logging and creating custom loggers
172
+
173
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
174
+
175
+ [e9567e7 | Thu Oct 13 10:34:02 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
176
+
177
+ * Updated the Special thanks and fixed a typo.
178
+
179
+ I added Loren Segal to the Special Thanks page, without him we wouldn't be using
180
+ YARD. Also fixed a spelling error in the README reported by huma.
181
+
182
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
183
+
184
+ [3228a6d | Thu Oct 13 09:00:10 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
185
+
186
+ * Removed the old README
187
+
188
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
189
+
190
+ [830d599 | Thu Oct 13 08:57:14 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
191
+
192
+ * Moved some chapters around.
193
+
194
+ The chapters on helpers and logging data have been moved to their own file
195
+ instead of being displayed in the README. Next up is writing the actual
196
+ documentation on logging data.
197
+
198
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
199
+
200
+ [4c8d0d2 | Wed Oct 12 22:48:02 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
201
+
202
+ * Initial setup for the YARD based user guide.
203
+
204
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
205
+
206
+ [8ee60cd | Mon Oct 10 19:20:12 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
207
+
208
+ * Fixed an HTML validation error.
209
+
210
+ The index.html view in the prototype contained a link that wasn't formatted
211
+ according to the HTML specification. Thanks to "stu314" from the IRC channel for
212
+ reporting it and submitting the patch.
213
+
214
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
215
+
216
+ [7973c39 | Sun Oct 09 11:37:25 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
217
+
218
+ * Docs/style changes for the Redis cache.
219
+
220
+ The Redis cache has been documented and I've made some slight modifications to
221
+ it so that it works similar to the Sequel/Memcache cache in terms of setting
222
+ options. I've also modified the Sequel, Memcache and Redis cache classes to
223
+ use Ramaze.setup() for their dependencies, this should make it a bit easier for
224
+ users to use these caches.
225
+
226
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
227
+
228
+ [b9f5501 | Sun Oct 09 08:55:58 UTC 2011] Michael Fellinger <m.fellinger@gmail.com>
229
+
230
+ * Add redis cache
231
+
232
+ [a077d54 | Tue Sep 27 21:25:14 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
233
+
234
+ * Removed the spec/ directory.
235
+
236
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
237
+
238
+ [e5efe43 | Tue Sep 27 21:23:51 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
239
+
240
+ * Renamed Post.rb to post.rb.
241
+
242
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
243
+
244
+ [a127ef0 | Tue Sep 27 21:23:34 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
245
+
246
+ * Silly OS X and it's file casing.
247
+
248
+ Next commit will contain the correct name.
249
+
250
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
251
+
252
+ [dc2770f | Tue Sep 27 21:18:37 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
253
+
254
+ * Boom! A new blog example application.
255
+
256
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
257
+
258
+ [1cd6174 | Mon Sep 26 21:47:10 UTC 2011] Yorick Peterse <yorickpeterse@gmail.com>
259
+
260
+ * Started re-writing the blog example.
261
+
262
+ Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
263
+
264
+ [02c442e | Sat Sep 03 17:43:40 UTC 2011] Francesc Esplugas <francesc.esplugas@gmail.com>
265
+
266
+ * Detect also :mustache extension when using Ramaze::View::Mustache.
267
+
268
+ [68fdea6 | Fri Sep 02 16:54:12 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
269
+
270
+ * Modified the Upload helper so that it's less restrictive regarding various types.
271
+
272
+ [506e9d9 | Thu Sep 01 22:08:09 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
273
+
274
+ * Ditched `rake rcov` and told Dalli to bother somebody else with it's logger.
275
+
276
+ [61760cd | Thu Sep 01 16:07:02 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
277
+
278
+ * Deprecated ramaze/spec as was supposed to happen two years ago.
279
+
280
+ The code in it has been moved to ramaze/spec/bacon. ramaze/spec now always
281
+ generates a warning until I'm 100% sure it's not used by Ramaze itself anymore.
282
+
283
+ [18bf4b5 | Thu Sep 01 15:12:43 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
284
+
285
+ * rake bacon now shows the spec paths relative to the project root.
286
+
287
+ [27a3245 | Thu Sep 01 10:49:17 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
288
+
289
+ * Added more specs for the Upload helper.
290
+
291
+ [342ea4d | Wed Aug 31 23:10:49 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
292
+
293
+ * Started writing a set of specifications for the Upload helper.
294
+
295
+ [703a69c | Wed Aug 31 22:15:33 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
296
+
297
+ * Moved some of the docs of the Upload helper to the module declaration instead of
298
+
299
+
300
+
301
+ [31550b9 | Wed Aug 31 21:54:18 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
302
+
303
+ * Cleaned up some of the code in the Upload helper and removed the need for a
304
+
305
+
306
+
307
+ [93850ae | Mon Aug 22 11:48:54 UTC 2011] Lars Olsson <lasso@lassoweb.se>
308
+
309
+ * UploadHelper: Doh! Don't exit function prematurely. Fixes bug introduced by 88ded566950e15a13fb0526e9cb1c8544b91aa2f.
310
+
311
+ [c8a71ac | Mon Aug 22 11:19:27 UTC 2011] Lars Olsson <lasso@lassoweb.se>
312
+
313
+ * UploadHelper: Doc fixes
314
+
315
+ [88ded56 | Sun Aug 21 10:40:11 UTC 2011] Lars Olsson <lasso@lassoweb.se>
316
+
317
+ * UploadHelper: Document using YARD instead of RDoc, let get_uploaded_files return the number of converted file uploads
318
+
319
+ [2ba5aa4 | Sat Aug 20 09:44:09 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
320
+
321
+ * Updated Ramaze.setup so that it works with recent Rubygems versions and
322
+
323
+
324
+ Most of the credits for fixing Ramaze.setup go to @injekt as he initially
325
+ submitted the code, I just made it work with previous Rubygems installations.
326
+
327
+ [ebb6a3f | Fri Aug 19 20:44:36 UTC 2011] Lars Olsson <lasso@lassoweb.se>
328
+
329
+ * UploadHelper: Minor doc fixes
330
+
331
+ [701f75c | Thu Aug 18 20:48:50 UTC 2011] Lars Olsson <lasso@lassoweb.se>
332
+
333
+ * UploadHelper: Handle array parameters, add more docs
334
+
335
+ [51e88dc | Thu Aug 18 17:07:12 UTC 2011] Lars Olsson <lasso@lassoweb.se>
336
+
337
+ * UploadHelper: Allow proc in addition to string for default_upload_dir parameter
338
+
339
+ [6b8c45a | Tue Aug 16 10:18:47 UTC 2011] Lars Olsson <lasso@lassoweb.se>
340
+
341
+ * Fixed minor bugs, added lots of docs for UploadHelper
342
+
343
+ [e58d99a | Mon Aug 15 14:46:22 UTC 2011] Lars Olsson <lasso@lassoweb.se>
344
+
345
+ * Be compatible with ruby 1.8
346
+
347
+ [7bbb724 | Mon Aug 15 09:49:13 UTC 2011] Lars Olsson <lasso@lassoweb.se>
348
+
349
+ * Minor refactoring of save method, add accessors and saved? method to Ramaze::UploadedFile class
350
+
351
+ [3b938b8 | Sun Aug 14 17:40:33 UTC 2011] Lars Olsson <lasso@lassoweb.se>
352
+
353
+ * Use copy_stream method for saving file, add unlinking option for tempfile, reformat source code to keep line length within reasonable limits
354
+
355
+ [05cc35a | Wed Aug 10 06:52:17 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
356
+
357
+ * Modified the layout helper so that it no longer overwrites layout().
358
+
359
+ Do note that this change has a minor limitation: it will only create a "backup"
360
+ of the existing layout (located in a trait called :layout) the first time
361
+ set_layout() is called. After this it will just use the one that was set in the
362
+ first call.
363
+
364
+ This means that you can do the following and it would just work fine:
365
+
366
+ layout :default
367
+ set_layout :alternative => [:method_1]
368
+
369
+ This would result in the layout "default" being use by default and the layout
370
+ "alternative" being used for method_1(). Before this commit this would result
371
+ in all methods except method_1() being rendered *without* a layout at all.
372
+
373
+ In the following example both calls to set_layout() will use the layout set by
374
+ layout() as a backup, the second one will not overwrite it but instead will also
375
+ use the backup:
376
+
377
+ layout :default
378
+ set_layout :alternative => [:method_1]
379
+ set_layout :another_one => [:method_2]
380
+
381
+ To cut a long story short, existing layouts are now properly used as a fallback
382
+ in case set_layout() doesn't result in any matching layouts for a particular
383
+ method.
384
+
385
+ [14d277d | Tue Aug 09 07:50:12 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
386
+
387
+ * Removed ramaze/rest. It was extremely crippled and didn't work properly anyway.
388
+
389
+ I tried coming up with a nice helper to replace this but I eventually decided
390
+ not to include it since there are multiple ways of doing it.
391
+
392
+ [7503d78 | Mon Aug 08 18:28:04 UTC 2011] Lars Olsson <lasso@lassoweb.se>
393
+
394
+ * Implement save method, use traits instead of constants, add options for default upload dir, autosave and overwriting existing files.
395
+
396
+ [9dda5cf | Mon Aug 08 07:10:36 UTC 2011] Lars Olsson <lasso@lassoweb.se>
397
+
398
+ * Remove instance variable, use singleton method to keep track of uploaded files instead
399
+
400
+ [9f7b920 | Fri Aug 05 10:07:01 UTC 2011] Lars Olsson <lasso@lassoweb.se>
401
+
402
+ * Add some docs, fix indentation
403
+
404
+ [5c693d9 | Thu Aug 04 21:52:46 UTC 2011] Lars Olsson <lasso@lassoweb.se>
405
+
406
+ * Initial support for upload helper
407
+
408
+ [558afb7 | Wed Jul 27 20:23:23 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
409
+
410
+ * Updated the config.ru for the prototype so that it respects your root directories.
411
+
412
+ [b82571a | Tue Jul 26 07:24:58 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
413
+
414
+ * BlueForm#input_checkbox now takes a hash, array or string as the checked value.
415
+
416
+ Sadly I only discovered this this morning so this will have to wait until the
417
+ next release. This small change makes it possible to do the following:
418
+
419
+ f.input_checkbox(
420
+ 'Language', :language, ['ruby'], :values => ['ruby', 'python']
421
+ )
422
+
423
+ Previously you could only check a single checkbox (and radio button).
424
+
425
+ [8cd0b4b | Mon Jul 25 20:06:07 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
426
+
427
+ * Release 2011.07.25.
428
+
1
429
  [cfc6c2b | Mon Jul 25 17:56:49 UTC 2011] YorickPeterse <yorickpeterse@gmail.com>
2
430
 
3
431
  * Updated the changelog and the list of contributors.