big_band 0.4.0 → 0.5.0
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/README.md +5 -3
- data/TODO.md +3 -34
- data/lib/sinatra/big_band.rb +12 -3
- data/spec/sinatra/big_band_spec.rb +7 -2
- data/spec/spec_helper.rb +2 -1
- data/subproject.rb +1 -0
- data/tasks/git.task +6 -0
- data/tasks/spec.task +3 -2
- metadata +103 -38
data/README.md
CHANGED
@@ -42,14 +42,16 @@ Sinatra tool integration:
|
|
42
42
|
* [Haml::More](http://github.com/rkh/haml-more) – Adds more functionality to Haml and Sass
|
43
43
|
* [monkey-lib](http://github.com/rkh/monkey-lib) – Thin layer over ruby extension libraries (like ActiveSupport) to make those pluggable
|
44
44
|
* [Sinatra::TestHelper](http://github.com/rkh/sinatra-test-helper) – Adds helper methods and better integration for various testing frameworks
|
45
|
+
* [Sinatra::Extension](http://github.com/rkh/sinatra-extension) – Mixin to ease Sinatra extension development.
|
45
46
|
* [Yard::Sinatra](http://github.com/rkh/yard-sinatra) – Displays Sinatra routes (including comments) in YARD output
|
46
47
|
|
47
48
|
Besides those extensions, there are others in the BigBand stack, that are external:
|
48
49
|
|
49
|
-
* [Rack Flash](http://github.com/nakajima/rack-flash) by Pat Nakajima
|
50
|
+
* [Rack Flash](http://github.com/nakajima/rack-flash) by [Pat Nakajima](http://github.com/nakajima)
|
51
|
+
* [Sinatra::DefaultCharset](http://github.com/raggi/sinatra-default_charset) by [James Tucker](http://github.com/raggi)
|
50
52
|
|
51
|
-
Goals
|
52
|
-
|
53
|
+
General Goals
|
54
|
+
-------------
|
53
55
|
|
54
56
|
* No sub-project relies on BigBand
|
55
57
|
* All sub-projects should work with MRI/REE >= 1.8.6 (including 1.9.x), JRuby >= 1.4.0 and Rubinius >= 1.0
|
data/TODO.md
CHANGED
@@ -1,47 +1,16 @@
|
|
1
1
|
TODO
|
2
2
|
====
|
3
3
|
|
4
|
-
For 0.4.0 release
|
5
|
-
-----------------
|
6
|
-
|
7
|
-
All subprojects:
|
8
|
-
|
9
|
-
* Add licenses, deps.rip, maybe dependencies file for monk
|
10
|
-
|
11
|
-
BigBand:
|
12
|
-
|
13
|
-
* Create some sort of website (GitHub Pages?)
|
14
|
-
* Write example app
|
15
|
-
|
16
|
-
After 0.4.0
|
17
|
-
-----------
|
18
|
-
|
19
4
|
General:
|
20
5
|
|
6
|
+
* Create some sort of website (GitHub Pages?)
|
21
7
|
* Implement more fancy stuff
|
22
|
-
* Padrino integration (maybe an example app, maybe some docs, dunno)
|
23
|
-
* Monk skeleton using big\_band
|
24
|
-
* See if stack\_helper can be extracted and is of any use (stack\_helper branch)
|
25
8
|
* Improve inline documentation (YARD tags)
|
26
9
|
* Maybe switch to [sinatra-flash](http://github.com/SFEley/sinatra-flash)
|
27
10
|
|
28
|
-
|
29
|
-
|
30
|
-
* Make compatible with [Usher](http://github.com/joshbuddy/usher)
|
31
|
-
* Make compatible with [padrino-core/routing](http://github.com/padrino/padrino-framework/issues/issue/46)
|
32
|
-
|
33
|
-
Subprojects to be published or written:
|
34
|
-
|
35
|
-
* queueba (yet another message queue based on redis, maybe)
|
36
|
-
* sinatra-postpone
|
37
|
-
* "sinatra-queueba" or redis channel for pusher + pusher integration for sinatra
|
38
|
-
|
39
|
-
Before 0.5.0
|
40
|
-
------------
|
41
|
-
|
42
|
-
BigBand:
|
11
|
+
haml-more:
|
43
12
|
|
44
|
-
*
|
13
|
+
* Rewrite Haml::More::CoffeeScript
|
45
14
|
|
46
15
|
monkey-lib:
|
47
16
|
|
data/lib/sinatra/big_band.rb
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
require 'sinatra/base'
|
2
2
|
require 'sinatra/sugar'
|
3
3
|
require 'async-rack'
|
4
|
-
require 'monkey'
|
5
|
-
require 'rack/flash'
|
4
|
+
require 'monkey-lib'
|
6
5
|
|
7
6
|
module Sinatra
|
8
7
|
Base.ignore_caller
|
@@ -25,7 +24,17 @@ module Sinatra
|
|
25
24
|
subclass_extension :namespace
|
26
25
|
subclass_extension :reloader, true
|
27
26
|
subclass_extension :sugar
|
28
|
-
|
27
|
+
|
28
|
+
subclass_extension(:flash, false, false) do |klass|
|
29
|
+
require 'rack/flash'
|
30
|
+
klass.use Rack::Flash, :flash_app_class => klass
|
31
|
+
end
|
32
|
+
|
33
|
+
subclass_extension(:default_charset, false, false) do |klass|
|
34
|
+
# FIXME: Does not work with autoloader?!
|
35
|
+
require 'sinatra/default_charset'
|
36
|
+
klass.register Sinatra::DefaultCharset
|
37
|
+
end
|
29
38
|
|
30
39
|
def self.apply_options(klass)
|
31
40
|
klass.set :app_file, klass.caller_files.first.expand_path unless klass.app_file?
|
@@ -12,9 +12,14 @@ describe Sinatra::BigBand do
|
|
12
12
|
@example_app ||= set_example_app options
|
13
13
|
end
|
14
14
|
|
15
|
+
describe 'sinatra behavior' do
|
16
|
+
before { app set_example_app }
|
17
|
+
it_should_behave_like 'sinatra'
|
18
|
+
end
|
19
|
+
|
15
20
|
describe "standard extensions" do
|
16
21
|
def extension; Sinatra.const_get @ext_name end
|
17
|
-
[:AdvancedRoutes, :Compass, :ConfigFile, :MoreServer, :Namespace, :Sugar].each do |ext_name|
|
22
|
+
[:AdvancedRoutes, :Compass, :ConfigFile, :MoreServer, :Namespace, :Sugar, :DefaultCharset].each do |ext_name|
|
18
23
|
describe ext_name do
|
19
24
|
before { @ext_name = ext_name }
|
20
25
|
it("should be loaded") { Sinatra.should be_const_defined(ext_name) }
|
@@ -22,7 +27,7 @@ describe Sinatra::BigBand do
|
|
22
27
|
end
|
23
28
|
end
|
24
29
|
|
25
|
-
[:Compass, :ConfigFile, :MoreServer, :Namespace].each do |ext_name|
|
30
|
+
[:Compass, :ConfigFile, :MoreServer, :Namespace, :DefaultCharset].each do |ext_name|
|
26
31
|
describe ext_name do
|
27
32
|
before { @ext_name = ext_name }
|
28
33
|
it("should be excludable") { example_app(:except => ext_name).should_not be_a(extension) }
|
data/spec/spec_helper.rb
CHANGED
data/subproject.rb
CHANGED
data/tasks/git.task
CHANGED
@@ -14,6 +14,10 @@ def commit
|
|
14
14
|
"commit -a -m #{ENV['message'].to_s.inspect}"
|
15
15
|
end
|
16
16
|
|
17
|
+
def tag
|
18
|
+
"tag -a #{ENV['tag'].to_s.inspect} -m #{ENV['tag'].to_s.inspect}"
|
19
|
+
end
|
20
|
+
|
17
21
|
namespace :git do
|
18
22
|
namespace :big_band do
|
19
23
|
task(:header) { puts '', '#'*80, "# BigBand" }
|
@@ -23,6 +27,7 @@ namespace :git do
|
|
23
27
|
task(:diff => :header) { system "git diff" }
|
24
28
|
task(:tags => :header) { system "git push --tags" }
|
25
29
|
task(:commit => :header) { system "git #{commit}" }
|
30
|
+
task(:tag => :header) { system "git #{tag}" }
|
26
31
|
end
|
27
32
|
task :status => "big_band:status"
|
28
33
|
task :pull => "big_band:pull"
|
@@ -38,4 +43,5 @@ project_namespace :git do
|
|
38
43
|
git_task :diff
|
39
44
|
git_task :tags, "push --tags"
|
40
45
|
git_task(:commit) { commit }
|
46
|
+
git_task(:tag) { tag }
|
41
47
|
end
|
data/tasks/spec.task
CHANGED
@@ -1,9 +1,10 @@
|
|
1
|
-
def rspec(pattern, format = nil, more_opts = nil, ruby = RUBY)
|
1
|
+
def rspec(pattern, format = nil, more_opts = nil, ruby = RUBY, command = 'spec')
|
2
2
|
format ||= ENV["FORMAT"] || :progress
|
3
3
|
libs = Dir.glob("{*,.}/lib").join File::PATH_SEPARATOR
|
4
4
|
files = Dir.glob(pattern).map { |f| f.inspect }.join " "
|
5
5
|
opts = ["-b -c --format #{format} --loadby mtime --reverse", *more_opts].compact.join " "
|
6
|
-
|
6
|
+
command = "bundle exec #{command}" if ENV['BUNDLER']
|
7
|
+
sh "RUBYLIB=#{libs.strip}:#{ENV['RUBYLIB'].to_s.strip} #{ruby} -S #{command} #{opts} #{files}"
|
7
8
|
end
|
8
9
|
|
9
10
|
pattern = "spec/**/*_spec.rb"
|
metadata
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: big_band
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: 11
|
4
5
|
prerelease: false
|
5
6
|
segments:
|
6
7
|
- 0
|
7
|
-
-
|
8
|
+
- 5
|
8
9
|
- 0
|
9
|
-
version: 0.
|
10
|
+
version: 0.5.0
|
10
11
|
platform: ruby
|
11
12
|
authors:
|
12
13
|
- Konstantin Haase
|
@@ -14,205 +15,265 @@ autorequire:
|
|
14
15
|
bindir: bin
|
15
16
|
cert_chain: []
|
16
17
|
|
17
|
-
date: 2010-
|
18
|
+
date: 2010-07-09 00:00:00 +02:00
|
18
19
|
default_executable:
|
19
20
|
dependencies:
|
20
21
|
- !ruby/object:Gem::Dependency
|
21
22
|
name: async-rack
|
22
23
|
prerelease: false
|
23
24
|
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
24
26
|
requirements:
|
25
27
|
- - ~>
|
26
28
|
- !ruby/object:Gem::Version
|
29
|
+
hash: 11
|
27
30
|
segments:
|
28
31
|
- 0
|
29
|
-
-
|
32
|
+
- 5
|
30
33
|
- 0
|
31
|
-
version: 0.
|
34
|
+
version: 0.5.0
|
32
35
|
type: :runtime
|
33
36
|
version_requirements: *id001
|
34
37
|
- !ruby/object:Gem::Dependency
|
35
38
|
name: haml-more
|
36
39
|
prerelease: false
|
37
40
|
requirement: &id002 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
38
42
|
requirements:
|
39
43
|
- - ~>
|
40
44
|
- !ruby/object:Gem::Version
|
45
|
+
hash: 11
|
41
46
|
segments:
|
42
47
|
- 0
|
43
|
-
-
|
48
|
+
- 5
|
44
49
|
- 0
|
45
|
-
version: 0.
|
50
|
+
version: 0.5.0
|
46
51
|
type: :runtime
|
47
52
|
version_requirements: *id002
|
48
53
|
- !ruby/object:Gem::Dependency
|
49
54
|
name: monkey-lib
|
50
55
|
prerelease: false
|
51
56
|
requirement: &id003 !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
52
58
|
requirements:
|
53
59
|
- - ~>
|
54
60
|
- !ruby/object:Gem::Version
|
61
|
+
hash: 11
|
55
62
|
segments:
|
56
63
|
- 0
|
57
|
-
-
|
64
|
+
- 5
|
58
65
|
- 0
|
59
|
-
version: 0.
|
66
|
+
version: 0.5.0
|
60
67
|
type: :runtime
|
61
68
|
version_requirements: *id003
|
62
69
|
- !ruby/object:Gem::Dependency
|
63
70
|
name: sinatra-advanced-routes
|
64
71
|
prerelease: false
|
65
72
|
requirement: &id004 !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
66
74
|
requirements:
|
67
75
|
- - ~>
|
68
76
|
- !ruby/object:Gem::Version
|
77
|
+
hash: 11
|
69
78
|
segments:
|
70
79
|
- 0
|
71
|
-
-
|
80
|
+
- 5
|
72
81
|
- 0
|
73
|
-
version: 0.
|
82
|
+
version: 0.5.0
|
74
83
|
type: :runtime
|
75
84
|
version_requirements: *id004
|
76
85
|
- !ruby/object:Gem::Dependency
|
77
86
|
name: sinatra-compass
|
78
87
|
prerelease: false
|
79
88
|
requirement: &id005 !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
80
90
|
requirements:
|
81
91
|
- - ~>
|
82
92
|
- !ruby/object:Gem::Version
|
93
|
+
hash: 11
|
83
94
|
segments:
|
84
95
|
- 0
|
85
|
-
-
|
96
|
+
- 5
|
86
97
|
- 0
|
87
|
-
version: 0.
|
98
|
+
version: 0.5.0
|
88
99
|
type: :runtime
|
89
100
|
version_requirements: *id005
|
90
101
|
- !ruby/object:Gem::Dependency
|
91
102
|
name: sinatra-config-file
|
92
103
|
prerelease: false
|
93
104
|
requirement: &id006 !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
94
106
|
requirements:
|
95
107
|
- - ~>
|
96
108
|
- !ruby/object:Gem::Version
|
109
|
+
hash: 11
|
97
110
|
segments:
|
98
111
|
- 0
|
99
|
-
-
|
112
|
+
- 5
|
100
113
|
- 0
|
101
|
-
version: 0.
|
114
|
+
version: 0.5.0
|
102
115
|
type: :runtime
|
103
116
|
version_requirements: *id006
|
104
117
|
- !ruby/object:Gem::Dependency
|
105
|
-
name: sinatra-
|
118
|
+
name: sinatra-extension
|
106
119
|
prerelease: false
|
107
120
|
requirement: &id007 !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
108
122
|
requirements:
|
109
123
|
- - ~>
|
110
124
|
- !ruby/object:Gem::Version
|
125
|
+
hash: 11
|
111
126
|
segments:
|
112
127
|
- 0
|
113
|
-
-
|
128
|
+
- 5
|
114
129
|
- 0
|
115
|
-
version: 0.
|
130
|
+
version: 0.5.0
|
116
131
|
type: :runtime
|
117
132
|
version_requirements: *id007
|
118
133
|
- !ruby/object:Gem::Dependency
|
119
|
-
name: sinatra-
|
134
|
+
name: sinatra-more-server
|
120
135
|
prerelease: false
|
121
136
|
requirement: &id008 !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
122
138
|
requirements:
|
123
139
|
- - ~>
|
124
140
|
- !ruby/object:Gem::Version
|
141
|
+
hash: 11
|
125
142
|
segments:
|
126
143
|
- 0
|
127
|
-
-
|
144
|
+
- 5
|
128
145
|
- 0
|
129
|
-
version: 0.
|
146
|
+
version: 0.5.0
|
130
147
|
type: :runtime
|
131
148
|
version_requirements: *id008
|
132
149
|
- !ruby/object:Gem::Dependency
|
133
|
-
name: sinatra-
|
150
|
+
name: sinatra-namespace
|
134
151
|
prerelease: false
|
135
152
|
requirement: &id009 !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
136
154
|
requirements:
|
137
155
|
- - ~>
|
138
156
|
- !ruby/object:Gem::Version
|
157
|
+
hash: 11
|
139
158
|
segments:
|
140
159
|
- 0
|
141
|
-
-
|
160
|
+
- 5
|
142
161
|
- 0
|
143
|
-
version: 0.
|
162
|
+
version: 0.5.0
|
144
163
|
type: :runtime
|
145
164
|
version_requirements: *id009
|
146
165
|
- !ruby/object:Gem::Dependency
|
147
|
-
name: sinatra-
|
166
|
+
name: sinatra-reloader
|
148
167
|
prerelease: false
|
149
168
|
requirement: &id010 !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
150
170
|
requirements:
|
151
171
|
- - ~>
|
152
172
|
- !ruby/object:Gem::Version
|
173
|
+
hash: 11
|
153
174
|
segments:
|
154
175
|
- 0
|
155
|
-
-
|
176
|
+
- 5
|
156
177
|
- 0
|
157
|
-
version: 0.
|
178
|
+
version: 0.5.0
|
158
179
|
type: :runtime
|
159
180
|
version_requirements: *id010
|
160
181
|
- !ruby/object:Gem::Dependency
|
161
|
-
name: sinatra-
|
182
|
+
name: sinatra-sugar
|
162
183
|
prerelease: false
|
163
184
|
requirement: &id011 !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
164
186
|
requirements:
|
165
187
|
- - ~>
|
166
188
|
- !ruby/object:Gem::Version
|
189
|
+
hash: 11
|
167
190
|
segments:
|
168
191
|
- 0
|
169
|
-
-
|
192
|
+
- 5
|
170
193
|
- 0
|
171
|
-
version: 0.
|
194
|
+
version: 0.5.0
|
172
195
|
type: :runtime
|
173
196
|
version_requirements: *id011
|
174
197
|
- !ruby/object:Gem::Dependency
|
175
|
-
name:
|
198
|
+
name: sinatra-test-helper
|
176
199
|
prerelease: false
|
177
200
|
requirement: &id012 !ruby/object:Gem::Requirement
|
201
|
+
none: false
|
178
202
|
requirements:
|
179
203
|
- - ~>
|
180
204
|
- !ruby/object:Gem::Version
|
205
|
+
hash: 11
|
181
206
|
segments:
|
182
207
|
- 0
|
183
|
-
-
|
208
|
+
- 5
|
184
209
|
- 0
|
185
|
-
version: 0.
|
210
|
+
version: 0.5.0
|
186
211
|
type: :runtime
|
187
212
|
version_requirements: *id012
|
188
213
|
- !ruby/object:Gem::Dependency
|
189
|
-
name:
|
214
|
+
name: yard-sinatra
|
190
215
|
prerelease: false
|
191
216
|
requirement: &id013 !ruby/object:Gem::Requirement
|
217
|
+
none: false
|
218
|
+
requirements:
|
219
|
+
- - ~>
|
220
|
+
- !ruby/object:Gem::Version
|
221
|
+
hash: 11
|
222
|
+
segments:
|
223
|
+
- 0
|
224
|
+
- 5
|
225
|
+
- 0
|
226
|
+
version: 0.5.0
|
227
|
+
type: :runtime
|
228
|
+
version_requirements: *id013
|
229
|
+
- !ruby/object:Gem::Dependency
|
230
|
+
name: rack-flash
|
231
|
+
prerelease: false
|
232
|
+
requirement: &id014 !ruby/object:Gem::Requirement
|
233
|
+
none: false
|
192
234
|
requirements:
|
193
235
|
- - ">="
|
194
236
|
- !ruby/object:Gem::Version
|
237
|
+
hash: 25
|
195
238
|
segments:
|
196
239
|
- 0
|
197
240
|
- 1
|
198
241
|
- 1
|
199
242
|
version: 0.1.1
|
200
243
|
type: :runtime
|
201
|
-
version_requirements: *
|
244
|
+
version_requirements: *id014
|
245
|
+
- !ruby/object:Gem::Dependency
|
246
|
+
name: sinatra-default_charset
|
247
|
+
prerelease: false
|
248
|
+
requirement: &id015 !ruby/object:Gem::Requirement
|
249
|
+
none: false
|
250
|
+
requirements:
|
251
|
+
- - ">="
|
252
|
+
- !ruby/object:Gem::Version
|
253
|
+
hash: 23
|
254
|
+
segments:
|
255
|
+
- 0
|
256
|
+
- 2
|
257
|
+
- 0
|
258
|
+
version: 0.2.0
|
259
|
+
type: :runtime
|
260
|
+
version_requirements: *id015
|
202
261
|
- !ruby/object:Gem::Dependency
|
203
262
|
name: rspec
|
204
263
|
prerelease: false
|
205
|
-
requirement: &
|
264
|
+
requirement: &id016 !ruby/object:Gem::Requirement
|
265
|
+
none: false
|
206
266
|
requirements:
|
207
267
|
- - ">="
|
208
268
|
- !ruby/object:Gem::Version
|
269
|
+
hash: 27
|
209
270
|
segments:
|
210
271
|
- 1
|
211
272
|
- 3
|
212
273
|
- 0
|
213
274
|
version: 1.3.0
|
214
275
|
type: :development
|
215
|
-
version_requirements: *
|
276
|
+
version_requirements: *id016
|
216
277
|
description: Making Sinatra swing.
|
217
278
|
email: konstantin.mailinglists@googlemail.com
|
218
279
|
executables: []
|
@@ -246,23 +307,27 @@ rdoc_options: []
|
|
246
307
|
require_paths:
|
247
308
|
- lib
|
248
309
|
required_ruby_version: !ruby/object:Gem::Requirement
|
310
|
+
none: false
|
249
311
|
requirements:
|
250
312
|
- - ">="
|
251
313
|
- !ruby/object:Gem::Version
|
314
|
+
hash: 3
|
252
315
|
segments:
|
253
316
|
- 0
|
254
317
|
version: "0"
|
255
318
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
319
|
+
none: false
|
256
320
|
requirements:
|
257
321
|
- - ">="
|
258
322
|
- !ruby/object:Gem::Version
|
323
|
+
hash: 3
|
259
324
|
segments:
|
260
325
|
- 0
|
261
326
|
version: "0"
|
262
327
|
requirements: []
|
263
328
|
|
264
329
|
rubyforge_project:
|
265
|
-
rubygems_version: 1.3.
|
330
|
+
rubygems_version: 1.3.7
|
266
331
|
signing_key:
|
267
332
|
specification_version: 3
|
268
333
|
summary: Making Sinatra swing.
|