ramaze 2012.12.08b → 2012.12.08
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +1 -0
- data/guide/AUTHORS +1 -1
- data/guide/CHANGELOG +49 -0
- data/guide/general/upgrading.md +85 -0
- data/lib/ramaze/version.rb +1 -1
- data/ramaze.gemspec +9 -4
- data/spec/ramaze/cache/sequel.rb +2 -0
- data/spec/ramaze/dispatcher/directory.rb +14 -11
- data/spec/ramaze/helper/paginate.rb +16 -13
- data/spec/ramaze/log/syslog.rb +66 -63
- data/spec/ramaze/session/localmemcache.rb +2 -0
- data/spec/ramaze/session/sequel.rb +2 -0
- metadata +22 -21
data/README.md
CHANGED
@@ -104,6 +104,7 @@ table of contents isn't rendered. You can find all these files in the ``guide/``
|
|
104
104
|
directory.
|
105
105
|
|
106
106
|
* {file:general/installation Installation}
|
107
|
+
* {file:general/upgrading Upgrading}
|
107
108
|
* {file:general/principles Principles}
|
108
109
|
* {file:general/special_thanks Special Thanks}
|
109
110
|
* {file:general/contributing Contributing To Ramaze}
|
data/guide/AUTHORS
CHANGED
@@ -2,7 +2,7 @@ Following persons have contributed to ramaze.
|
|
2
2
|
(Sorted by number of submitted patches, then alphabetically)
|
3
3
|
|
4
4
|
2740 Michael Fellinger <m.fellinger@gmail.com>
|
5
|
-
|
5
|
+
238 Yorick Peterse <yorickpeterse@gmail.com>
|
6
6
|
216 Aman Gupta <aman@ramaze.net>
|
7
7
|
89 Jonathan Buch <jonathan.buch@gmail.com>
|
8
8
|
77 Pistos <gitsomegrace.5.pistos@geoshell.com>
|
data/guide/CHANGELOG
CHANGED
@@ -1,3 +1,52 @@
|
|
1
|
+
[679c415 | Sat Dec 08 18:16:36 UTC 2012] Yorick Peterse <yorickpeterse@gmail.com>
|
2
|
+
|
3
|
+
* Added a note about upgrading.
|
4
|
+
|
5
|
+
[ci skip]
|
6
|
+
|
7
|
+
Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
|
8
|
+
|
9
|
+
[6191bdf | Sat Dec 08 17:35:15 UTC 2012] Yorick Peterse <yorickpeterse@gmail.com>
|
10
|
+
|
11
|
+
* Disable syslog tests on jruby.
|
12
|
+
|
13
|
+
The Syslog tests can not be executed on jruby due to the use of Process.fork.
|
14
|
+
|
15
|
+
Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
|
16
|
+
|
17
|
+
[5be0d61 | Sat Dec 08 17:27:21 UTC 2012] Yorick Peterse <yorickpeterse@gmail.com>
|
18
|
+
|
19
|
+
* Enable syslog and disable localmemcache for jruby.
|
20
|
+
|
21
|
+
Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
|
22
|
+
|
23
|
+
[d8fdd3d | Sat Dec 08 17:16:47 UTC 2012] Yorick Peterse <yorickpeterse@gmail.com>
|
24
|
+
|
25
|
+
* Don't install C extensions for jruby.
|
26
|
+
|
27
|
+
Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
|
28
|
+
|
29
|
+
[8c271b7 | Sat Dec 08 17:08:22 UTC 2012] Yorick Peterse <yorickpeterse@gmail.com>
|
30
|
+
|
31
|
+
* Replaced hpricot with Nokogiri.
|
32
|
+
|
33
|
+
Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
|
34
|
+
|
35
|
+
[c35a729 | Sat Dec 08 01:21:43 UTC 2012] Yorick Peterse <yorickpeterse@gmail.com>
|
36
|
+
|
37
|
+
* Don't install localmemcache for jruby.
|
38
|
+
|
39
|
+
Localmemcache is a C extension and these don't work reliably on Jruby. C
|
40
|
+
extension support is also disabled on Travis CI.
|
41
|
+
|
42
|
+
Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
|
43
|
+
|
44
|
+
[aad4e3e | Fri Dec 07 23:28:01 UTC 2012] Yorick Peterse <yorickpeterse@gmail.com>
|
45
|
+
|
46
|
+
* Release 2012.12.08b
|
47
|
+
|
48
|
+
Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
|
49
|
+
|
1
50
|
[d94938b | Fri Dec 07 23:27:39 UTC 2012] Yorick Peterse <yorickpeterse@gmail.com>
|
2
51
|
|
3
52
|
* Switch back to dates for versions.
|
@@ -0,0 +1,85 @@
|
|
1
|
+
# @title Upgrading
|
2
|
+
# Upgrading
|
3
|
+
|
4
|
+
Ramaze strives to be backwards compatible between each release. However, some
|
5
|
+
releases may contain changes that are *not* backwards compatible. This document
|
6
|
+
describes the steps required to upgrade between these releases.
|
7
|
+
|
8
|
+
## Upgrading to Ramaze 2012.12.08
|
9
|
+
|
10
|
+
Ramaze 2012.12.08 is **not** backwards compatible with previous releases due
|
11
|
+
to changes made in Innate 2012.12.
|
12
|
+
|
13
|
+
### Middleware
|
14
|
+
|
15
|
+
In previous versions one could add Rack middleware using `Ramaze.middleware!`.
|
16
|
+
This method has been renamed to `Ramaze.middleware` (without the `!`) and its
|
17
|
+
use has been changed. Instead of calling `run Ramaze.middleware` one now has to
|
18
|
+
use `run Ramaze.core`.
|
19
|
+
|
20
|
+
An example of the old way of defining middleware:
|
21
|
+
|
22
|
+
Ramaze.middleware! :dev do |m|
|
23
|
+
m.use Rack::Lint
|
24
|
+
m.run Ramaze.middleware
|
25
|
+
end
|
26
|
+
|
27
|
+
The new way of defining middleware:
|
28
|
+
|
29
|
+
Ramaze.middleware :dev do
|
30
|
+
use Rack::Lint
|
31
|
+
run Ramaze.core
|
32
|
+
end
|
33
|
+
|
34
|
+
### Commands
|
35
|
+
|
36
|
+
Various executable commands such as `ramaze start` and `ramaze console` have
|
37
|
+
been removed in favour of the use of Rake tasks. For existing projects that do
|
38
|
+
not have these Rake tasks you'll have to import them manually, new projects
|
39
|
+
will have these tasks automatically. These tasks are located [here][rake
|
40
|
+
tasks].
|
41
|
+
|
42
|
+
These commands were removed as they contained a lot of old and rotting code
|
43
|
+
without any tests. Some of them, such as `ramaze start` weren't very useful
|
44
|
+
either as most people will use the commands for their webservers (e.g. Thin)
|
45
|
+
instead. The use of Rake tasks also makes it possible for people to customize
|
46
|
+
these to their liking.
|
47
|
+
|
48
|
+
### Snippets
|
49
|
+
|
50
|
+
Ramaze ships with various snippets that extend various core Ruby classes. In
|
51
|
+
Ramaze 2012.12.08 a lot of these snippets have been removed. A list of all the
|
52
|
+
removed snippets can be found [here][removed snippets].
|
53
|
+
|
54
|
+
### Loggers
|
55
|
+
|
56
|
+
The following logging classes are no longer available:
|
57
|
+
|
58
|
+
* Ramaze::Logger::Growl
|
59
|
+
* Ramaze::Logger::Analogger
|
60
|
+
* Ramaze::Logger::Knotify
|
61
|
+
* Ramaze::Logger::Xosd
|
62
|
+
|
63
|
+
### Helpers
|
64
|
+
|
65
|
+
The following helpers have been removed:
|
66
|
+
|
67
|
+
* Ramaze::Helper::Disqus
|
68
|
+
* Ramaze::Helper::Ultraviolet
|
69
|
+
|
70
|
+
### Core classes
|
71
|
+
|
72
|
+
The following core classes have been removed:
|
73
|
+
|
74
|
+
* Ramaze::AppGraph
|
75
|
+
* Ramaze::Plugin
|
76
|
+
* Ramaze::MiddlewareCompiler (alias of Innate::MiddlewareCompiler)
|
77
|
+
|
78
|
+
### Prototypes
|
79
|
+
|
80
|
+
The prototype generated by `ramaze create` has been changed. It contains a set
|
81
|
+
of Rake tasks, a README, a Gemfile and some other small changes compared to the
|
82
|
+
previous prototype. Existing projects are not affected.
|
83
|
+
|
84
|
+
[rake tasks]: https://github.com/Ramaze/ramaze/blob/master/lib/proto/task/ramaze.rake
|
85
|
+
[removed snippets]: https://github.com/Ramaze/ramaze/commit/7e966dcdec50d490eb828f7673f101b1a6b087b3
|
data/lib/ramaze/version.rb
CHANGED
data/ramaze.gemspec
CHANGED
@@ -27,29 +27,34 @@ Gem::Specification.new do |s|
|
|
27
27
|
s.add_development_dependency 'erubis'
|
28
28
|
s.add_development_dependency 'ezamar'
|
29
29
|
s.add_development_dependency 'haml'
|
30
|
-
s.add_development_dependency 'hpricot'
|
31
30
|
s.add_development_dependency 'liquid'
|
32
31
|
s.add_development_dependency 'locale'
|
33
32
|
s.add_development_dependency 'maruku'
|
34
33
|
s.add_development_dependency 'mustache'
|
35
34
|
s.add_development_dependency 'rack-contrib'
|
36
35
|
s.add_development_dependency 'rack-test'
|
37
|
-
s.add_development_dependency 'rdiscount'
|
38
36
|
s.add_development_dependency 'redis'
|
39
37
|
s.add_development_dependency 'sass'
|
40
38
|
s.add_development_dependency 'sequel'
|
41
39
|
s.add_development_dependency 'slim'
|
42
40
|
s.add_development_dependency 'slippers'
|
43
|
-
s.add_development_dependency 'sqlite3'
|
44
41
|
s.add_development_dependency 'tagz'
|
45
42
|
s.add_development_dependency 'tenjin'
|
46
43
|
s.add_development_dependency 'yard'
|
47
|
-
s.add_development_dependency 'localmemcache'
|
48
44
|
|
49
45
|
if RUBY_VERSION.to_f >= 1.9
|
50
46
|
s.add_development_dependency 'lokar'
|
51
47
|
end
|
52
48
|
|
49
|
+
# C extensions don't work reliably on jruby and Travis CI doesn't have them
|
50
|
+
# enabled.
|
51
|
+
if !RUBY_DESCRIPTION.include?('jruby')
|
52
|
+
s.add_development_dependency 'localmemcache'
|
53
|
+
s.add_development_dependency 'nokogiri'
|
54
|
+
s.add_development_dependency 'rdiscount'
|
55
|
+
s.add_development_dependency 'sqlite3'
|
56
|
+
end
|
57
|
+
|
53
58
|
# Nagoro doesn't seem to work on Rbx
|
54
59
|
if !RUBY_DESCRIPTION.include?('rubinius')
|
55
60
|
s.add_development_dependency 'nagoro'
|
data/spec/ramaze/cache/sequel.rb
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
require File.expand_path('../../../../spec/helper', __FILE__)
|
5
5
|
|
6
|
-
spec_require '
|
6
|
+
spec_require 'nokogiri'
|
7
7
|
|
8
8
|
Ramaze.middleware(:spec) do
|
9
9
|
run Rack::ETag.new(
|
@@ -38,23 +38,25 @@ describe 'Directory listing' do
|
|
38
38
|
|
39
39
|
def check(url, title, list)
|
40
40
|
got = get(url)
|
41
|
-
|
41
|
+
|
42
|
+
got.status.should == 200
|
42
43
|
got['Content-Type'].should == 'text/html; charset=utf-8'
|
43
44
|
|
44
|
-
doc =
|
45
|
+
doc = Nokogiri::HTML(got.body)
|
46
|
+
|
45
47
|
doc.at(:title).inner_text.should == title
|
46
48
|
|
47
|
-
(
|
49
|
+
doc.css('td.name a').map{|a| [a[:href], a.inner_text] }.should == list
|
48
50
|
end
|
49
51
|
|
50
52
|
should 'dry serve root directory' do
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
53
|
+
files = [
|
54
|
+
["../", "Parent Directory"],
|
55
|
+
["/favicon.ico", "favicon.ico"],
|
56
|
+
["/file+name.txt", "file name.txt"],
|
57
|
+
["/test/", "test/"],
|
58
|
+
["/test_download.css", "test_download.css"]
|
59
|
+
]
|
58
60
|
|
59
61
|
check '/', '/', files
|
60
62
|
end
|
@@ -66,6 +68,7 @@ describe 'Directory listing' do
|
|
66
68
|
["/test/five.txt", "five.txt"],
|
67
69
|
["/test/six.txt", "six.txt"]
|
68
70
|
]
|
71
|
+
|
69
72
|
check '/test', '/test', files
|
70
73
|
end
|
71
74
|
|
@@ -2,7 +2,8 @@
|
|
2
2
|
# All files in this distribution are subject to the terms of the MIT license.
|
3
3
|
|
4
4
|
require File.expand_path('../../../../spec/helper', __FILE__)
|
5
|
-
|
5
|
+
|
6
|
+
spec_require 'nokogiri'
|
6
7
|
|
7
8
|
class SpecHelperPaginateArray < Ramaze::Controller
|
8
9
|
map '/array'
|
@@ -38,8 +39,9 @@ describe Ramaze::Helper::Paginate do
|
|
38
39
|
behaves_like :rack_test
|
39
40
|
|
40
41
|
it 'shows navigation for page 1' do
|
41
|
-
doc =
|
42
|
-
|
42
|
+
doc = Nokogiri::HTML(get("/array/navigation").body)
|
43
|
+
|
44
|
+
doc.css('a').map{|a| [a.inner_text, a[:href]] }.
|
43
45
|
should == [
|
44
46
|
['1', '/array/navigation?pager=1'],
|
45
47
|
['2', '/array/navigation?pager=2'],
|
@@ -49,8 +51,9 @@ describe Ramaze::Helper::Paginate do
|
|
49
51
|
end
|
50
52
|
|
51
53
|
it 'shows navigation for page 2' do
|
52
|
-
doc =
|
53
|
-
|
54
|
+
doc = Nokogiri::HTML(get("/array/navigation?pager=2").body)
|
55
|
+
|
56
|
+
doc.css('a').map{|a| [a.inner_text, a[:href]] }.
|
54
57
|
should == [
|
55
58
|
['<<', '/array/navigation?pager=1'],
|
56
59
|
['<', '/array/navigation?pager=1'],
|
@@ -62,8 +65,8 @@ describe Ramaze::Helper::Paginate do
|
|
62
65
|
end
|
63
66
|
|
64
67
|
it 'shows navigation for page 3' do
|
65
|
-
doc =
|
66
|
-
(
|
68
|
+
doc = Nokogiri::HTML(get("/array/navigation?pager=3").body)
|
69
|
+
doc.css('a').map{|a| [a.inner_text, a[:href]] }.
|
67
70
|
should == [
|
68
71
|
['<<', '/array/navigation?pager=1'],
|
69
72
|
['<', '/array/navigation?pager=2'],
|
@@ -78,7 +81,7 @@ describe Ramaze::Helper::Paginate do
|
|
78
81
|
end
|
79
82
|
|
80
83
|
it 'sets default css elements on page 1' do
|
81
|
-
doc =
|
84
|
+
doc = Nokogiri::HTML(get('/array/navigation').body)
|
82
85
|
# Paginator outputs spans for disabled elements
|
83
86
|
# Since we're on the first page, the first two
|
84
87
|
# elements are spans, then a's
|
@@ -109,7 +112,7 @@ describe Ramaze::Helper::Paginate do
|
|
109
112
|
end
|
110
113
|
|
111
114
|
it 'sets default css elements on page 2' do
|
112
|
-
doc =
|
115
|
+
doc = Nokogiri::HTML(get('/array/navigation?pager=2').body)
|
113
116
|
# Paginator outputs spans for disabled elements
|
114
117
|
# Since we're on the second page, none are disabled
|
115
118
|
# Note that this is only valid for the second page since
|
@@ -140,7 +143,7 @@ describe Ramaze::Helper::Paginate do
|
|
140
143
|
end
|
141
144
|
|
142
145
|
it 'sets default css elements on page 3' do
|
143
|
-
doc =
|
146
|
+
doc = Nokogiri::HTML(get('/array/navigation?pager=3').body)
|
144
147
|
# Paginator outputs spans for disabled elements
|
145
148
|
# Since we're on the last page, last and next will be disabled
|
146
149
|
# Note that this is only valid for the third page
|
@@ -173,7 +176,7 @@ describe Ramaze::Helper::Paginate do
|
|
173
176
|
end
|
174
177
|
|
175
178
|
it 'sets our custom css elements for page 1' do
|
176
|
-
doc =
|
179
|
+
doc = Nokogiri::HTML(get('/array/custom_navigation').body)
|
177
180
|
# Paginator outputs spans for disabled elements
|
178
181
|
# Since we're on the first page, the first two
|
179
182
|
# elements are spans, then a's
|
@@ -209,7 +212,7 @@ describe Ramaze::Helper::Paginate do
|
|
209
212
|
end
|
210
213
|
|
211
214
|
it 'sets our custom css elements on page 2' do
|
212
|
-
doc =
|
215
|
+
doc = Nokogiri::HTML(get('/array/custom_navigation?pager=2').body)
|
213
216
|
# Paginator outputs spans for disabled elements
|
214
217
|
# Since we're on the second page, none are disabled
|
215
218
|
# Note that this is only valid for the second page since
|
@@ -240,7 +243,7 @@ describe Ramaze::Helper::Paginate do
|
|
240
243
|
end
|
241
244
|
|
242
245
|
it 'sets our custom css elements on page 3' do
|
243
|
-
doc =
|
246
|
+
doc = Nokogiri::HTML(get('/array/custom_navigation?pager=3').body)
|
244
247
|
# Paginator outputs spans for disabled elements
|
245
248
|
# Since we're on the last page, last and next will be disabled
|
246
249
|
# Note that this is only valid for the third page
|
data/spec/ramaze/log/syslog.rb
CHANGED
@@ -4,9 +4,9 @@
|
|
4
4
|
|
5
5
|
require File.expand_path('../../../../spec/helper', __FILE__)
|
6
6
|
|
7
|
-
spec_precondition '
|
7
|
+
spec_precondition 'Process.fork should be supported' do
|
8
8
|
if RUBY_DESCRIPTION.include?('jruby')
|
9
|
-
should.flunk '
|
9
|
+
should.flunk 'These tests use Process.fork which does not work on jruby'
|
10
10
|
end
|
11
11
|
end
|
12
12
|
|
@@ -14,70 +14,73 @@ require 'ramaze/log/syslog'
|
|
14
14
|
|
15
15
|
describe 'Syslog' do
|
16
16
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
17
|
+
# close the syslog, if it was open for some reason before we
|
18
|
+
# start a test.
|
19
|
+
before do
|
20
|
+
Syslog.close if Syslog.opened?
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'should default initialize correctly' do
|
24
|
+
syslog = Ramaze::Logger::Syslog.new
|
25
|
+
::Syslog.opened?.should == true
|
26
|
+
::Syslog.ident.should == $0
|
27
|
+
::Syslog.options.should == ( ::Syslog::LOG_PID | ::Syslog::LOG_CONS )
|
28
|
+
::Syslog.facility.should == ::Syslog::LOG_USER
|
29
|
+
end
|
30
|
+
|
31
|
+
it 'should handle non default initialization' do
|
32
|
+
syslog = Ramaze::Logger::Syslog.new( 'ramaze_syslog_test',
|
33
|
+
::Syslog::LOG_NDELAY | ::Syslog::LOG_NOWAIT,
|
34
|
+
::Syslog::LOG_DAEMON )
|
35
|
+
::Syslog.opened?.should == true
|
36
|
+
::Syslog.ident.should == 'ramaze_syslog_test'
|
37
|
+
::Syslog.options.should == ( ::Syslog::LOG_NDELAY | ::Syslog::LOG_NOWAIT )
|
38
|
+
::Syslog.facility.should == ::Syslog::LOG_DAEMON
|
39
|
+
end
|
24
40
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
41
|
+
# We test the actual logging using a trick found in te test code of the
|
42
|
+
# syslog module. We create a pipe, fork a child, reroute the childs
|
43
|
+
# stderr to the pipe. Then we open the logging using LOG_PERROR, so all
|
44
|
+
# log messages are written to stderror. In the parent we read the messages
|
45
|
+
# from the pipe and compare them to what we expected.
|
46
|
+
def test_log_msg( type, priority, msg )
|
47
|
+
logpipe = IO::pipe
|
48
|
+
child = fork {
|
49
|
+
logpipe[0].close
|
50
|
+
STDERR.reopen(logpipe[1])
|
51
|
+
syslog = Ramaze::Logger::Syslog.new( 'ramaze_syslog_test',
|
52
|
+
::Syslog::LOG_PID | ::Syslog::LOG_NDELAY | ::Syslog::LOG_PERROR,
|
53
|
+
::Syslog::LOG_USER )
|
54
|
+
syslog.send priority, msg
|
55
|
+
Process.exit!( 0 )
|
56
|
+
}
|
57
|
+
logpipe[1].close
|
58
|
+
Process.waitpid(child)
|
32
59
|
|
33
|
-
|
34
|
-
|
35
|
-
::Syslog::LOG_NDELAY | ::Syslog::LOG_NOWAIT,
|
36
|
-
::Syslog::LOG_DAEMON )
|
37
|
-
::Syslog.opened?.should == true
|
38
|
-
::Syslog.ident.should == 'ramaze_syslog_test'
|
39
|
-
::Syslog.options.should == ( ::Syslog::LOG_NDELAY | ::Syslog::LOG_NOWAIT )
|
40
|
-
::Syslog.facility.should == ::Syslog::LOG_DAEMON
|
41
|
-
end
|
60
|
+
logpipe[0].gets.should == "ramaze_syslog_test[#{child}]: #{msg}\n"
|
61
|
+
end
|
42
62
|
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
# log messages are written to stderror. In the parent we read the messages
|
47
|
-
# from the pipe and compare them to what we expected.
|
48
|
-
def test_log_msg( type, priority, msg )
|
49
|
-
logpipe = IO::pipe
|
50
|
-
child = fork {
|
51
|
-
logpipe[0].close
|
52
|
-
STDERR.reopen(logpipe[1])
|
53
|
-
syslog = Ramaze::Logger::Syslog.new( 'ramaze_syslog_test',
|
54
|
-
::Syslog::LOG_PID | ::Syslog::LOG_NDELAY | ::Syslog::LOG_PERROR,
|
55
|
-
::Syslog::LOG_USER )
|
56
|
-
syslog.send priority, msg
|
57
|
-
Process.exit!( 0 )
|
58
|
-
}
|
59
|
-
logpipe[1].close
|
60
|
-
Process.waitpid(child)
|
63
|
+
it 'should handle debug' do
|
64
|
+
test_log_msg :direct, :debug, "Hello Debug World"
|
65
|
+
end
|
61
66
|
|
62
|
-
|
63
|
-
|
67
|
+
it 'should handle dev' do
|
68
|
+
test_log_msg :direct, :dev, "Hello Dev World"
|
69
|
+
end
|
64
70
|
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
it 'should escape % sequences' do
|
81
|
-
test_log_msg :direct, :info, "Hello Cruel |évil| 戈 REAL %s World"
|
82
|
-
end
|
71
|
+
it 'should handle info' do
|
72
|
+
test_log_msg :direct, :info, 'Hello Info World!'
|
73
|
+
end
|
74
|
+
|
75
|
+
it 'should handle warn' do
|
76
|
+
test_log_msg :direct, :warn, 'Hello Warn World!'
|
77
|
+
end
|
78
|
+
|
79
|
+
it 'should handle error' do
|
80
|
+
test_log_msg :direct, :error, 'Hello Error World!'
|
81
|
+
end
|
82
|
+
|
83
|
+
it 'should escape % sequences' do
|
84
|
+
test_log_msg :direct, :info, "Hello Cruel |évil| 戈 REAL %s World"
|
85
|
+
end
|
83
86
|
end
|
metadata
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ramaze
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2012.12.
|
5
|
-
prerelease:
|
4
|
+
version: 2012.12.08
|
5
|
+
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Michael 'manveru' Fellinger
|
@@ -157,7 +157,7 @@ dependencies:
|
|
157
157
|
- !ruby/object:Gem::Version
|
158
158
|
version: '0'
|
159
159
|
- !ruby/object:Gem::Dependency
|
160
|
-
name:
|
160
|
+
name: liquid
|
161
161
|
requirement: !ruby/object:Gem::Requirement
|
162
162
|
none: false
|
163
163
|
requirements:
|
@@ -173,7 +173,7 @@ dependencies:
|
|
173
173
|
- !ruby/object:Gem::Version
|
174
174
|
version: '0'
|
175
175
|
- !ruby/object:Gem::Dependency
|
176
|
-
name:
|
176
|
+
name: locale
|
177
177
|
requirement: !ruby/object:Gem::Requirement
|
178
178
|
none: false
|
179
179
|
requirements:
|
@@ -189,7 +189,7 @@ dependencies:
|
|
189
189
|
- !ruby/object:Gem::Version
|
190
190
|
version: '0'
|
191
191
|
- !ruby/object:Gem::Dependency
|
192
|
-
name:
|
192
|
+
name: maruku
|
193
193
|
requirement: !ruby/object:Gem::Requirement
|
194
194
|
none: false
|
195
195
|
requirements:
|
@@ -205,7 +205,7 @@ dependencies:
|
|
205
205
|
- !ruby/object:Gem::Version
|
206
206
|
version: '0'
|
207
207
|
- !ruby/object:Gem::Dependency
|
208
|
-
name:
|
208
|
+
name: mustache
|
209
209
|
requirement: !ruby/object:Gem::Requirement
|
210
210
|
none: false
|
211
211
|
requirements:
|
@@ -221,7 +221,7 @@ dependencies:
|
|
221
221
|
- !ruby/object:Gem::Version
|
222
222
|
version: '0'
|
223
223
|
- !ruby/object:Gem::Dependency
|
224
|
-
name:
|
224
|
+
name: rack-contrib
|
225
225
|
requirement: !ruby/object:Gem::Requirement
|
226
226
|
none: false
|
227
227
|
requirements:
|
@@ -237,7 +237,7 @@ dependencies:
|
|
237
237
|
- !ruby/object:Gem::Version
|
238
238
|
version: '0'
|
239
239
|
- !ruby/object:Gem::Dependency
|
240
|
-
name: rack-
|
240
|
+
name: rack-test
|
241
241
|
requirement: !ruby/object:Gem::Requirement
|
242
242
|
none: false
|
243
243
|
requirements:
|
@@ -253,7 +253,7 @@ dependencies:
|
|
253
253
|
- !ruby/object:Gem::Version
|
254
254
|
version: '0'
|
255
255
|
- !ruby/object:Gem::Dependency
|
256
|
-
name:
|
256
|
+
name: redis
|
257
257
|
requirement: !ruby/object:Gem::Requirement
|
258
258
|
none: false
|
259
259
|
requirements:
|
@@ -269,7 +269,7 @@ dependencies:
|
|
269
269
|
- !ruby/object:Gem::Version
|
270
270
|
version: '0'
|
271
271
|
- !ruby/object:Gem::Dependency
|
272
|
-
name:
|
272
|
+
name: sass
|
273
273
|
requirement: !ruby/object:Gem::Requirement
|
274
274
|
none: false
|
275
275
|
requirements:
|
@@ -285,7 +285,7 @@ dependencies:
|
|
285
285
|
- !ruby/object:Gem::Version
|
286
286
|
version: '0'
|
287
287
|
- !ruby/object:Gem::Dependency
|
288
|
-
name:
|
288
|
+
name: sequel
|
289
289
|
requirement: !ruby/object:Gem::Requirement
|
290
290
|
none: false
|
291
291
|
requirements:
|
@@ -301,7 +301,7 @@ dependencies:
|
|
301
301
|
- !ruby/object:Gem::Version
|
302
302
|
version: '0'
|
303
303
|
- !ruby/object:Gem::Dependency
|
304
|
-
name:
|
304
|
+
name: slim
|
305
305
|
requirement: !ruby/object:Gem::Requirement
|
306
306
|
none: false
|
307
307
|
requirements:
|
@@ -317,7 +317,7 @@ dependencies:
|
|
317
317
|
- !ruby/object:Gem::Version
|
318
318
|
version: '0'
|
319
319
|
- !ruby/object:Gem::Dependency
|
320
|
-
name:
|
320
|
+
name: slippers
|
321
321
|
requirement: !ruby/object:Gem::Requirement
|
322
322
|
none: false
|
323
323
|
requirements:
|
@@ -333,7 +333,7 @@ dependencies:
|
|
333
333
|
- !ruby/object:Gem::Version
|
334
334
|
version: '0'
|
335
335
|
- !ruby/object:Gem::Dependency
|
336
|
-
name:
|
336
|
+
name: tagz
|
337
337
|
requirement: !ruby/object:Gem::Requirement
|
338
338
|
none: false
|
339
339
|
requirements:
|
@@ -349,7 +349,7 @@ dependencies:
|
|
349
349
|
- !ruby/object:Gem::Version
|
350
350
|
version: '0'
|
351
351
|
- !ruby/object:Gem::Dependency
|
352
|
-
name:
|
352
|
+
name: tenjin
|
353
353
|
requirement: !ruby/object:Gem::Requirement
|
354
354
|
none: false
|
355
355
|
requirements:
|
@@ -365,7 +365,7 @@ dependencies:
|
|
365
365
|
- !ruby/object:Gem::Version
|
366
366
|
version: '0'
|
367
367
|
- !ruby/object:Gem::Dependency
|
368
|
-
name:
|
368
|
+
name: yard
|
369
369
|
requirement: !ruby/object:Gem::Requirement
|
370
370
|
none: false
|
371
371
|
requirements:
|
@@ -381,7 +381,7 @@ dependencies:
|
|
381
381
|
- !ruby/object:Gem::Version
|
382
382
|
version: '0'
|
383
383
|
- !ruby/object:Gem::Dependency
|
384
|
-
name:
|
384
|
+
name: lokar
|
385
385
|
requirement: !ruby/object:Gem::Requirement
|
386
386
|
none: false
|
387
387
|
requirements:
|
@@ -397,7 +397,7 @@ dependencies:
|
|
397
397
|
- !ruby/object:Gem::Version
|
398
398
|
version: '0'
|
399
399
|
- !ruby/object:Gem::Dependency
|
400
|
-
name:
|
400
|
+
name: localmemcache
|
401
401
|
requirement: !ruby/object:Gem::Requirement
|
402
402
|
none: false
|
403
403
|
requirements:
|
@@ -413,7 +413,7 @@ dependencies:
|
|
413
413
|
- !ruby/object:Gem::Version
|
414
414
|
version: '0'
|
415
415
|
- !ruby/object:Gem::Dependency
|
416
|
-
name:
|
416
|
+
name: nokogiri
|
417
417
|
requirement: !ruby/object:Gem::Requirement
|
418
418
|
none: false
|
419
419
|
requirements:
|
@@ -429,7 +429,7 @@ dependencies:
|
|
429
429
|
- !ruby/object:Gem::Version
|
430
430
|
version: '0'
|
431
431
|
- !ruby/object:Gem::Dependency
|
432
|
-
name:
|
432
|
+
name: rdiscount
|
433
433
|
requirement: !ruby/object:Gem::Requirement
|
434
434
|
none: false
|
435
435
|
requirements:
|
@@ -445,7 +445,7 @@ dependencies:
|
|
445
445
|
- !ruby/object:Gem::Version
|
446
446
|
version: '0'
|
447
447
|
- !ruby/object:Gem::Dependency
|
448
|
-
name:
|
448
|
+
name: sqlite3
|
449
449
|
requirement: !ruby/object:Gem::Requirement
|
450
450
|
none: false
|
451
451
|
requirements:
|
@@ -647,6 +647,7 @@ files:
|
|
647
647
|
- guide/general/sessions.md
|
648
648
|
- guide/general/special_thanks.md
|
649
649
|
- guide/general/testing.md
|
650
|
+
- guide/general/upgrading.md
|
650
651
|
- guide/general/views.md
|
651
652
|
- lib/proto/Gemfile
|
652
653
|
- lib/proto/README.md
|