dryml 1.3.0.RC4 → 1.3.0.pre10

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/lib/dryml.rb CHANGED
@@ -4,234 +4,272 @@
4
4
  # Copyright:: Copyright (c) 2008
5
5
  # License:: Distributes under the same terms as Ruby
6
6
 
7
+
8
+
9
+ # gem dependencies
7
10
  require 'hobo_support'
8
11
  require 'action_pack'
9
- require 'openssl'
10
12
 
11
- ActiveSupport::Dependencies.autoload_paths |= [File.dirname(__FILE__)]
12
- ActiveSupport::Dependencies.autoload_once_paths |= [File.dirname(__FILE__)]
13
+ ActiveSupport::Dependencies.autoload_paths |= [ File.dirname(__FILE__)]
13
14
 
14
15
  # The Don't Repeat Yourself Markup Language
15
16
  module Dryml
16
17
 
17
- VERSION = File.read(File.expand_path('../../VERSION', __FILE__)).strip
18
- @@root = Pathname.new File.expand_path('../..', __FILE__)
19
- def self.root; @@root; end
18
+ VERSION = File.read(File.expand_path('../../VERSION', __FILE__)).strip
19
+ @@root = Pathname.new File.expand_path(File.dirname(__FILE__) + "/..")
20
+ def self.root; @@root; end
20
21
 
21
- class DrymlSyntaxError < RuntimeError; end
22
+ class DrymlSyntaxError < RuntimeError; end
22
23
 
23
- class DrymlException < Exception
24
- def initialize(message, path=nil, line_num=nil)
25
- if path && line_num
26
- super(message + " -- at #{path}:#{line_num}")
27
- else
28
- super(message)
24
+ class DrymlException < Exception
25
+ def initialize(message, path=nil, line_num=nil)
26
+ if path && line_num
27
+ super(message + " -- at #{path}:#{line_num}")
28
+ else
29
+ super(message)
30
+ end
29
31
  end
30
32
  end
31
- end
32
-
33
- TagDef = Struct.new "TagDef", :name, :attrs, :proc
34
- RESERVED_WORDS = %w{if for while do class else elsif unless case when module in}
35
- ID_SEPARATOR = '; dryml-tag: '
36
- APPLICATION_TAGLIB = { :src => "taglibs/application" }
37
- CORE_TAGLIB = { :src => "core", :plugin => "dryml" }
38
- DEFAULT_IMPORTS = defined?(ApplicationHelper) ? [ApplicationHelper] : []
39
- @cache = {}
40
- extend self
41
- attr_accessor :last_if
42
-
43
- def precompile_taglibs
44
- Dir.chdir(Rails.root) do
45
- Dir["app/views/taglibs/**/*.dryml"].each do |f|
46
- Taglib.get(:template_dir => File.dirname(f), :src => File.basename(f).remove(".dryml"))
33
+
34
+ TagDef = Struct.new "TagDef", :name, :attrs, :proc
35
+
36
+ RESERVED_WORDS = %w{if for while do class else elsif unless case when module in}
37
+
38
+ EMPTY_PAGE = "[tag-page]"
39
+
40
+ APPLICATION_TAGLIB = { :src => "taglibs/application" }
41
+ CORE_TAGLIB = { :src => "core", :plugin => "dryml" }
42
+
43
+ DEFAULT_IMPORTS = defined?(ApplicationHelper) ? [ApplicationHelper] : []
44
+
45
+ @renderer_classes = {}
46
+ @tag_page_renderer_classes = {}
47
+
48
+ extend self
49
+
50
+ attr_accessor :last_if
51
+
52
+
53
+ def precompile_taglibs
54
+ Dir.chdir(Rails.root) do
55
+ taglibs = Dir["vendor/plugins/**/taglibs/**/*.dryml"] + Dir["app/views/taglibs/**/*.dryml"]
56
+ taglibs.each do |f|
57
+ Dryml::Taglib.get(:template_dir => File.dirname(f), :src => File.basename(f).remove(".dryml"))
58
+ end
47
59
  end
48
60
  end
49
- end
50
-
51
- def clear_cache
52
- @cache = {}
53
- end
54
-
55
- def render_tag(view, tag, options={})
56
- renderer = empty_page_renderer(view)
57
- renderer.render_tag(tag, options)
58
- end
59
-
60
- def empty_page_renderer(view)
61
- page_renderer(view, page_tag_identifier(view.controller.controller_path))
62
- end
63
-
64
- def page_tag_identifier(controller_path, tag_name='')
65
- "controller: #{controller_path}#{ID_SEPARATOR}#{tag_name}"
66
- end
67
-
68
- def call_render(view, local_assigns, identifier)
69
- this = view.controller.send(:dryml_context) || local_assigns[:this]
70
- view.instance_variable_set("@this", this)
71
- # do this last, as TemplateEnvironment copies instance variables in initalize
72
- renderer = page_renderer(view, identifier, local_assigns.keys)
73
- if identifier =~ /#{ID_SEPARATOR}/
74
- tag_name = identifier.split(ID_SEPARATOR).last
75
- renderer.render_tag(tag_name, {:with => this} )
76
- else
61
+
62
+
63
+ def clear_cache
64
+ @renderer_classes = {}
65
+ @tag_page_renderer_classes = {}
66
+ end
67
+
68
+ def render_tag(view, tag, options={})
69
+ renderer = empty_page_renderer(view)
70
+ renderer.render_tag(tag, options)
71
+ end
72
+
73
+
74
+ def empty_page_renderer(view)
75
+ controller_name = view.controller.class.name.underscore.sub(/_controller$/, "")
76
+ page_renderer(view, [], "#{controller_name}/#{EMPTY_PAGE}")
77
+ end
78
+
79
+ def call_render(view, local_assigns, identifier)
80
+ page = view.request.fullpath
81
+ renderer = page_renderer(view, local_assigns.keys, page, identifier)
82
+ this = view.controller.send(:dryml_context) || local_assigns[:this]
83
+ view.instance_variable_set("@this", this)
77
84
  renderer.render_page(this, local_assigns).strip
78
85
  end
79
- end
80
-
81
- def page_renderer(view, identifier, local_names=[], controller_path=nil)
82
- controller_path ||= view.controller.controller_path
83
- if identifier =~ /#{ID_SEPARATOR}/
84
- identifier = identifier.split(ID_SEPARATOR).first
85
- @cache[identifier] ||= make_renderer_class("", "", local_names, taglibs_for(controller_path))
86
- @cache[identifier].new(view)
87
- else
88
- mtime = File.mtime(identifier)
89
- renderer_class = @cache[identifier]
90
- # do we need to recompile?
91
- if (!renderer_class || # nothing cached?
92
- (local_names - renderer_class.compiled_local_names).any? || # any new local names?
93
- renderer_class.load_time < mtime) # cache out of date?
94
- renderer_class = make_renderer_class(File.read(identifier), identifier,
95
- local_names, taglibs_for(controller_path))
96
- renderer_class.load_time = mtime
97
- @cache[identifier] = renderer_class
86
+
87
+
88
+ def page_renderer(view, local_names=[], page=nil, filename=nil)
89
+ if Rails.env.development?
90
+ clear_cache
91
+ Taglib.clear_cache
92
+ end
93
+
94
+ prepare_view!(view)
95
+ included_taglibs = ([APPLICATION_TAGLIB] + application_taglibs() + [subsite_taglib(page)] + controller_taglibs(view.controller.class)).compact
96
+
97
+ if page.ends_with?(EMPTY_PAGE)
98
+ controller_class = view.controller.class
99
+ @tag_page_renderer_classes[controller_class.name] ||=
100
+ make_renderer_class("", page, local_names, DEFAULT_IMPORTS, included_taglibs)
101
+ @tag_page_renderer_classes[controller_class.name].new(page, view)
102
+ else
103
+ mtime = File.mtime(filename)
104
+ renderer_class = @renderer_classes[page]
105
+
106
+ # do we need to recompile?
107
+ if (!renderer_class || # nothing cached?
108
+ (local_names - renderer_class.compiled_local_names).any? || # any new local names?
109
+ renderer_class.load_time < mtime) # cache out of date?
110
+ renderer_class = make_renderer_class(File.read(filename), filename, local_names,
111
+ DEFAULT_IMPORTS, included_taglibs)
112
+ renderer_class.load_time = mtime
113
+ @renderer_classes[page] = renderer_class
114
+ end
115
+ renderer_class.new(page, view)
116
+ end
117
+ end
118
+
119
+ def controller_taglibs(controller_class)
120
+ controller_class.try.included_taglibs || []
121
+ end
122
+
123
+
124
+ def subsite_taglib(page)
125
+ parts = page.split("/")
126
+ subsite = parts.length >= 3 ? parts[0..-3].join('_') : "front"
127
+ src = "taglibs/#{subsite}_site"
128
+ { :src => src } if Object.const_defined?(:Rails) && File.exists?("#{Rails.root}/app/views/#{src}.dryml")
129
+ end
130
+
131
+ def application_taglibs
132
+ Dir.chdir(Rails.root) do
133
+ Dir["app/views/taglibs/application/**/*.dryml"].map{|f| File.basename f, '.dryml'}.map do |n|
134
+ { :src => "taglibs/application/#{n}" }
135
+ end
98
136
  end
99
- renderer_class.new(view)
100
- end
101
- end
102
-
103
- def get_field(object, field)
104
- return nil if object.nil?
105
- field_str = field.to_s
106
- case
107
- when object.respond_to?(field_str)
108
- object.send(field_str)
109
- when field_str =~ /^\d+$/
110
- object[field.to_i]
111
- else
112
- object[field]
113
- end
114
- end
115
-
116
- def get_field_path(object, path)
117
- return nil if object.nil?
118
- path = path.is_a?(String) ? path.split('.') : Array(path)
119
- parent = nil
120
- path.each do |field|
121
- parent = object
122
- object = get_field(parent, field)
123
- end
124
- [parent, path.last, object]
125
- end
126
-
127
- def unreserve(word)
128
- word = word.to_s
129
- word += '_' if RESERVED_WORDS.include?(word)
130
- word
131
- end
132
-
133
- def static_tags
134
- @static_tags ||= begin
135
- path = if Object.const_defined?(:Rails) && FileTest.exists?("#{Rails.root}/config/dryml_static_tags.txt")
136
- "#{Rails.root}/config/dryml_static_tags.txt"
137
- else
138
- File.join(File.dirname(__FILE__), "dryml/static_tags")
139
- end
140
- File.readlines(path).*.chop
141
- end
142
- end
143
-
144
- attr_writer :static_tags
145
-
146
- # FIXME: This helper seems to be useless, since it does need Rails,
147
- # and with Rails it is useless since Dryml does not need Hobo
148
- #
149
- # Helper function for use outside Hobo/Rails
150
- #
151
- # Pass the template context in locals[:this]
152
- #
153
- # This function caches. If the mtime of template_path is older
154
- # than the last compilation time, the cached version will be
155
- # used. If no template_path is given, template_src is used as the
156
- # key to the cache.
157
- #
158
- # If a local variable is not present when the template is
159
- # compiled, it will be ignored when the template is used. In
160
- # other words, the variable values may change, but the names may
161
- # not.
162
- #
163
- # included_taglibs is only used during template compilation.
164
- #
165
- # @param [String] template_src the DRYML source
166
- # @param [Hash] locals local variables.
167
- # @param [String, nil] template_path the filename of the source.
168
- # @param [Array] included_taglibs A list of Taglibs to include. { :src =>
169
- # "core", :plugin => "dryml" } is automatically
170
- # added to this list.
171
- # @param [ActionView::Base] view an ActionView instance
172
- def render(template_src, locals={}, template_path=nil, included_taglibs=[], view=nil)
173
- template_path ||= template_src
174
- view ||= ActionView::Base.new(ActionController::Base.view_paths, {})
175
- this = locals.delete(:this) || nil
176
-
177
- renderer_class = Dryml::Template.build_cache[template_path]._?.environment ||
178
- make_renderer_class(template_src, template_path, locals.keys)
179
- renderer_class.new(view).render_page(this, locals)
180
- end
181
-
182
- private
183
-
184
- def taglibs_for(controller_path)
185
- ( taglibs_in_dir('application').unshift(APPLICATION_TAGLIB) +
186
- subsite_taglibs(controller_path) +
187
- ((controller_path.camelize+"Controller").constantize.try.included_taglibs||[])
188
- ).compact
189
- end
190
-
191
- def subsite_taglibs(controller_path)
192
- parts = controller_path.split("/")
193
- subsite = parts.length >= 2 ? parts[0..-2].join('_') : "front"
194
- src = "taglibs/#{subsite}_site"
195
- Object.const_defined?(:Rails) && File.exists?("#{Rails.root}/app/views/#{src}.dryml") ?
196
- taglibs_in_dir("#{subsite}_site").unshift({ :src => src }) : []
197
- end
198
-
199
- def taglibs_in_dir(dir_name)
200
- Dir.chdir(Rails.root) do
201
- Dir["app/views/taglibs/#{dir_name}/**/*.dryml"].map{|f| File.basename f, '.dryml'}.map do |n|
202
- { :src => "taglibs/#{dir_name}/#{n}" }
137
+ end
138
+
139
+ def get_field(object, field)
140
+ return nil if object.nil?
141
+ field_str = field.to_s
142
+ begin
143
+ return object.send(field_str)
144
+ rescue NoMethodError => ex
145
+ if field_str =~ /^\d+$/
146
+ return object[field.to_i]
147
+ else
148
+ return object[field]
149
+ end
150
+ end
151
+ end
152
+
153
+
154
+ def get_field_path(object, path)
155
+ path = if path.is_a? String
156
+ path.split('.')
157
+ else
158
+ Array(path)
159
+ end
160
+
161
+ parent = nil
162
+ path.each do |field|
163
+ return nil if object.nil?
164
+ parent = object
165
+ object = get_field(parent, field)
166
+ end
167
+ [parent, path.last, object]
168
+ end
169
+
170
+
171
+ def prepare_view!(view)
172
+ # Not sure why this isn't done for me...
173
+ # There's probably a button to press round here somewhere
174
+ for var in %w(@flash @cookies @action_name @_session @_request @request_origin
175
+ @template @request @ignore_missing_templates @_headers @variables_added
176
+ @_flash @response @template_class
177
+ @_cookies @before_filter_chain_aborted @url
178
+ @_response @template_root @headers @_params @params @session)
179
+ unless @view.instance_variables.include?(var)
180
+ view.instance_variable_set(var, view.controller.instance_variable_get(var))
181
+ end
182
+ end
183
+ end
184
+
185
+ # create and compile a renderer class (AKA Dryml::Template::Environment)
186
+ #
187
+ # template_src:: the DRYML source
188
+ # template_path:: the filename of the source. This is used for
189
+ # caching
190
+ # locals:: local variables.
191
+ # imports:: A list of helper modules to import. For example, Hobo
192
+ # uses [Hobo::Helper, Hobo::Helper::Translations,
193
+ # ApplicationHelper]
194
+ # included_taglibs:: A list of Taglibs to include. { :src =>
195
+ # "core", :plugin => "dryml" } is automatically
196
+ # added to this list.
197
+ #
198
+ def make_renderer_class(template_src, template_path, locals=[], imports=[], included_taglibs=[])
199
+ renderer_class = Class.new(TemplateEnvironment)
200
+ compile_renderer_class(renderer_class, template_src, template_path, locals, imports, included_taglibs)
201
+ renderer_class
202
+ end
203
+
204
+
205
+ def compile_renderer_class(renderer_class, template_src, template_path, locals, imports, included_taglibs=[])
206
+ template = Dryml::Template.new(template_src, renderer_class, template_path)
207
+ imports.each {|m| template.import_module(m)}
208
+
209
+ taglibs = [CORE_TAGLIB] + included_taglibs
210
+
211
+ # the sum of all the names we've seen so far - eventually we'll be ready for all of 'em
212
+ all_local_names = renderer_class.compiled_local_names | locals
213
+
214
+ template.compile(all_local_names, taglibs)
215
+ end
216
+
217
+
218
+ def unreserve(word)
219
+ word = word.to_s
220
+ if RESERVED_WORDS.include?(word)
221
+ word + "_"
222
+ else
223
+ word
203
224
  end
204
225
  end
205
- end
206
-
207
- # create and compile a renderer class (AKA Dryml::Template::Environment)
208
- #
209
- # template_src:: the DRYML source
210
- # template_path:: the filename of the source. This is used for
211
- # caching
212
- # locals:: local variables.
213
- # imports:: A list of helper modules to import. For example, Hobo
214
- # uses [Hobo::Helper, Hobo::Helper::Translations,
215
- # ApplicationHelper]
216
- # included_taglibs:: A list of Taglibs to include. { :src =>
217
- # "core", :plugin => "dryml" } is automatically
218
- # added to this list.
219
- #
220
- def make_renderer_class(template_src, template_path, locals=[], taglibs=[])
221
- renderer_class = Class.new(TemplateEnvironment)
222
- compile_renderer_class(renderer_class, template_src, template_path, locals, taglibs)
223
- renderer_class
224
- end
225
-
226
- def compile_renderer_class(renderer_class, template_src, template_path, locals, taglibs=[])
227
- template = Dryml::Template.new(template_src, renderer_class, template_path)
228
- DEFAULT_IMPORTS.each {|m| template.import_module(m)}
229
-
230
- # the sum of all the names we've seen so far - eventually we'll be ready for all of 'em
231
- all_local_names = renderer_class.compiled_local_names | locals
232
-
233
- template.compile(all_local_names, [CORE_TAGLIB]+taglibs)
234
- end
226
+
227
+
228
+ def static_tags
229
+ @static_tags ||= begin
230
+ path = if Object.const_defined?(:Rails) && FileTest.exists?("#{Rails.root}/config/dryml_static_tags.txt")
231
+ "#{Rails.root}/config/dryml_static_tags.txt"
232
+ else
233
+ File.join(File.dirname(__FILE__), "dryml/static_tags")
234
+ end
235
+ File.readlines(path).*.chop
236
+ end
237
+ end
238
+
239
+ attr_writer :static_tags
240
+
241
+ # Helper function for use outside Hobo/Rails
242
+ #
243
+ # Pass the template context in locals[:this]
244
+ #
245
+ # This function caches. If the mtime of template_path is older
246
+ # than the last compilation time, the cached version will be
247
+ # used. If no template_path is given, template_src is used as the
248
+ # key to the cache.
249
+ #
250
+ # If a local variable is not present when the template is
251
+ # compiled, it will be ignored when the template is used. In
252
+ # other words, the variable values may change, but the names may
253
+ # not.
254
+ #
255
+ # included_taglibs is only used during template compilation.
256
+ #
257
+ # @param [String] template_src the DRYML source
258
+ # @param [Hash] locals local variables.
259
+ # @param [String, nil] template_path the filename of the source.
260
+ # @param [Array] included_taglibs A list of Taglibs to include. { :src =>
261
+ # "core", :plugin => "dryml" } is automatically
262
+ # added to this list.
263
+ # @param [ActionView::Base] view an ActionView instance
264
+ def render(template_src, locals={}, template_path=nil, included_taglibs=[], view=nil)
265
+ template_path ||= template_src
266
+ view ||= ActionView::Base.new(ActionController::Base.view_paths, {})
267
+ this = locals.delete(:this) || nil
268
+
269
+ renderer_class = Dryml::Template.build_cache[template_path]._?.environment ||
270
+ Dryml.make_renderer_class(template_src, template_path, locals.keys)
271
+ renderer_class.new(template_path, view).render_page(this, locals)
272
+ end
235
273
 
236
274
  end
237
275
 
data/taglibs/core.dryml CHANGED
@@ -4,9 +4,7 @@
4
4
  It's the DRYML equivalent of Ruby's `send` method.
5
5
  -->
6
6
  <def tag="call-tag" attrs="tag">
7
- <%= Dryml.static_tags.include?(tag) ?
8
- content_tag(tag, parameters.default, attributes) :
9
- send(tag.gsub('-', '_'), attributes, parameters) %>
7
+ <%= send(tag.gsub('-', '_'), attributes, parameters) %>
10
8
  </def>
11
9
 
12
10
 
@@ -23,15 +21,7 @@ For example, you might want to wrap an `<img>` tag in an `<a>` tag but only unde
23
21
  -->
24
22
  <def tag="wrap" attrs="tag, when, parameter">
25
23
  <% parameter ||= :default %>
26
- <%= if when_
27
- if Dryml.static_tags.include?(tag)
28
- content_tag(tag, parameters.default, attributes)
29
- else
30
- send(tag.gsub('-', '_'), attributes, { parameter.to_sym => parameters[:default] })
31
- end
32
- else
33
- parameters.default
34
- end %>
24
+ <%= when_ ? send(tag, attributes, { parameter.to_sym => parameters[:default] }) : parameters.default %>
35
25
  </def>
36
26
 
37
27
 
@@ -71,10 +61,10 @@ For example, you might want to wrap an `<img>` tag in an `<a>` tag but only unde
71
61
 
72
62
  ### Usage
73
63
 
74
- <if test="&current_user.administrator?">Logged in as administrator</if>
64
+ <if test="&current_user.administrtator?">Logged in as administrator</if>
75
65
  <else>Logged in as normal user</else>
76
-
77
- **IMPORTANT NOTE**: `<if>` tests for non-blank vs. blank (as defined by ActiveSupport), not true vs. false.
66
+
67
+ **IMPORTANT NOTE**: `<if>` tests for non-blank vs. blank (as defined by ActiveSuport), not true vs. false.
78
68
 
79
69
  If you do not give the `test` attribute, uses the current context instead. This allows a nice trick like this:
80
70
 
data/test/dryml.rdoctest CHANGED
@@ -7,7 +7,7 @@
7
7
  >> $:.unshift File.join(File.expand_path(File.dirname(__FILE__)), '../../dryml/lib')
8
8
  >> require 'hobo_support'
9
9
  >> require 'dryml'
10
- >> require 'dryml/railtie/template_handler'
10
+ >> require 'dryml/template_handler'
11
11
 
12
12
  {.hidden}
13
13
 
metadata CHANGED
@@ -1,8 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dryml
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: 6
5
- version: 1.3.0.RC4
4
+ hash: -1637175975
5
+ prerelease: true
6
+ segments:
7
+ - 1
8
+ - 3
9
+ - 0
10
+ - pre10
11
+ version: 1.3.0.pre10
6
12
  platform: ruby
7
13
  authors:
8
14
  - Tom Locke
@@ -10,7 +16,7 @@ autorequire:
10
16
  bindir: bin
11
17
  cert_chain: []
12
18
 
13
- date: 2011-11-09 00:00:00 -05:00
19
+ date: 2010-10-10 00:00:00 -04:00
14
20
  default_executable:
15
21
  dependencies:
16
22
  - !ruby/object:Gem::Dependency
@@ -19,8 +25,13 @@ dependencies:
19
25
  requirement: &id001 !ruby/object:Gem::Requirement
20
26
  none: false
21
27
  requirements:
22
- - - ~>
28
+ - - ">="
23
29
  - !ruby/object:Gem::Version
30
+ hash: 7
31
+ segments:
32
+ - 3
33
+ - 0
34
+ - 0
24
35
  version: 3.0.0
25
36
  type: :runtime
26
37
  version_requirements: *id001
@@ -32,7 +43,13 @@ dependencies:
32
43
  requirements:
33
44
  - - "="
34
45
  - !ruby/object:Gem::Version
35
- version: 1.3.0.RC4
46
+ hash: -1637175975
47
+ segments:
48
+ - 1
49
+ - 3
50
+ - 0
51
+ - pre10
52
+ version: 1.3.0.pre10
36
53
  type: :runtime
37
54
  version_requirements: *id002
38
55
  - !ruby/object:Gem::Dependency
@@ -43,6 +60,9 @@ dependencies:
43
60
  requirements:
44
61
  - - ">="
45
62
  - !ruby/object:Gem::Version
63
+ hash: 3
64
+ segments:
65
+ - 0
46
66
  version: "0"
47
67
  type: :development
48
68
  version_requirements: *id003
@@ -50,8 +70,8 @@ description: The Don't Repeat Yourself Markup Language
50
70
  email: tom@tomlocke.com
51
71
  executables: []
52
72
 
53
- extensions:
54
- - ext/mkrf_conf.rb
73
+ extensions: []
74
+
55
75
  extra_rdoc_files: []
56
76
 
57
77
  files:
@@ -62,7 +82,6 @@ files:
62
82
  - TODO.txt
63
83
  - VERSION
64
84
  - dryml.gemspec
65
- - ext/mkrf_conf.rb
66
85
  - lib/dryml.rb
67
86
  - lib/dryml/dryml_builder.rb
68
87
  - lib/dryml/dryml_doc.rb
@@ -80,6 +99,7 @@ files:
80
99
  - lib/dryml/parser/tree_parser.rb
81
100
  - lib/dryml/part_context.rb
82
101
  - lib/dryml/railtie.rb
102
+ - lib/dryml/railtie/page_tag_handler.rb
83
103
  - lib/dryml/railtie/page_tag_resolver.rb
84
104
  - lib/dryml/railtie/template_handler.rb
85
105
  - lib/dryml/scoped_variables.rb
@@ -104,17 +124,25 @@ required_ruby_version: !ruby/object:Gem::Requirement
104
124
  requirements:
105
125
  - - ">="
106
126
  - !ruby/object:Gem::Version
127
+ hash: 3
128
+ segments:
129
+ - 0
107
130
  version: "0"
108
131
  required_rubygems_version: !ruby/object:Gem::Requirement
109
132
  none: false
110
133
  requirements:
111
134
  - - ">="
112
135
  - !ruby/object:Gem::Version
136
+ hash: 23
137
+ segments:
138
+ - 1
139
+ - 3
140
+ - 6
113
141
  version: 1.3.6
114
142
  requirements: []
115
143
 
116
144
  rubyforge_project: hobo
117
- rubygems_version: 1.6.2
145
+ rubygems_version: 1.3.7
118
146
  signing_key:
119
147
  specification_version: 3
120
148
  summary: The Don't Repeat Yourself Markup Language
data/ext/mkrf_conf.rb DELETED
@@ -1,9 +0,0 @@
1
- require 'rubygems'
2
-
3
- # the whole reason this file exists: to return an error if openssl
4
- # isn't installed.
5
- require 'openssl'
6
-
7
- f = File.open(File.join(File.dirname(__FILE__), "Rakefile"), "w") # create dummy rakefile to indicate success
8
- f.write("task :default\n")
9
- f.close