machined 0.3.1 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
data/bin/machined CHANGED
@@ -1,4 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
+ ENV["BUNDLE_GEMFILE"] ||= File.join(Dir.pwd, "Gemfile")
4
+ require "bundler/setup" if File.exist? ENV["BUNDLE_GEMFILE"]
5
+
3
6
  require "machined"
4
7
  Machined::CLI.start
data/lib/machined.rb CHANGED
@@ -4,6 +4,7 @@ module Machined
4
4
  autoload :CLI, "machined/cli"
5
5
  autoload :Context, "machined/context"
6
6
  autoload :Environment, "machined/environment"
7
+ autoload :Initializable, "machined/initializable"
7
8
  autoload :Server, "machined/server"
8
9
  autoload :Sprocket, "machined/sprocket"
9
10
  autoload :StaticCompiler, "machined/static_compiler"
@@ -6,6 +6,8 @@ require "tilt"
6
6
 
7
7
  module Machined
8
8
  class Environment
9
+ include Initializable
10
+
9
11
  # Default options for a Machined environment.
10
12
  DEFAULT_OPTIONS = {
11
13
  # Global configuration
@@ -13,6 +15,7 @@ module Machined
13
15
  :config_path => "machined.rb",
14
16
  :output_path => "public",
15
17
  :environment => "development",
18
+ :skip_bundle => false,
16
19
  :digest_assets => false,
17
20
  :gzip_assets => false,
18
21
  :layout => "main",
@@ -96,67 +99,117 @@ module Machined
96
99
  def initialize(options = {})
97
100
  @config = OpenStruct.new DEFAULT_OPTIONS.dup.merge(options)
98
101
  @root = Pathname.new(config.root).expand_path
102
+ @output_path = root.join config.output_path
99
103
  @sprockets = []
100
104
  @context_helpers = []
101
105
 
102
- # Create and append the default `assets` sprocket.
103
- # This sprocket mimics the asset pipeline in Rails 3.1.
104
- append_sprocket :assets, :assets => true
106
+ run_initializers self
107
+ end
108
+
109
+ # If bundler is used, require all the gems in the Gemfile
110
+ # for this environment.
111
+ initializer :require_bundle do
112
+ next if config.skip_bundle
105
113
 
106
- # Create and append the default `pages` sprocket.
107
- # This sprocket is responsible for processing HTML pages,
108
- # and includes processors for wrapping pages in layouts and
109
- # reading YAML front matter.
114
+ ENV["BUNDLE_GEMFILE"] ||= root.join("Gemfile").to_s
115
+ if File.exist? ENV["BUNDLE_GEMFILE"]
116
+ require "bundler"
117
+ Bundler.require :default, config.environment.to_sym
118
+ end
119
+ end
120
+
121
+ # Create and append the default `assets` sprocket.
122
+ # This sprocket mimics the asset pipeline in Rails 3.1.
123
+ initializer :create_assets_sprocket do
124
+ append_sprocket :assets, :assets => true
125
+ end
126
+
127
+ # Create and append the default `pages` sprocket.
128
+ # This sprocket is responsible for processing HTML pages,
129
+ # and includes processors for wrapping pages in layouts and
130
+ # reading YAML front matter.
131
+ initializer :create_pages_sprocket do
110
132
  append_sprocket :pages do |pages|
111
133
  pages.register_mime_type "text/html", ".html"
112
134
  pages.register_preprocessor "text/html", Processors::FrontMatterProcessor
113
135
  pages.register_postprocessor "text/html", Processors::LayoutProcessor
114
136
  end
115
-
116
- # Create and append the default `views` sprocket.
117
- # The files in this sprocket are not compiled. They are
118
- # meant to be resources for the other sprockets. For instance,
119
- # the layouts for the `pages` sprocket will be located here.
137
+ end
138
+
139
+ # Create and append the default `views` sprocket.
140
+ # The files in this sprocket are not compiled. They are
141
+ # meant to be resources for the other sprockets. For instance,
142
+ # the layouts for the `pages` sprocket will be located here.
143
+ initializer :create_views_sprocket do
120
144
  append_sprocket :views, :compile => false do |views|
121
145
  views.register_mime_type "text/html", ".html"
122
146
  end
123
-
124
- # If there's a config file, execute with the scope of the
125
- # newly created Machined environment. The default sprockets are
126
- # available at this point, but not fully configured. This is so
127
- # you can actually configure the sprockets with this file.
128
- config_file = root.join(config.config_path)
147
+ end
148
+
149
+ # If there's a config file, execute with the scope of the
150
+ # newly created Machined environment. The default sprockets are
151
+ # available at this point, but not fully configured. This is so
152
+ # you can actually configure the sprockets with this file.
153
+ initializer :eval_config_file do
154
+ config_file = root.join config.config_path
129
155
  instance_eval config_file.read if config_file.exist?
130
156
 
131
- # Handle anymore configuration related setup.
132
- @output_path = root.join(config.output_path)
133
-
134
- # Append the paths for each sprocket. The default `assets` sprocket
135
- # is special, because we actually append the directories within
136
- # the given paths (like the Rails 3.1 asset pipeline).
137
- append_path pages, config.pages_path
138
- append_paths pages, config.pages_paths
139
- append_path views, config.views_path
140
- append_paths views, config.views_paths
157
+ # This could be changed in the config file
158
+ @output_path = root.join config.output_path
159
+ end
160
+
161
+ # Register all available Tilt templates to every
162
+ # sprocket other than the assets sprocket
163
+ initializer :register_all_templates do
164
+ sprockets.each do |sprocket|
165
+ sprocket.use_all_templates unless sprocket.config.assets
166
+ end
167
+ end
168
+
169
+ # Do any configuration to the assets sprockets necessary
170
+ # after the config file has been evaled.
171
+ initializer :configure_assets_sprocket do
172
+ # Append the directories within the configured paths
141
173
  append_paths assets, Utils.existent_directories(root.join(config.assets_path))
142
174
  config.assets_paths.each do |asset_path|
143
175
  append_paths assets, Utils.existent_directories(root.join(asset_path))
144
176
  end
145
177
 
146
178
  # Search for Rails Engines with assets and append those
147
- if defined?(Rails) && defined?(Rails::Engine)
179
+ if defined? Rails::Engine
148
180
  Rails::Engine.subclasses.each do |engine|
149
- append_paths assets, engine.paths["vendor/assets"].existent_directories
150
- append_paths assets, engine.paths["lib/assets"].existent_directories
151
181
  append_paths assets, engine.paths["app/assets"].existent_directories
182
+ append_paths assets, engine.paths["lib/assets"].existent_directories
183
+ append_paths assets, engine.paths["vendor/assets"].existent_directories
152
184
  end
153
185
  end
154
186
 
155
- # Set the URLs for the compilable default sprockets.
187
+ # Setup the base URL for the assets (like the Rails asset_prefix)
156
188
  assets.config.url = config.assets_url
157
- pages.config.url = config.pages_url
189
+ end
190
+
191
+ # Do any configuration to the pages sprockets necessary
192
+ # after the config file has been evaled.
193
+ initializer :configure_pages_sprocket do
194
+ # Append the configured pages paths
195
+ append_path pages, config.pages_path
196
+ append_paths pages, config.pages_paths
158
197
 
159
- # Now setup assets compression.
198
+ # Setup the base URL for the pages
199
+ pages.config.url = config.pages_url
200
+ end
201
+
202
+ # Do any configuration to the views sprockets necessary
203
+ # after the config file has been evaled.
204
+ initializer :configure_views_sprocket do
205
+ # Append the configured views paths
206
+ append_path views, config.views_path
207
+ append_paths views, config.views_paths
208
+ end
209
+
210
+ # Setup the JavaScript and CSS compressors
211
+ # for the assets based on the configuration.
212
+ initializer :configure_assets_compression do
160
213
  if config.compress
161
214
  config.compress_js = true
162
215
  config.compress_css = true
@@ -166,9 +219,11 @@ module Machined
166
219
  end
167
220
  assets.js_compressor = js_compressor if config.compress_js
168
221
  assets.css_compressor = css_compressor if config.compress_css
169
-
170
- # Finally, configure Sprockets::Helpers to
171
- # match curernt configuration.
222
+ end
223
+
224
+ # Finally, configure Sprockets::Helpers to
225
+ # match curernt configuration.
226
+ initializer :configure_sprockets_helpers do
172
227
  Sprockets::Helpers.configure do |helpers|
173
228
  helpers.environment = assets
174
229
  helpers.digest = config.digest_assets
@@ -0,0 +1,72 @@
1
+ require "active_support/concern"
2
+
3
+ module Machined
4
+ # Initializable is a minimal version of
5
+ # Rails::Initializable. Its implementation
6
+ # of placing initializers before or after other
7
+ # initializers is a bit naive, compared to the Rails
8
+ # version, but it suits the needs of this lib.
9
+ #
10
+ # If they move Rails::Initializable into ActiveSupport
11
+ # I'll remove this module and use theirs. Right now,
12
+ # I don't want to `require "rails"` if I don't have to.
13
+ module Initializable
14
+ extend ActiveSupport::Concern
15
+
16
+ class Initializer < Struct.new(:name, :block)
17
+ # Run's the initializer's +block+ with the given
18
+ # +context+ and yields the given +args+
19
+ # to the block.
20
+ def run(context, *args)
21
+ context.instance_exec(*args, &block)
22
+ end
23
+ end
24
+
25
+ module ClassMethods
26
+ # Returns an array of the initializers for
27
+ # this class.
28
+ def initializers
29
+ @initializers ||= []
30
+ end
31
+
32
+ # Creates a new initializer with the given name.
33
+ # You can optionally pace initializers before or after
34
+ # other initializers using the `:before` and `:after`
35
+ # options. Otherwise the initializer is appended to the
36
+ # of the list.
37
+ def initializer(name, options = {}, &block)
38
+ initializer = Initializer.new(name, block)
39
+
40
+ if after = options[:after]
41
+ initializers.insert initializer_index(after) + 1, initializer
42
+ elsif before = options[:before]
43
+ initializers.insert initializer_index(before), initializer
44
+ else
45
+ initializers << initializer
46
+ end
47
+ end
48
+
49
+ protected
50
+
51
+ # Returns the index of the initializer with
52
+ # the given name.
53
+ def initializer_index(name) # :nodoc:
54
+ initializers.index do |initializer|
55
+ initializer.name.to_sym == name.to_sym
56
+ end or raise "The specified initializer, #{name.inspect}, does not exist"
57
+ end
58
+ end
59
+
60
+ module InstanceMethods
61
+ # Run each initializer with the given args
62
+ # yielded to each initializer's block.
63
+ def run_initializers(*args)
64
+ return if @initializers_run
65
+ self.class.initializers.each do |initializer|
66
+ initializer.run self, *args
67
+ end
68
+ @initializers_run = true
69
+ end
70
+ end
71
+ end
72
+ end
@@ -1,3 +1,3 @@
1
1
  module Machined
2
- VERSION = "0.3.1"
2
+ VERSION = "0.4.0"
3
3
  end
data/machined.gemspec CHANGED
@@ -29,14 +29,14 @@ Gem::Specification.new do |s|
29
29
  s.add_development_dependency "rspec", "~> 2.7.0"
30
30
  s.add_development_dependency "rack-test", "~> 0.6.1"
31
31
  s.add_development_dependency "test-construct", "~> 1.2.0"
32
- s.add_development_dependency 'unindent', "~> 1.0"
32
+ s.add_development_dependency "unindent", "~> 1.0"
33
+ s.add_development_dependency "railties", "~> 3.1.1"
33
34
  s.add_development_dependency "haml"
34
35
  s.add_development_dependency "sass"
35
36
  s.add_development_dependency "slim"
36
37
  s.add_development_dependency "erubis"
37
38
  s.add_development_dependency "rdiscount"
38
39
  s.add_development_dependency "uglifier"
39
- s.add_development_dependency "railties"
40
40
  s.add_development_dependency "jquery-rails"
41
41
  s.add_development_dependency "rake"
42
42
  end
@@ -125,6 +125,7 @@ describe Machined::Environment do
125
125
  require "rails"
126
126
  require "jquery-rails"
127
127
  machined.assets.paths.first.should =~ %r(/jquery-rails-[\d\.]+/vendor/assets/javascripts)
128
+ Rails::Engine.subclasses.delete Jquery::Rails::Engine
128
129
  end
129
130
 
130
131
  it "compiles web assets" do
@@ -0,0 +1,74 @@
1
+ require "spec_helper"
2
+
3
+ describe Machined::Initializable do
4
+ class BasicInitializer
5
+ include Machined::Initializable
6
+ attr_accessor :count
7
+ end
8
+
9
+ after(:each) do
10
+ BasicInitializer.instance_variable_set :@initializers, nil
11
+ end
12
+
13
+ it "runs initializers in order" do
14
+ array = []
15
+ BasicInitializer.initializer(:one) { array << 1 }
16
+ BasicInitializer.initializer(:two) { array << 2 }
17
+ BasicInitializer.initializer(:three) { array << 3 }
18
+ BasicInitializer.new.run_initializers
19
+ array.should == [ 1, 2, 3 ]
20
+ end
21
+
22
+ it "runs initializers only once" do
23
+ count = 0
24
+ BasicInitializer.initializer(:count) { count += 1 }
25
+ basic = BasicInitializer.new
26
+ basic.run_initializers
27
+ basic.run_initializers
28
+ count.should == 1
29
+ end
30
+
31
+ it "executes in the instance scope" do
32
+ BasicInitializer.initializer(:init_count) { @count = 0 }
33
+ BasicInitializer.initializer(:one) { @count += 1 }
34
+ BasicInitializer.initializer(:two) { @count += 1 }
35
+ basic = BasicInitializer.new
36
+ basic.run_initializers
37
+ basic.count.should == 2
38
+ end
39
+
40
+ it "runs the initializers with the given args" do
41
+ BasicInitializer.initializer(:sum) { |*args| @count = args.inject(&:+) }
42
+ basic = BasicInitializer.new
43
+ basic.run_initializers 1, 2, 3
44
+ basic.count.should == 6
45
+ end
46
+
47
+ it "adds initializers after specific initializers" do
48
+ array = []
49
+ BasicInitializer.initializer(:one) { array << 1 }
50
+ BasicInitializer.initializer(:two) { array << 2 }
51
+ BasicInitializer.initializer(:three, :after => :one) { array << 3 }
52
+ BasicInitializer.new.run_initializers
53
+ array.should == [ 1, 3, 2 ]
54
+ end
55
+
56
+ it "adds initializers before specific initializers" do
57
+ array = []
58
+ BasicInitializer.initializer(:one) { array << 1 }
59
+ BasicInitializer.initializer(:two) { array << 2 }
60
+ BasicInitializer.initializer(:three, :before => :two) { array << 3 }
61
+ BasicInitializer.new.run_initializers
62
+ array.should == [ 1, 3, 2 ]
63
+ end
64
+
65
+ it "raises an error if the specified initializer doesn't exist" do
66
+ expect {
67
+ BasicInitializer.initializer(:wtf, :after => :omg) { }
68
+ }.to raise_error("The specified initializer, :omg, does not exist")
69
+
70
+ expect {
71
+ BasicInitializer.initializer(:omg, :before => :wtf) { }
72
+ }.to raise_error("The specified initializer, :wtf, does not exist")
73
+ end
74
+ end
@@ -1,10 +1,11 @@
1
1
  require "pathname"
2
+ require "active_support/core_ext/hash/reverse_merge"
2
3
 
3
4
  module Machined
4
5
  module SpecHelpers
5
6
  # Convenience method for creating a new Machined environment
6
7
  def machined(config = {})
7
- @machined ||= Machined::Environment.new(config)
8
+ @machined ||= Machined::Environment.new(config.reverse_merge(:skip_bundle => true))
8
9
  end
9
10
 
10
11
  # Convenience method for creating a new Machined sprocket,
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: machined
3
3
  version: !ruby/object:Gem::Version
4
- hash: 17
4
+ hash: 15
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 3
9
- - 1
10
- version: 0.3.1
8
+ - 4
9
+ - 0
10
+ version: 0.4.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Pete Browne
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-11-10 00:00:00 Z
18
+ date: 2011-11-14 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  requirement: &id001 !ruby/object:Gem::Requirement
@@ -30,8 +30,8 @@ dependencies:
30
30
  - 3
31
31
  version: 2.0.3
32
32
  name: sprockets
33
- version_requirements: *id001
34
33
  prerelease: false
34
+ version_requirements: *id001
35
35
  type: :runtime
36
36
  - !ruby/object:Gem::Dependency
37
37
  requirement: &id002 !ruby/object:Gem::Requirement
@@ -46,8 +46,8 @@ dependencies:
46
46
  - 1
47
47
  version: 0.2.1
48
48
  name: sprockets-helpers
49
- version_requirements: *id002
50
49
  prerelease: false
50
+ version_requirements: *id002
51
51
  type: :runtime
52
52
  - !ruby/object:Gem::Dependency
53
53
  requirement: &id003 !ruby/object:Gem::Requirement
@@ -62,8 +62,8 @@ dependencies:
62
62
  - 1
63
63
  version: 0.4.1
64
64
  name: sprockets-sass
65
- version_requirements: *id003
66
65
  prerelease: false
66
+ version_requirements: *id003
67
67
  type: :runtime
68
68
  - !ruby/object:Gem::Dependency
69
69
  requirement: &id004 !ruby/object:Gem::Requirement
@@ -78,8 +78,8 @@ dependencies:
78
78
  - 5
79
79
  version: 0.10.5
80
80
  name: padrino-helpers
81
- version_requirements: *id004
82
81
  prerelease: false
82
+ version_requirements: *id004
83
83
  type: :runtime
84
84
  - !ruby/object:Gem::Dependency
85
85
  requirement: &id005 !ruby/object:Gem::Requirement
@@ -94,8 +94,8 @@ dependencies:
94
94
  - 1
95
95
  version: 3.1.1
96
96
  name: activesupport
97
- version_requirements: *id005
98
97
  prerelease: false
98
+ version_requirements: *id005
99
99
  type: :runtime
100
100
  - !ruby/object:Gem::Dependency
101
101
  requirement: &id006 !ruby/object:Gem::Requirement
@@ -110,8 +110,8 @@ dependencies:
110
110
  - 0
111
111
  version: 0.6.0
112
112
  name: i18n
113
- version_requirements: *id006
114
113
  prerelease: false
114
+ version_requirements: *id006
115
115
  type: :runtime
116
116
  - !ruby/object:Gem::Dependency
117
117
  requirement: &id007 !ruby/object:Gem::Requirement
@@ -126,8 +126,8 @@ dependencies:
126
126
  - 6
127
127
  version: 0.14.6
128
128
  name: thor
129
- version_requirements: *id007
130
129
  prerelease: false
130
+ version_requirements: *id007
131
131
  type: :runtime
132
132
  - !ruby/object:Gem::Dependency
133
133
  requirement: &id008 !ruby/object:Gem::Requirement
@@ -142,8 +142,8 @@ dependencies:
142
142
  - 3
143
143
  version: 0.3.3
144
144
  name: crush
145
- version_requirements: *id008
146
145
  prerelease: false
146
+ version_requirements: *id008
147
147
  type: :runtime
148
148
  - !ruby/object:Gem::Dependency
149
149
  requirement: &id009 !ruby/object:Gem::Requirement
@@ -158,8 +158,8 @@ dependencies:
158
158
  - 0
159
159
  version: 2.7.0
160
160
  name: rspec
161
- version_requirements: *id009
162
161
  prerelease: false
162
+ version_requirements: *id009
163
163
  type: :development
164
164
  - !ruby/object:Gem::Dependency
165
165
  requirement: &id010 !ruby/object:Gem::Requirement
@@ -174,8 +174,8 @@ dependencies:
174
174
  - 1
175
175
  version: 0.6.1
176
176
  name: rack-test
177
- version_requirements: *id010
178
177
  prerelease: false
178
+ version_requirements: *id010
179
179
  type: :development
180
180
  - !ruby/object:Gem::Dependency
181
181
  requirement: &id011 !ruby/object:Gem::Requirement
@@ -190,8 +190,8 @@ dependencies:
190
190
  - 0
191
191
  version: 1.2.0
192
192
  name: test-construct
193
- version_requirements: *id011
194
193
  prerelease: false
194
+ version_requirements: *id011
195
195
  type: :development
196
196
  - !ruby/object:Gem::Dependency
197
197
  requirement: &id012 !ruby/object:Gem::Requirement
@@ -205,22 +205,24 @@ dependencies:
205
205
  - 0
206
206
  version: "1.0"
207
207
  name: unindent
208
- version_requirements: *id012
209
208
  prerelease: false
209
+ version_requirements: *id012
210
210
  type: :development
211
211
  - !ruby/object:Gem::Dependency
212
212
  requirement: &id013 !ruby/object:Gem::Requirement
213
213
  none: false
214
214
  requirements:
215
- - - ">="
215
+ - - ~>
216
216
  - !ruby/object:Gem::Version
217
- hash: 3
217
+ hash: 1
218
218
  segments:
219
- - 0
220
- version: "0"
221
- name: haml
222
- version_requirements: *id013
219
+ - 3
220
+ - 1
221
+ - 1
222
+ version: 3.1.1
223
+ name: railties
223
224
  prerelease: false
225
+ version_requirements: *id013
224
226
  type: :development
225
227
  - !ruby/object:Gem::Dependency
226
228
  requirement: &id014 !ruby/object:Gem::Requirement
@@ -232,9 +234,9 @@ dependencies:
232
234
  segments:
233
235
  - 0
234
236
  version: "0"
235
- name: sass
236
- version_requirements: *id014
237
+ name: haml
237
238
  prerelease: false
239
+ version_requirements: *id014
238
240
  type: :development
239
241
  - !ruby/object:Gem::Dependency
240
242
  requirement: &id015 !ruby/object:Gem::Requirement
@@ -246,9 +248,9 @@ dependencies:
246
248
  segments:
247
249
  - 0
248
250
  version: "0"
249
- name: slim
250
- version_requirements: *id015
251
+ name: sass
251
252
  prerelease: false
253
+ version_requirements: *id015
252
254
  type: :development
253
255
  - !ruby/object:Gem::Dependency
254
256
  requirement: &id016 !ruby/object:Gem::Requirement
@@ -260,9 +262,9 @@ dependencies:
260
262
  segments:
261
263
  - 0
262
264
  version: "0"
263
- name: erubis
264
- version_requirements: *id016
265
+ name: slim
265
266
  prerelease: false
267
+ version_requirements: *id016
266
268
  type: :development
267
269
  - !ruby/object:Gem::Dependency
268
270
  requirement: &id017 !ruby/object:Gem::Requirement
@@ -274,9 +276,9 @@ dependencies:
274
276
  segments:
275
277
  - 0
276
278
  version: "0"
277
- name: rdiscount
278
- version_requirements: *id017
279
+ name: erubis
279
280
  prerelease: false
281
+ version_requirements: *id017
280
282
  type: :development
281
283
  - !ruby/object:Gem::Dependency
282
284
  requirement: &id018 !ruby/object:Gem::Requirement
@@ -288,9 +290,9 @@ dependencies:
288
290
  segments:
289
291
  - 0
290
292
  version: "0"
291
- name: uglifier
292
- version_requirements: *id018
293
+ name: rdiscount
293
294
  prerelease: false
295
+ version_requirements: *id018
294
296
  type: :development
295
297
  - !ruby/object:Gem::Dependency
296
298
  requirement: &id019 !ruby/object:Gem::Requirement
@@ -302,9 +304,9 @@ dependencies:
302
304
  segments:
303
305
  - 0
304
306
  version: "0"
305
- name: railties
306
- version_requirements: *id019
307
+ name: uglifier
307
308
  prerelease: false
309
+ version_requirements: *id019
308
310
  type: :development
309
311
  - !ruby/object:Gem::Dependency
310
312
  requirement: &id020 !ruby/object:Gem::Requirement
@@ -317,8 +319,8 @@ dependencies:
317
319
  - 0
318
320
  version: "0"
319
321
  name: jquery-rails
320
- version_requirements: *id020
321
322
  prerelease: false
323
+ version_requirements: *id020
322
324
  type: :development
323
325
  - !ruby/object:Gem::Dependency
324
326
  requirement: &id021 !ruby/object:Gem::Requirement
@@ -331,8 +333,8 @@ dependencies:
331
333
  - 0
332
334
  version: "0"
333
335
  name: rake
334
- version_requirements: *id021
335
336
  prerelease: false
337
+ version_requirements: *id021
336
338
  type: :development
337
339
  description: Why another static site generator? Machined is for the developers who know and love the asset pipeline of Rails 3.1 and want to develop blazingly fast static websites. It's built from the ground up using Sprockets 2.0.
338
340
  email:
@@ -359,6 +361,7 @@ files:
359
361
  - lib/machined/helpers/output_helpers.rb
360
362
  - lib/machined/helpers/page_helpers.rb
361
363
  - lib/machined/helpers/render_helpers.rb
364
+ - lib/machined/initializable.rb
362
365
  - lib/machined/processors/front_matter_processor.rb
363
366
  - lib/machined/processors/layout_processor.rb
364
367
  - lib/machined/server.rb
@@ -384,6 +387,7 @@ files:
384
387
  - spec/machined/helpers/output_helpers_spec.rb
385
388
  - spec/machined/helpers/page_helpers_spec.rb
386
389
  - spec/machined/helpers/render_helpers_spec.rb
390
+ - spec/machined/initializable_spec.rb
387
391
  - spec/machined/processors/front_matter_processor_spec.rb
388
392
  - spec/machined/processors/layout_processor_spec.rb
389
393
  - spec/machined/server_spec.rb
@@ -435,6 +439,7 @@ test_files:
435
439
  - spec/machined/helpers/output_helpers_spec.rb
436
440
  - spec/machined/helpers/page_helpers_spec.rb
437
441
  - spec/machined/helpers/render_helpers_spec.rb
442
+ - spec/machined/initializable_spec.rb
438
443
  - spec/machined/processors/front_matter_processor_spec.rb
439
444
  - spec/machined/processors/layout_processor_spec.rb
440
445
  - spec/machined/server_spec.rb