ritual 0.1.1 → 0.2.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.
@@ -0,0 +1,11 @@
1
+ require 'rbconfig'
2
+ require 'pathname'
3
+ require 'rake/clean'
4
+
5
+ module Ritual
6
+ module Extension
7
+ autoload :Base, 'ritual/extension/base'
8
+ autoload :JRuby, 'ritual/extension/jruby'
9
+ autoload :Standard, 'ritual/extension/standard'
10
+ end
11
+ end
@@ -0,0 +1,297 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 55
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 5
23
+ 7
24
+ 2
25
+ 64
26
+ 47
27
+ 49
28
+ 1
29
+ 1
30
+ 15
31
+ 5
32
+ 7
33
+ 3
34
+ 64
35
+ 47
36
+ 49
37
+ 1
38
+ 1
39
+ 15
40
+ 99
41
+ 7
42
+ 4
43
+ 65
44
+ 49
45
+ 5
46
+ 2
47
+ 13
48
+ 99
49
+ 12
50
+ 7
51
+ 6
52
+ 12
53
+ 7
54
+ 7
55
+ 12
56
+ 65
57
+ 12
58
+ 49
59
+ 8
60
+ 4
61
+ 15
62
+ 49
63
+ 6
64
+ 0
65
+ 15
66
+ 2
67
+ 11
68
+ I
69
+ 6
70
+ I
71
+ 0
72
+ I
73
+ 0
74
+ I
75
+ 0
76
+ n
77
+ p
78
+ 9
79
+ s
80
+ 8
81
+ rbconfig
82
+ x
83
+ 7
84
+ require
85
+ s
86
+ 8
87
+ pathname
88
+ s
89
+ 10
90
+ rake/clean
91
+ x
92
+ 6
93
+ Ritual
94
+ x
95
+ 11
96
+ open_module
97
+ x
98
+ 15
99
+ __module_init__
100
+ M
101
+ 1
102
+ n
103
+ n
104
+ x
105
+ 6
106
+ Ritual
107
+ i
108
+ 28
109
+ 5
110
+ 66
111
+ 99
112
+ 7
113
+ 0
114
+ 65
115
+ 49
116
+ 1
117
+ 2
118
+ 13
119
+ 99
120
+ 12
121
+ 7
122
+ 2
123
+ 12
124
+ 7
125
+ 3
126
+ 12
127
+ 65
128
+ 12
129
+ 49
130
+ 4
131
+ 4
132
+ 15
133
+ 49
134
+ 2
135
+ 0
136
+ 11
137
+ I
138
+ 6
139
+ I
140
+ 0
141
+ I
142
+ 0
143
+ I
144
+ 0
145
+ n
146
+ p
147
+ 5
148
+ x
149
+ 9
150
+ Extension
151
+ x
152
+ 11
153
+ open_module
154
+ x
155
+ 15
156
+ __module_init__
157
+ M
158
+ 1
159
+ n
160
+ n
161
+ x
162
+ 9
163
+ Extension
164
+ i
165
+ 35
166
+ 5
167
+ 66
168
+ 5
169
+ 7
170
+ 0
171
+ 7
172
+ 1
173
+ 64
174
+ 47
175
+ 49
176
+ 2
177
+ 2
178
+ 15
179
+ 5
180
+ 7
181
+ 3
182
+ 7
183
+ 4
184
+ 64
185
+ 47
186
+ 49
187
+ 2
188
+ 2
189
+ 15
190
+ 5
191
+ 7
192
+ 5
193
+ 7
194
+ 6
195
+ 64
196
+ 47
197
+ 49
198
+ 2
199
+ 2
200
+ 11
201
+ I
202
+ 3
203
+ I
204
+ 0
205
+ I
206
+ 0
207
+ I
208
+ 0
209
+ n
210
+ p
211
+ 7
212
+ x
213
+ 4
214
+ Base
215
+ s
216
+ 21
217
+ ritual/extension/base
218
+ x
219
+ 8
220
+ autoload
221
+ x
222
+ 5
223
+ JRuby
224
+ s
225
+ 22
226
+ ritual/extension/jruby
227
+ x
228
+ 8
229
+ Standard
230
+ s
231
+ 25
232
+ ritual/extension/standard
233
+ p
234
+ 7
235
+ I
236
+ 2
237
+ I
238
+ 7
239
+ I
240
+ d
241
+ I
242
+ 8
243
+ I
244
+ 18
245
+ I
246
+ 9
247
+ I
248
+ 23
249
+ x
250
+ 43
251
+ /Users/g/src/ritual/lib/ritual/extension.rb
252
+ p
253
+ 0
254
+ x
255
+ 13
256
+ attach_method
257
+ p
258
+ 3
259
+ I
260
+ 2
261
+ I
262
+ 6
263
+ I
264
+ 1c
265
+ x
266
+ 43
267
+ /Users/g/src/ritual/lib/ritual/extension.rb
268
+ p
269
+ 0
270
+ x
271
+ 13
272
+ attach_method
273
+ p
274
+ 9
275
+ I
276
+ 0
277
+ I
278
+ 1
279
+ I
280
+ 9
281
+ I
282
+ 2
283
+ I
284
+ 12
285
+ I
286
+ 3
287
+ I
288
+ 1b
289
+ I
290
+ 5
291
+ I
292
+ 37
293
+ x
294
+ 43
295
+ /Users/g/src/ritual/lib/ritual/extension.rb
296
+ p
297
+ 0
data/lib/ritual/lib.rb CHANGED
@@ -1,5 +1,8 @@
1
+ require 'fileutils'
2
+
1
3
  module Ritual
2
4
  autoload :Changelog, 'ritual/changelog'
5
+ autoload :Extension, 'ritual/extension'
3
6
  autoload :VersionFile, 'ritual/version_file'
4
7
  autoload :VERSION, 'ritual/version'
5
8
  end
@@ -0,0 +1,213 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 37
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 99
23
+ 7
24
+ 2
25
+ 65
26
+ 49
27
+ 3
28
+ 2
29
+ 13
30
+ 99
31
+ 12
32
+ 7
33
+ 4
34
+ 12
35
+ 7
36
+ 5
37
+ 12
38
+ 65
39
+ 12
40
+ 49
41
+ 6
42
+ 4
43
+ 15
44
+ 49
45
+ 4
46
+ 0
47
+ 15
48
+ 2
49
+ 11
50
+ I
51
+ 6
52
+ I
53
+ 0
54
+ I
55
+ 0
56
+ I
57
+ 0
58
+ n
59
+ p
60
+ 7
61
+ s
62
+ 9
63
+ fileutils
64
+ x
65
+ 7
66
+ require
67
+ x
68
+ 6
69
+ Ritual
70
+ x
71
+ 11
72
+ open_module
73
+ x
74
+ 15
75
+ __module_init__
76
+ M
77
+ 1
78
+ n
79
+ n
80
+ x
81
+ 6
82
+ Ritual
83
+ i
84
+ 46
85
+ 5
86
+ 66
87
+ 5
88
+ 7
89
+ 0
90
+ 7
91
+ 1
92
+ 64
93
+ 47
94
+ 49
95
+ 2
96
+ 2
97
+ 15
98
+ 5
99
+ 7
100
+ 3
101
+ 7
102
+ 4
103
+ 64
104
+ 47
105
+ 49
106
+ 2
107
+ 2
108
+ 15
109
+ 5
110
+ 7
111
+ 5
112
+ 7
113
+ 6
114
+ 64
115
+ 47
116
+ 49
117
+ 2
118
+ 2
119
+ 15
120
+ 5
121
+ 7
122
+ 7
123
+ 7
124
+ 8
125
+ 64
126
+ 47
127
+ 49
128
+ 2
129
+ 2
130
+ 11
131
+ I
132
+ 3
133
+ I
134
+ 0
135
+ I
136
+ 0
137
+ I
138
+ 0
139
+ n
140
+ p
141
+ 9
142
+ x
143
+ 9
144
+ Changelog
145
+ s
146
+ 16
147
+ ritual/changelog
148
+ x
149
+ 8
150
+ autoload
151
+ x
152
+ 9
153
+ Extension
154
+ s
155
+ 16
156
+ ritual/extension
157
+ x
158
+ 11
159
+ VersionFile
160
+ s
161
+ 19
162
+ ritual/version_file
163
+ x
164
+ 7
165
+ VERSION
166
+ s
167
+ 14
168
+ ritual/version
169
+ p
170
+ 9
171
+ I
172
+ 2
173
+ I
174
+ 4
175
+ I
176
+ d
177
+ I
178
+ 5
179
+ I
180
+ 18
181
+ I
182
+ 6
183
+ I
184
+ 23
185
+ I
186
+ 7
187
+ I
188
+ 2e
189
+ x
190
+ 37
191
+ /Users/g/src/ritual/lib/ritual/lib.rb
192
+ p
193
+ 0
194
+ x
195
+ 13
196
+ attach_method
197
+ p
198
+ 5
199
+ I
200
+ 0
201
+ I
202
+ 1
203
+ I
204
+ 9
205
+ I
206
+ 3
207
+ I
208
+ 25
209
+ x
210
+ 37
211
+ /Users/g/src/ritual/lib/ritual/lib.rb
212
+ p
213
+ 0
@@ -1,5 +1,5 @@
1
1
  module Ritual
2
- VERSION = [0, 1, 1]
2
+ VERSION = [0, 2, 0]
3
3
 
4
4
  class << VERSION
5
5
  include Comparable
data/lib/ritual.rb CHANGED
@@ -73,6 +73,10 @@ def changelog
73
73
  @changelog ||= Ritual.changelog
74
74
  end
75
75
 
76
+ def extensions
77
+ @extensions ||= []
78
+ end
79
+
76
80
  def spec_task(*args, &block)
77
81
  require 'spec/rake/spectask'
78
82
  Spec::Rake::SpecTask.new(*args, &block)
@@ -100,6 +104,19 @@ def replace_task(name, *args, &block)
100
104
  task(name, *args, &block)
101
105
  end
102
106
 
107
+ def extension(*args)
108
+ options = args.last.is_a?(Hash) ? args.pop : {}
109
+ args.size <= 1 or
110
+ raise ArgumentError, "wrong number of arguments (#{args.size} for 0..1, plus options)"
111
+ return if (gem = options[:gem]) && Ritual.library_name != gem.to_s
112
+
113
+ params = options.merge(:library_name => Ritual.library_name)
114
+ klass = params[:type] == :jruby ? Ritual::Extension::JRuby : Ritual::Extension::Standard
115
+ extension = klass.new(args.first, params)
116
+ extensions << extension
117
+ extension.define_task
118
+ end
119
+
103
120
  module Ritual
104
121
  class << self
105
122
  attr_accessor :component