sinatra-sugar 0.4.0.a → 0.4.0.b

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -12,6 +12,11 @@ BigBand
12
12
  Sinatra::Sugar is part of the [BigBand](http://github.com/rkh/big_band) stack.
13
13
  Check it out if you are looking for other fancy Sinatra extensions.
14
14
 
15
+ Installation
16
+ ------------
17
+
18
+ gem install sinatra-sugar --prerelease
19
+
15
20
  More advanced set
16
21
  -----------------
17
22
 
@@ -22,16 +27,14 @@ More advanced set
22
27
  set :haml, :excape_html => false
23
28
  haml # => { :format => :html5, :escape_html => false }
24
29
 
25
- - Allowes passing a block:
30
+ - Allows passing a block in Sinatra 0.9, too:
26
31
 
27
32
  set(:foo) { Time.now }
28
-
29
- - Defines a helper to access #{key} and #{key}? unless a helper/method with that name already exists.
30
33
 
31
34
  More advanced register
32
35
  ----------------------
33
36
 
34
- If an exntesion is registered twice, the registered hook will only be called once.
37
+ If an extension is registered twice, the registered hook will only be called once.
35
38
 
36
39
  Ability to extend command line options
37
40
  --------------------------------------
data/lib/sinatra/sugar.rb CHANGED
@@ -34,12 +34,11 @@ module Sinatra
34
34
  # set :haml, :format => :html5, :escape_html => true
35
35
  # set :haml, :excape_html => false
36
36
  # haml # => { :format => :html5, :escape_html => false }
37
- # - Allowes passing a block:
37
+ # - Allowes passing a block (for Sinatra 0.9.x):
38
38
  # set(:foo) { Time.now }
39
- # - Defines a helper to access #{key} and #{key}? unless a helper/method with that name already exists.
40
39
  def set(key, value = self, &block)
41
40
  # FIXME: refactor, refactor, refactor
42
- if block_given?
41
+ if block_given? and Sinatra::VERSION < "1.0"
43
42
  raise ArgumentError, "both a value and a block given" if value != self
44
43
  value = block
45
44
  end
@@ -47,11 +46,6 @@ module Sinatra
47
46
  old_value = (send(symbolized) if symbolized and respond_to? symbolized)
48
47
  value = old_value.merge value if value.is_a? Hash and old_value.is_a? Hash
49
48
  super(key, value)
50
- if symbolized
51
- method_names = instance_methods.map { |m| m.to_s }
52
- define_method(key) { self.class.send(key) } unless method_names.include? key.to_s
53
- define_method("#{key}?") { self.class.send("#{key}?") } unless method_names.include? "#{key}?"
54
- end
55
49
  # HACK: Sinatra::Base.set uses recursion and in the final step value always
56
50
  # is a Proc. Also, if value is a Proc no step ever follows. I abuse this to
57
51
  # invoke the hooks only once per set.
@@ -85,7 +79,7 @@ module Sinatra
85
79
  # root_glob("app", "{models,views,controllers}", "*.rb") { |file| load file }
86
80
  # end
87
81
  def root_glob(*args, &block)
88
- Dir.glob(root_path(*args), &block)
82
+ Dir.glob(root_path(*args)).each(&block)
89
83
  end
90
84
 
91
85
  # Whether or not to start a webserver.
@@ -168,12 +162,8 @@ module Sinatra
168
162
  end
169
163
 
170
164
  def self.registered(klass)
171
- klass.set :app_file, klass.caller_files.first.expand_path unless klass.app_file?
172
165
  klass.extend ClassMethods
173
166
  klass.send :include, InstanceMethods
174
- klass.set :haml, :format => :html5, :escape_html => true
175
- klass.use Rack::Session::Cookie
176
- klass.enable :sessions
177
167
  end
178
168
 
179
169
  def self.set_app_file(klass)
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,2 @@
1
1
  require "sinatra/rspec"
2
2
  require "sinatra/sugar"
3
- Sinatra::Base.set :environment, :test
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sinatra-sugar
3
- version: &id001 !ruby/object:Gem::Version
4
- version: 0.4.0.a
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: true
5
+ segments:
6
+ - 0
7
+ - 4
8
+ - 0
9
+ - b
10
+ version: 0.4.0.b
5
11
  platform: ruby
6
12
  authors:
7
13
  - Konstantin Haase
@@ -9,47 +15,67 @@ autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
17
 
12
- date: 2010-02-15 00:00:00 +01:00
18
+ date: 2010-03-30 00:00:00 +02:00
13
19
  default_executable:
14
20
  dependencies:
15
21
  - !ruby/object:Gem::Dependency
16
22
  name: monkey-lib
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
20
25
  requirements:
21
- - - "="
22
- - *id001
23
- version:
26
+ - - ~>
27
+ - !ruby/object:Gem::Version
28
+ segments:
29
+ - 0
30
+ - 4
31
+ - 0
32
+ - b
33
+ version: 0.4.0.b
34
+ type: :runtime
35
+ version_requirements: *id001
24
36
  - !ruby/object:Gem::Dependency
25
37
  name: sinatra-test-helper
26
- type: :development
27
- version_requirement:
28
- version_requirements: !ruby/object:Gem::Requirement
38
+ prerelease: false
39
+ requirement: &id002 !ruby/object:Gem::Requirement
29
40
  requirements:
30
- - - "="
31
- - *id001
32
- version:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ segments:
44
+ - 0
45
+ - 4
46
+ - 0
47
+ - b
48
+ version: 0.4.0.b
49
+ type: :development
50
+ version_requirements: *id002
33
51
  - !ruby/object:Gem::Dependency
34
52
  name: sinatra
35
- type: :runtime
36
- version_requirement:
37
- version_requirements: !ruby/object:Gem::Requirement
53
+ prerelease: false
54
+ requirement: &id003 !ruby/object:Gem::Requirement
38
55
  requirements:
39
56
  - - ">="
40
57
  - !ruby/object:Gem::Version
58
+ segments:
59
+ - 0
60
+ - 9
61
+ - 4
41
62
  version: 0.9.4
42
- version:
63
+ type: :runtime
64
+ version_requirements: *id003
43
65
  - !ruby/object:Gem::Dependency
44
66
  name: rspec
45
- type: :development
46
- version_requirement:
47
- version_requirements: !ruby/object:Gem::Requirement
67
+ prerelease: false
68
+ requirement: &id004 !ruby/object:Gem::Requirement
48
69
  requirements:
49
70
  - - ">="
50
71
  - !ruby/object:Gem::Version
72
+ segments:
73
+ - 1
74
+ - 3
75
+ - 0
51
76
  version: 1.3.0
52
- version:
77
+ type: :development
78
+ version_requirements: *id004
53
79
  description: Some extensions to the sinatra default behavior (usefull for other Sintatra extensions, part of BigBand).
54
80
  email: konstantin.mailinglists@googlemail.com
55
81
  executables: []
@@ -76,18 +102,22 @@ required_ruby_version: !ruby/object:Gem::Requirement
76
102
  requirements:
77
103
  - - ">="
78
104
  - !ruby/object:Gem::Version
105
+ segments:
106
+ - 0
79
107
  version: "0"
80
- version:
81
108
  required_rubygems_version: !ruby/object:Gem::Requirement
82
109
  requirements:
83
110
  - - ">"
84
111
  - !ruby/object:Gem::Version
112
+ segments:
113
+ - 1
114
+ - 3
115
+ - 1
85
116
  version: 1.3.1
86
- version:
87
117
  requirements: []
88
118
 
89
119
  rubyforge_project:
90
- rubygems_version: 1.3.5
120
+ rubygems_version: 1.3.6
91
121
  signing_key:
92
122
  specification_version: 3
93
123
  summary: Some extensions to the sinatra default behavior (usefull for other Sintatra extensions, part of BigBand).