ramaze 2010.03 → 2010.04

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/MANIFEST CHANGED
@@ -361,6 +361,7 @@ spec/examples/element.rb
361
361
  spec/examples/hello.rb
362
362
  spec/examples/helpers/httpdigest.rb
363
363
  spec/examples/linking.rb
364
+ spec/examples/misc/sequel_scaffolding.rb
364
365
  spec/examples/simple.rb
365
366
  spec/examples/templates/template_erubis.rb
366
367
  spec/examples/templates/template_ezamar.rb
@@ -372,6 +373,7 @@ spec/examples/templates/template_nagoro.rb
372
373
  spec/examples/templates/template_redcloth.rb
373
374
  spec/examples/templates/template_remarkably.rb
374
375
  spec/examples/templates/template_tenjin.rb
376
+ spec/examples/todolist.rb
375
377
  spec/helper.rb
376
378
  spec/ramaze/action/render.rb
377
379
  spec/ramaze/action/view/bar.xhtml
data/README.md CHANGED
@@ -347,18 +347,15 @@ Some places to get started are:
347
347
 
348
348
  There are some examples for your instant pleasure inside the examples-directory
349
349
  in the Ramaze-distribution.
350
- To start up an example, you can use the Ramaze binary located in bin/ramaze
351
- for example:
350
+ You can start up an example just as you usually would any other ruby program:
352
351
 
353
- $ ramaze examples/hello.rb
352
+ $ ruby examples/basic/hello.rb
354
353
 
355
354
  Or:
356
355
 
357
- $ cd examples/blog
358
- $ ramaze
359
-
360
- Since ramaze uses the start.rb by default if you don't pass anything else.
361
-
356
+ $ cd examples/app/blog
357
+ $ ruby start.rb
358
+
362
359
  For more information about the usage of ramaze try:
363
360
 
364
361
  $ ramaze --help
@@ -366,16 +363,16 @@ For more information about the usage of ramaze try:
366
363
 
367
364
  Examples include:
368
365
 
369
- * examples/hello.rb
366
+ * examples/basic/hello.rb
370
367
  Hello, World!
371
368
 
372
- * examples/simple.rb
369
+ * examples/basic/simple.rb
373
370
  A bit more advanced than the hello-example, but still very basic.
374
371
 
375
- * examples/blog
372
+ * examples/app/blog
376
373
  Not yet fully functional, but coming along.
377
374
 
378
- * examples/whywiki
375
+ * examples/app/whywiki
379
376
  A basic examples of a minimalistic application, based on the Wiki of \_why in
380
377
  his camping-framework.
381
378
 
data/Rakefile CHANGED
@@ -14,7 +14,7 @@ PROJECT_SPECS = FileList[
14
14
  PROJECT_MODULE = 'Ramaze'
15
15
  PROJECT_JQUERY_FILE = 'lib/proto/public/js/jquery.js'
16
16
  PROJECT_README = 'README.md'
17
- PROJECT_VERSION = ENV['VERSION'].dup || Date.today.strftime('%Y.%m.%d')
17
+ PROJECT_VERSION = (ENV['VERSION'] || Date.today.strftime('%Y.%m.%d')).dup
18
18
  PROJECT_COPYRIGHT = [
19
19
  "# Copyright (c) #{Time.now.year} Michael Fellinger m.fellinger@gmail.com",
20
20
  "# All files in this distribution are subject to the terms of the Ruby license."
@@ -25,41 +25,38 @@ DEPENDENCIES = {
25
25
  }
26
26
 
27
27
  DEVELOPMENT_DEPENDENCIES = {
28
- "abstract" => {:version => "1.0.0"},
29
- "addressable" => {:version => "2.1.1"},
30
- "bacon" => {:version => "1.1.0"},
31
- "builder" => {:version => "2.1.2"},
32
- "erector" => {:version => "0.7.2"},
33
- "erubis" => {:version => "2.6.5"},
34
- "ezamar" => {:version => "2009.06"},
35
- "gemcutter" => {:version => "0.5.0"},
36
- "haml" => {:version => "2.2.20"},
37
- "hpricot" => {:version => "0.8.2"},
38
- "json" => {:version => "1.2.0"},
39
- "less" => {:version => "1.1.13"},
40
- "liquid" => {:version => "2.0.0"},
41
- "locale" => {:version => "2.0.5"},
42
- "localmemcache" => {:version => "0.4.4"},
43
- "lokar" => {:version => "0.1.0"},
44
- "maruku" => {:version => "0.6.0"},
45
- "memcache-client" => {:version => "1.8.0", :lib => 'memcache'},
46
- "mustache" => {:version => "0.6.0"},
47
- "mutter" => {:version => "0.5.3"},
48
- "nagoro" => {:version => "2009.05"},
49
- "polyglot" => {:version => "0.3.0"},
50
- "rack-contrib" => {:version => "0.9.2", :lib => 'rack/contrib'},
51
- "rack-test" => {:version => "0.5.3", :lib => 'rack/test'},
52
- "ramaze" => {:version => "2010.03.02"},
53
- "RedCloth" => {:version => "4.2.3"},
54
- "Remarkably" => {:version => "0.5.2", :lib => 'remarkably'},
55
- "RubyInline" => {:version => "3.8.4"},
56
- "sequel" => {:version => "3.9.0"},
57
- "slippers" => {:version => "0.0.14"},
58
- "sqlite3-ruby" => {:version => "1.2.5", :lib => 'sqlite3'},
59
- "tagz" => {:version => "7.2.3"},
60
- "tenjin" => {:version => "0.6.1"},
61
- "treetop" => {:version => "1.4.4"},
62
- "ZenTest" => {:version => "4.2.1"},
28
+ "abstract" => {:version => "1.0.0"},
29
+ "addressable" => {:version => "2.1.1"},
30
+ "bacon" => {:version => "1.1.0"},
31
+ "builder" => {:version => "2.1.2"},
32
+ "erector" => {:version => "0.7.2"},
33
+ "erubis" => {:version => "2.6.5"},
34
+ "ezamar" => {:version => "2009.06"},
35
+ "gemcutter" => {:version => "0.5.0"},
36
+ "haml" => {:version => "2.2.22"},
37
+ "hpricot" => {:version => "0.8.2"},
38
+ "json" => {:version => "1.2.3"},
39
+ "less" => {:version => "1.2.21"},
40
+ "liquid" => {:version => "2.0.0"},
41
+ "locale" => {:version => "2.0.5"},
42
+ "localmemcache" => {:version => "0.4.4"},
43
+ "lokar" => {:version => "0.1.0"},
44
+ "maruku" => {:version => "0.6.0"},
45
+ "memcache-client" => {:version => "1.8.1", :lib => 'memcache'},
46
+ "mustache" => {:version => "0.9.2"},
47
+ "mutter" => {:version => "0.5.3"},
48
+ "nagoro" => {:version => "2009.05"},
49
+ "rack-contrib" => {:version => "0.9.2", :lib => 'rack/contrib'},
50
+ "rack-test" => {:version => "0.5.3", :lib => 'rack/test'},
51
+ "RedCloth" => {:version => "4.2.3"},
52
+ "Remarkably" => {:version => "0.5.2", :lib => 'remarkably'},
53
+ "RubyInline" => {:version => "3.8.4"},
54
+ "sequel" => {:version => "3.9.0"},
55
+ "scaffolding_extensions" => {:version => "1.4.0"},
56
+ "slippers" => {:version => "0.0.14"},
57
+ "sqlite3-ruby" => {:version => "1.2.5", :lib => 'sqlite3'},
58
+ "tagz" => {:version => "7.2.3"},
59
+ "tenjin" => {:version => "0.6.1"},
63
60
  }
64
61
 
65
62
  GEMSPEC = Gem::Specification.new{|s|
@@ -83,8 +80,8 @@ GEMSPEC = Gem::Specification.new{|s|
83
80
  ============================================================
84
81
 
85
82
  Thank you for installing Ramaze!
86
- You can now do create a new project:
87
- # ramaze create yourproject
83
+ To create a new project:
84
+ $ ramaze create yourproject
88
85
 
89
86
  ============================================================
90
87
  MESSAGE
data/doc/AUTHORS CHANGED
@@ -1,13 +1,14 @@
1
1
  Following persons have contributed to ramaze.
2
2
  (Sorted by number of submitted patches, then alphabetically)
3
3
 
4
- 2682 Michael Fellinger <m.fellinger@gmail.com>
4
+ 2689 Michael Fellinger <m.fellinger@gmail.com>
5
5
  216 Aman Gupta <aman@ramaze.net>
6
6
  89 Jonathan Buch <jonathan.buch@gmail.com>
7
7
  77 Pistos <gitsomegrace.5.pistos@geoshell.com>
8
8
  69 Clive Crous <clive@crous.co.za>
9
9
  27 Keita Yamaguchi <keita.yamaguchi@gmail.com>
10
10
  20 Ryan Grove <ryan@wonko.com>
11
+ 19 injekt <injekt.me@gmail.com>
11
12
  16 TJ Vanderpoel <bougy.man@gmail.com>
12
13
  11 Wang, Jinjing <nfjinjing@gmail.com>
13
14
  8 Mario Gutierrez <mgutz@mgutz-mbp.local>
@@ -22,12 +23,12 @@ Following persons have contributed to ramaze.
22
23
  4 mig <mig@mypeplum.com>
23
24
  3 Chris Duncan <celldee@gmail.com>
24
25
  3 Clinton R. Nixon <clinton.nixon@viget.com>
26
+ 3 Masahiro Nakagawa <repeatedly@gmail.com>
25
27
  3 Riku Raisaenen <riku@helloit.fi>
26
28
  3 starapor <me@sarahtaraporewalla.com>
27
29
  2 Andrew Farmer <xichekolas@gmail.com>
28
30
  2 jShaf <joshua.shaffner@gmail.com>
29
31
  2 Lars Olsson <lasso@lassoweb.se>
30
- 2 Masahiro Nakagawa <repeatedly@gmail.com>
31
32
  2 Yutaka HARA <yutaka.hara+github@gmail.com>
32
33
  1 Aaron Mueller <mail@aaron-mueller.de>
33
34
  1 Ara T. Howard <ara.t.howard@gmail.com>
@@ -35,6 +36,7 @@ Following persons have contributed to ramaze.
35
36
  1 Cheah Chu Yeow <chuyeow@gmail.com>
36
37
  1 Christian Neukirchen <chneukirchen@gmail.com>
37
38
  1 Colin Shea <colin@centuar.(none)>
39
+ 1 crab <crabtw@gmail.com>
38
40
  1 Dmitry Gorbik <dmitrygorbik@isengard.local>
39
41
  1 Fabian Buch <fabian.buch@fabian-buch.de>
40
42
  1 Gavin Kistner <gavin@phrogz.net>
data/doc/CHANGELOG CHANGED
@@ -1,3 +1,118 @@
1
+ [8a77923 | Fri Apr 02 15:43:02 UTC 2010] Michael Fellinger <m.fellinger@gmail.com>
2
+
3
+ * Version 2010.04
4
+
5
+ [f8a2708 | Fri Apr 02 15:41:43 UTC 2010] Michael Fellinger <m.fellinger@gmail.com>
6
+
7
+ * Fix Mustache engine
8
+
9
+ [a1c7fd6 | Fri Apr 02 15:34:50 UTC 2010] Michael Fellinger <m.fellinger@gmail.com>
10
+
11
+ * Update post install message
12
+
13
+ [fd3697a | Fri Apr 02 15:34:36 UTC 2010] Michael Fellinger <m.fellinger@gmail.com>
14
+
15
+ * Update dependencies
16
+
17
+ [135bc90 | Fri Apr 02 07:11:24 UTC 2010] injekt <injekt.me@gmail.com>
18
+
19
+ * fixed file dispatcher spec
20
+
21
+ [4891e4b | Fri Apr 02 01:35:11 UTC 2010] injekt <injekt.me@gmail.com>
22
+
23
+ * added scaffolding_extensions dev dependency
24
+
25
+ [f098e58 | Fri Apr 02 01:05:51 UTC 2010] injekt <injekt.me@gmail.com>
26
+
27
+ * fixed todolist requires
28
+
29
+ [32c33de | Fri Apr 02 00:46:31 UTC 2010] injekt <injekt.me@gmail.com>
30
+
31
+ * pagination fixes
32
+
33
+ [89080f4 | Fri Apr 02 00:19:34 UTC 2010] injekt <injekt.me@gmail.com>
34
+
35
+ * paginate helper to extend sequel with pagination
36
+
37
+ [8c1a80a | Fri Apr 02 00:12:21 UTC 2010] injekt <injekt.me@gmail.com>
38
+
39
+ * fixed blog example
40
+
41
+ [a4cc3cc | Mon Mar 29 15:13:35 UTC 2010] injekt <injekt.me@gmail.com>
42
+
43
+ * fixed partial example
44
+
45
+ [df28492 | Mon Mar 29 14:59:09 UTC 2010] injekt <injekt.me@gmail.com>
46
+
47
+ * fix layout example
48
+
49
+ [33fe3d0 | Fri Mar 26 11:49:18 UTC 2010] injekt <injekt.me@gmail.com>
50
+
51
+ * fixed path in usage example
52
+
53
+ [de80952 | Fri Mar 26 11:45:54 UTC 2010] injekt <injekt.me@gmail.com>
54
+
55
+ * fixed a couple of depreciated methods in documentation
56
+
57
+ [68682c1 | Fri Mar 26 01:18:05 UTC 2010] injekt <injekt.me@gmail.com>
58
+
59
+ * Change app location setting to how it's documented
60
+
61
+ [7de6f76 | Fri Mar 26 00:51:35 UTC 2010] injekt <injekt.me@gmail.com>
62
+
63
+ * added spec for todolist example
64
+
65
+ [1c2848e | Fri Mar 26 00:29:47 UTC 2010] injekt <injekt.me@gmail.com>
66
+
67
+ * fixed todolist example
68
+
69
+ [fccee57 | Wed Mar 24 14:00:37 UTC 2010] injekt <injekt.me@gmail.com>
70
+
71
+ * fixed documention for number_counter, wrong method name used
72
+
73
+ [a7ee66f | Wed Mar 24 02:20:19 UTC 2010] injekt <injekt.me@gmail.com>
74
+
75
+ * added spec for sequel_scaffolding
76
+
77
+ [f19ddf9 | Wed Mar 24 02:11:34 UTC 2010] injekt <injekt.me@gmail.com>
78
+
79
+ * fixed sequel_scaffolding example
80
+
81
+ [4c36872 | Wed Mar 24 00:05:12 UTC 2010] injekt <injekt.me@gmail.com>
82
+
83
+ * xhtml helpers should chomp leading slash from prefix
84
+
85
+ [d4dcc8a | Tue Mar 23 16:24:28 UTC 2010] injekt <injekt.me@gmail.com>
86
+
87
+ * adapter handler should be fastcgi rack handler
88
+
89
+ [d11daa3 | Tue Mar 23 10:07:40 UTC 2010] injekt <injekt.me@gmail.com>
90
+
91
+ * Project creator not copying dotfiles (.htaccess) due to globbing
92
+
93
+ [bd1ec41 | Fri Mar 19 01:22:55 UTC 2010] Michael Fellinger <m.fellinger@gmail.com>
94
+
95
+ * Replace last occurances of Global
96
+
97
+ [050a949 | Thu Mar 11 18:44:20 UTC 2010] Masahiro Nakagawa <repeatedly@gmail.com>
98
+
99
+ * Fix Mustache template adapter
100
+
101
+ Mustache changed template context(latest version doesn't use Hash).
102
+ So, if template file doesn't find, use Mustache::Context instead of Hash.
103
+
104
+ [6df728c | Thu Mar 11 08:14:43 UTC 2010] crab <crabtw@gmail.com>
105
+
106
+ * use Ramaze.options.prefix as link prefix
107
+
108
+ [1095d18 | Tue Mar 09 01:50:23 UTC 2010] Michael Fellinger <m.fellinger@gmail.com>
109
+
110
+ * ramaze is no dependency of ramaze
111
+
112
+ [b46443d | Tue Mar 09 01:47:57 UTC 2010] Michael Fellinger <m.fellinger@gmail.com>
113
+
114
+ * Fix .dup in Rakefile
115
+
1
116
  [43a38b8 | Mon Mar 08 13:55:07 UTC 2010] Michael Fellinger <m.fellinger@gmail.com>
2
117
 
3
118
  * Version 2010.03
@@ -2,8 +2,8 @@ require 'rubygems'
2
2
  require 'ramaze'
3
3
 
4
4
  Ramaze.setup :verbose => true do
5
- gem 'sequel', '2.12.0'
6
- gem 'maruku', '0.5.9'
5
+ gem 'sequel', '3.9.0'
6
+ gem 'maruku', '0.6.0'
7
7
  end
8
8
 
9
9
  module Blog
@@ -3,6 +3,8 @@ module Blog
3
3
  engine :Nagoro
4
4
  layout(:default){|path, wish| wish !~ /rss|atom/ }
5
5
  map_layouts '/'
6
+ map nil, :blog
7
+ app.location = '/'
6
8
  trait :app => :blog
7
9
  helper :form, :auth, :formatting
8
10
 
@@ -6,6 +6,7 @@ module Blog
6
6
  # DB = Sequel.connect("sqlite:///#{__DIR__}/../blog.db")
7
7
  end
8
8
 
9
+ Sequel.extension :pagination
9
10
  Sequel::Model.plugin :validation_class_methods
10
11
  Sequel::Model.plugin :schema
11
12
  Sequel::Model.plugin :hook_class_methods
@@ -2,4 +2,4 @@ $LOAD_PATH.unshift(File.dirname(__FILE__))
2
2
 
3
3
  require 'app'
4
4
 
5
- Ramaze.start(:adapter => :webrick, :mode => :dev) if $0 == __FILE__
5
+ Ramaze.start :adapter => :webrick, :mode => :dev
@@ -3,8 +3,10 @@ module TodoList
3
3
  layout :default
4
4
  engine :Etanni
5
5
  helper :form
6
- trait :app => :todolist
6
+
7
+ map '/', :todolist
8
+ app.location = '/'
7
9
  end
8
10
  end
9
11
 
10
- require 'controller/task'
12
+ require __DIR__'task'
@@ -22,17 +22,17 @@ module TodoList
22
22
  end
23
23
 
24
24
  def open(title)
25
- Task[:title => title].open!
25
+ Task[:title => Ramaze::Helper::CGI.url_decode(title)].open!
26
26
  redirect r('/')
27
27
  end
28
28
 
29
29
  def close(title)
30
- Task[:title => title].close!
30
+ Task[:title => Ramaze::Helper::CGI.url_decode(title)].close!
31
31
  redirect r('/')
32
32
  end
33
33
 
34
34
  def delete(title)
35
- Task[:title => title].destroy
35
+ Task[:title => Ramaze::Helper::CGI.url_decode(title)].destroy
36
36
  redirect r('/')
37
37
  end
38
38
  end
@@ -11,4 +11,4 @@ module TodoList
11
11
  # DB = Sequel.sqlite(__DIR__('../todolist.sqlite'))
12
12
  end
13
13
 
14
- require 'model/task'
14
+ require __DIR__'task'
@@ -5,7 +5,7 @@ Ramaze.setup do
5
5
  gem 'sequel'
6
6
  end
7
7
 
8
- require 'controller/init'
9
- require 'model/init'
8
+ require __DIR__'controller/init'
9
+ require __DIR__'model/init'
10
10
 
11
11
  Ramaze.start
@@ -3,7 +3,7 @@ require 'ramaze'
3
3
 
4
4
  class MainController < Ramaze::Controller
5
5
  layout :page
6
- provide :html => :nagoro
6
+ provide :html, :engine => :Nagoro
7
7
 
8
8
  def index
9
9
  @title = "Test"
@@ -7,7 +7,7 @@ require 'ramaze'
7
7
  # Browse to /more and /even_more
8
8
 
9
9
  class MainController < Ramaze::Controller
10
- provide :html => :nagoro
10
+ engine :nagoro
11
11
 
12
12
  def index
13
13
  "Hello, World!"
@@ -3,8 +3,9 @@ require 'ramaze'
3
3
 
4
4
  # A very simple little application, you can simply run it and
5
5
  # point your browser to http://localhost:7000
6
- # you can change the port by setting
7
- # Global.port = 80
6
+ #
7
+ # You can change the port by setting
8
+ # Ramaze.options.adapter.port = 80
8
9
  # this most likely requires root-privileges though.
9
10
 
10
11
  # This example shows following (requests to the mentioned base-url) :
@@ -3,8 +3,14 @@ require 'ramaze'
3
3
  require 'sequel'
4
4
  require 'scaffolding_extensions'
5
5
 
6
+ # More information on Scaffolding Extensions here: http://scaffolding-ext.rubyforge.org/
7
+
6
8
  DB = Sequel.sqlite
7
9
 
10
+ # Sequel::Model doesn't support schema creation by default
11
+ # So we have to load it as a plugin
12
+ Sequel::Model.plugin :schema
13
+
8
14
  class User < Sequel::Model(:user)
9
15
  set_schema do
10
16
  primary_key :id
@@ -12,12 +18,17 @@ class User < Sequel::Model(:user)
12
18
  text :description
13
19
  end
14
20
 
15
- create_table unless User.table_exists?
21
+ create_table unless table_exists?
22
+
23
+ # Add a couple of users to our database
24
+ create(:name => 'manveru', :description => 'The first user!')
25
+ create(:name => 'injekt', :description => 'Just another user')
16
26
  end
17
27
 
18
28
  ScaffoldingExtensions.all_models = [User]
19
29
 
20
30
  class UserController < Ramaze::Controller
31
+ map '/user'
21
32
  scaffold_all_models :only => [User]
22
33
  end
23
34
 
@@ -27,7 +38,7 @@ class MainController < Ramaze::Controller
27
38
  <a href="http://sequel.rubyforge.org/classes/Sequel/Model.html">
28
39
  Sequel::Model
29
40
  </a> User.
30
- You can access the scaffolded Model at #{A('/user')}}
41
+ You can access the scaffolded Model at #{a('/user')}}
31
42
  end
32
43
  end
33
44