ruby-quilt 0.1.7 → 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/quilt.rb +32 -12
  2. metadata +1 -1
data/lib/quilt.rb CHANGED
@@ -80,8 +80,10 @@ class Quilt
80
80
  :name => version_name,
81
81
  :dir => File.join(local_path, version_name),
82
82
  :default => {
83
- :base => '',
83
+ :header => '',
84
+ :common => '',
84
85
  :optional => {},
86
+ :footer => ''
85
87
  }
86
88
  }
87
89
  begin
@@ -93,8 +95,10 @@ class Quilt
93
95
  new_version[:debug] = {
94
96
  :dir => manifest[DEBUG_PREFIX_KEY] ? File.join(new_version[:dir], manifest[DEBUG_PREFIX_KEY]) :
95
97
  new_version[:dir],
96
- :base => '',
97
- :optional => {}
98
+ :header => '',
99
+ :common => '',
100
+ :optional => {},
101
+ :footer => ''
98
102
  }
99
103
  end
100
104
  rescue Exception => e
@@ -120,8 +124,7 @@ class Quilt
120
124
  dir = new_version[prefix][:dir]
121
125
  if manifest[HEADER_KEY]
122
126
  begin
123
- new_version[prefix][:base] =
124
- "#{new_version[prefix][:base]}#{File.open(File.join(dir, manifest[HEADER_KEY]), "rb").read}"
127
+ new_version[prefix][:header] = File.open(File.join(dir, manifest[HEADER_KEY]), "rb").read
125
128
  rescue Exception => e
126
129
  log_error(" Could not load #{prefix.to_s} header: #{manifest[HEADER_KEY]}", e)
127
130
  end
@@ -129,8 +132,8 @@ class Quilt
129
132
  if manifest[COMMON_KEY] && manifest[COMMON_KEY].is_a?(Array)
130
133
  manifest[COMMON_KEY].each do |filename|
131
134
  begin
132
- new_version[prefix][:base] =
133
- "#{new_version[prefix][:base]}#{File.open(File.join(dir, filename), "rb").read}"
135
+ new_version[prefix][:common] =
136
+ "#{new_version[prefix][:common]}#{File.open(File.join(dir, filename), "rb").read}"
134
137
  rescue Exception => e
135
138
  log_error(" Could not load #{prefix.to_s} common module: #{filename}", e)
136
139
  end
@@ -154,7 +157,7 @@ class Quilt
154
157
  new_version[prefix][:footer] = File.open(File.join(dir, manifest[FOOTER_KEY]), "rb").read
155
158
  rescue Exception => e
156
159
  log_error(" Could not load #{prefix.to_s} footer: #{manifest[FOOTER_KEY]}", e)
157
- new_version[:footer] = nil
160
+ new_version[:footer] = ''
158
161
  end
159
162
  end
160
163
  end
@@ -250,7 +253,7 @@ class Quilt
250
253
  @versions[name]
251
254
  end
252
255
 
253
- def stitch(selector, version_name, prefix = :default, dynamic_module = nil)
256
+ def stitch(selector, version_name, prefix = :default, dynamic_modules = nil)
254
257
  return '' if !selector
255
258
  version = get_version(version_name)
256
259
  if (!version)
@@ -270,14 +273,31 @@ class Quilt
270
273
  end
271
274
 
272
275
  # resolve dependancies
276
+ dynamics = dynamic_modules && dynamic_modules.is_a?(Hash) ? dynamic_modules : {}
273
277
  output = "#{
274
- outversion[:base]
278
+ dynamics[:before_header] ? dynamics[:before_header] : ''
279
+ }#{
280
+ outversion[:header]
281
+ }#{
282
+ dynamics[:after_header] ? dynamics[:after_header] : ''
283
+ }#{
284
+ dynamics[:before_common] ? dynamics[:before_common] : ''
285
+ }#{
286
+ outversion[:common]
287
+ }#{
288
+ dynamics[:after_common] ? dynamics[:after_common] : ''
289
+ }#{
290
+ dynamics[:before_optional] ? dynamics[:before_optional] : ''
275
291
  }#{
276
292
  resolve_dependancies(modules, outversion, {})
277
293
  }#{
278
- dynamic_module ? dynamic_module : ''
294
+ dynamics[:after_optional] ? dynamics[:after_optional] : ''
295
+ }#{
296
+ dynamics[:before_footer] ? dynamics[:before_footer] : ''
297
+ }#{
298
+ outversion[:footer]
279
299
  }#{
280
- outversion[:footer] ? outversion[:footer] : ''
300
+ dynamics[:after_footer] ? dynamics[:after_footer] : ''
281
301
  }"
282
302
  end
283
303
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-quilt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: