awestruct 0.5.7 → 0.6.0.RC1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -0
  3. data/LICENSE.txt +14 -11
  4. data/README.md +13 -4
  5. data/awestruct.gemspec +19 -20
  6. data/lib/awestruct/cli/invoker.rb +4 -2
  7. data/lib/awestruct/cli/manifest.rb +1 -2
  8. data/lib/awestruct/cli/options.rb +2 -1
  9. data/lib/awestruct/config.rb +5 -0
  10. data/lib/awestruct/config/default-site.yml +1 -2
  11. data/lib/awestruct/context_helper.rb +2 -2
  12. data/lib/awestruct/engine.rb +43 -41
  13. data/lib/awestruct/extensions/partial.rb +14 -12
  14. data/lib/awestruct/extensions/posts.rb +2 -2
  15. data/lib/awestruct/extensions/sitemap.rb +2 -2
  16. data/lib/awestruct/handlers/base_handler.rb +4 -2
  17. data/lib/awestruct/handlers/base_tilt_handler.rb +3 -4
  18. data/lib/awestruct/handlers/file_handler.rb +4 -1
  19. data/lib/awestruct/handlers/javascript_handler.rb +2 -2
  20. data/lib/awestruct/handlers/redirect_handler.rb +1 -1
  21. data/lib/awestruct/handlers/template/asciidoc.rb +4 -1
  22. data/lib/awestruct/page_loader.rb +5 -5
  23. data/lib/awestruct/pipeline.rb +5 -5
  24. data/lib/awestruct/version.rb +1 -1
  25. data/spec/awestruct/engine_spec.rb +29 -1
  26. data/spec/awestruct/handlers/haml_handler_spec.rb +2 -2
  27. data/spec/awestruct/handlers/page_delegating_handler_spec.rb +5 -11
  28. data/spec/awestruct/handlers/tilt_handler_spec.rb +1 -0
  29. data/spec/support/test-data/engine-generate-syntax-errors/_config/site.yml +26 -0
  30. data/spec/support/test-data/engine-generate-syntax-errors/_ext/pipeline.rb +8 -0
  31. data/spec/support/test-data/engine-generate-syntax-errors/_layouts/base.html.slim +6 -0
  32. data/spec/support/test-data/engine-generate-syntax-errors/index.html.slim +7 -0
  33. metadata +40 -73
  34. data/lib/awestruct/compass/default_configuration.rb +0 -131
@@ -14,7 +14,7 @@ module Awestruct
14
14
  return nil if !page
15
15
 
16
16
  params.each do |k,v|
17
- page.send( "#{k}=", v )
17
+ page.send( "#{k}=", v ) unless page.has_key? k
18
18
  end if params
19
19
 
20
20
  page.send("output_page=", self[:page])
@@ -23,22 +23,24 @@ module Awestruct
23
23
  from_site = site.partials.find {|p| p.source_path == page.source_path}
24
24
 
25
25
  # Setup dependency tracking
26
- if from_site
27
- from_site.dependencies.add_dependent self[:page]
28
- self[:page].dependencies.add_dependency from_site
29
- Awestruct::Dependencies.track_dependency(from_site)
30
- else
31
- page.dependencies.add_dependent self[:page]
32
- self[:page].dependencies.add_dependency page
33
- Awestruct::Dependencies.track_dependency(page)
34
- site.partials << page
26
+ if Awestruct::Dependencies.should_track_dependencies
27
+ if from_site
28
+ from_site.dependencies.add_dependent self[:page]
29
+ self[:page].dependencies.add_dependency from_site
30
+ Awestruct::Dependencies.track_dependency(from_site)
31
+ else
32
+ page.dependencies.add_dependent self[:page]
33
+ self[:page].dependencies.add_dependency page
34
+ Awestruct::Dependencies.track_dependency(page)
35
+ site.partials << page
36
+ end
35
37
  end
36
38
 
37
39
  begin
38
40
  page.content
39
41
  rescue Exception => e
40
- ExceptionHelper.log_error "Error occurred while rendering partial #{filename} contained in #{self[:page].source_path}"
41
- ExceptionHelper.backtrace e
42
+ ExceptionHelper.log_message "Error occurred while rendering partial #{filename} contained in #{self[:page].source_path}"
43
+ ExceptionHelper.log_backtrace e
42
44
  end
43
45
  end
44
46
  end
@@ -39,10 +39,10 @@ module Awestruct
39
39
  day = sprintf( "%02d", date.day )
40
40
  page.date = date
41
41
  slug = $1
42
- if ( page.relative_source_path =~ /^#{@path_prefix}\/(20[01][0-9])-([01][0-9])-([0123][0-9])-([^.]+)\..*$/ )
42
+ if ( page.relative_source_path =~ /^#{@path_prefix}\/(2[0-9]{3})-([01][0-9])-([0123][0-9])-([^.]+)\..*$/ )
43
43
  slug = $4
44
44
  end
45
- elsif ( page.relative_source_path =~ /^#{@path_prefix}\/(20[01][0-9])-([01][0-9])-([0123][0-9])-([^.]+)\..*$/ )
45
+ elsif ( page.relative_source_path =~ /^#{@path_prefix}\/(2[0-9]{3})-([01][0-9])-([0123][0-9])-([^.]+)\..*$/ )
46
46
  year = $1
47
47
  month = $2
48
48
  day = $3
@@ -11,7 +11,7 @@ module Awestruct
11
11
 
12
12
  def initialize
13
13
  @excluded_files = [ '/.htaccess', '/favicon.ico' ,'/robots.txt', ].to_set
14
- @excluded_extensions = ['.atom', '.scss', '.css', '.png', '.jpg', '.gif', '.js' ].to_set
14
+ @excluded_extensions = ['.atom', '.scss', '.css', '.less', '.png', '.jpg', '.gif', '.js', '.ico', '.svg', '' ].to_set
15
15
  end
16
16
 
17
17
  def execute( site )
@@ -66,7 +66,7 @@ module Awestruct
66
66
  def set_sitemap_data( page )
67
67
  site = page.site
68
68
  munge_date( page )
69
- page.priority ||= (site.priority or 0.1)
69
+ page.priority ||= (site.priority or 0.5)
70
70
  page.change_frequency ||= (site.change_frequency or 'never')
71
71
  page
72
72
  end
@@ -40,10 +40,12 @@ module Awestruct
40
40
  end
41
41
 
42
42
  def output_path
43
+ return @output_path unless @output_path.nil?
44
+
43
45
  ( p = relative_source_path ) if relative_source_path
44
46
  ( of = output_filename ) if output_filename
45
- return File.join( File.dirname( p ), output_filename ) if ( p && of )
46
- nil
47
+ @output_path = File.join( File.dirname( p ), output_filename ) if ( p && of )
48
+ @output_path || nil
47
49
  end
48
50
 
49
51
  def output_extension
@@ -14,7 +14,7 @@ module Awestruct
14
14
  def match(path)
15
15
  matcher = ::Tilt[File.basename(path)]
16
16
  if matcher.nil?
17
- $LOG.debug(%(Copying #{path})) if Awestruct::Engine.instance.config.verbose
17
+ $LOG.debug(%(Copying #{path})) if Awestruct::Engine.instance.config.verbose && Awestruct::Engine.instance.config.debug
18
18
  return false
19
19
  end
20
20
 
@@ -142,10 +142,9 @@ module Awestruct
142
142
  if error_page[:__is_layout] == true || context[:__is_layout] == true
143
143
  ExceptionHelper.log_message "An error during rendering layout file #{context[:__effective_page].relative_source_path} for #{error_page.relative_source_path} occurred."
144
144
  ExceptionHelper.log_building_error e, error_page.source_path
145
-
146
145
  elsif error_page.is_partial?
147
- ExceptionHelper.log_message "An error during rendering partial file #{error_page.relative_source_path} for #{error_page[:real_page].relative_source_path} occurred."
148
- ExceptionHelper.log_building_error e, error_page[:real_page].source_path
146
+ ExceptionHelper.log_message "An error during rendering partial file #{error_page.source_path} for #{error_page[:output_page].relative_source_path} occurred."
147
+ ExceptionHelper.log_building_error e, error_page[:output_page].source_path
149
148
  else
150
149
  ExceptionHelper.log_message "An error during rendering #{error_page.relative_source_path} occurred."
151
150
  ExceptionHelper.log_building_error e, error_page.source_path
@@ -14,6 +14,7 @@ module Awestruct
14
14
  else
15
15
  @path = Pathname.new( path.to_s )
16
16
  end
17
+ @relative_source_path = nil
17
18
  end
18
19
 
19
20
  def output_filename
@@ -21,11 +22,13 @@ module Awestruct
21
22
  end
22
23
 
23
24
  def relative_source_path
25
+ return @relative_source_path unless @relative_source_path.nil?
24
26
  begin
25
- "/#{Pathname.new path.relative_path_from( site.dir )}"
27
+ @relative_source_path = "/#{Pathname.new path.relative_path_from( site.dir )}"
26
28
  rescue Exception=>e
27
29
  nil
28
30
  end
31
+ @relative_source_path
29
32
  end
30
33
 
31
34
  def stale?
@@ -21,11 +21,11 @@ module Awestruct
21
21
  end
22
22
 
23
23
  def simple_name
24
- File.basename( relative_source_path, '.js' )
24
+ File.basename( relative_source_path || path, '.js' )
25
25
  end
26
26
 
27
27
  def output_filename
28
- File.basename( relative_source_path )
28
+ File.basename( relative_source_path || path)
29
29
  end
30
30
 
31
31
  def output_extension
@@ -21,7 +21,7 @@ module Awestruct
21
21
  end
22
22
 
23
23
  def simple_name
24
- File.basename( relative_source_path, '.redirect' )
24
+ File.basename( relative_source_path || path, '.redirect' )
25
25
  end
26
26
 
27
27
  def output_filename
@@ -19,7 +19,10 @@ module Awestruct
19
19
  end
20
20
 
21
21
  def evaluate(scope, locals, &block)
22
- @output ||= ::Asciidoctor.render(data, options, &block)
22
+ if scope.class == ::Awestruct::Context
23
+ scope[:document] = ::Asciidoctor.load(data, options) unless scope.key? :document
24
+ @output ||= scope[:document].convert
25
+ end
23
26
  end
24
27
 
25
28
  def allows_script?
@@ -24,29 +24,29 @@ module Awestruct
24
24
  pages = []
25
25
  root_dir.find do |path|
26
26
  if ( path == root_dir )
27
- $LOG.debug "skip #{path}" if site.config.verbose
27
+ $LOG.debug "skip #{path}" if site.config.verbose && site.config.debug
28
28
  next
29
29
  end
30
30
  basename = File.basename( path )
31
31
  if ( basename == '.htaccess' )
32
32
  #special case
33
33
  elsif ( basename =~ /^[_.]/ )
34
- $LOG.debug "skip #{path} and prune" if (site.config.verbose && $LOG.debug?)
34
+ $LOG.debug "skip #{path} and prune" if (site.config.verbose && site.config.debug)
35
35
  Find.prune
36
36
  next
37
37
  end
38
38
  relative_path = path.relative_path_from( root_dir ).to_s
39
39
  if ignore?(relative_path)
40
- $LOG.debug "skip ignored #{path} and prune" if site.config.verbose
40
+ $LOG.debug "skip ignored #{path} and prune" if site.config.verbose && site.config.debug
41
41
  Find.prune
42
42
  next
43
43
  end
44
44
  unless path.directory?
45
- $LOG.debug "loading #{relative_path}" if site.config.verbose
45
+ $LOG.debug "loading #{relative_path}" if site.config.verbose && site.config.debug
46
46
  page = load_page( path, prepare )
47
47
  if ( page )
48
48
  next if (page.draft && !(@site.show_drafts || @site.profile == 'development'))
49
- $LOG.debug "loaded! #{path} and added to site" if $LOG.debug?
49
+ $LOG.debug "loaded! #{path} and added to site" if site.config.debug
50
50
  #inherit_front_matter( page )
51
51
  site.send( @target ) << page
52
52
  pages << page
@@ -53,7 +53,7 @@ module Awestruct
53
53
 
54
54
  def execute_extensions(site, on_reload)
55
55
  @before_all_extensions.each do |e|
56
- $LOG.verbose "Executing before all extension #{e.class}"
56
+ $LOG.verbose "Executing before all extension #{e.class}" if site.config.verbose
57
57
 
58
58
  if on_reload && e.respond_to?
59
59
  start_time = DateTime.now
@@ -71,7 +71,7 @@ module Awestruct
71
71
  end
72
72
 
73
73
  @extensions.each do |e|
74
- $LOG.verbose "Executing extension #{e.class}"
74
+ $LOG.verbose "Executing extension #{e.class}" if site.config.verbose
75
75
  if on_reload && e.respond_to?(:on_reload)
76
76
  start_time = DateTime.now
77
77
  e.on_reload(site)
@@ -83,7 +83,7 @@ module Awestruct
83
83
  end
84
84
 
85
85
  @after_all_extensions.each do |e|
86
- $LOG.verbose "Executing after all extension #{e.class}"
86
+ $LOG.verbose "Executing after all extension #{e.class}" if site.config.verbose
87
87
  if on_reload && e.respond_to?(:on_reload)
88
88
  start_time = DateTime.now
89
89
  e.on_reload(site)
@@ -102,7 +102,7 @@ module Awestruct
102
102
 
103
103
  def apply_transformers(site, page, rendered)
104
104
  @transformers.each do |t|
105
- $LOG.debug "Applying transformer #{t.class} for page #{page}" if site.config.verbose
105
+ $LOG.debug "Applying transformer #{t.class} for page #{page}" if site.config.verbose && site.config.debug
106
106
  start_time = DateTime.now
107
107
  rendered = t.transform( site, page, rendered )
108
108
  $LOG.trace "Total time in #{t.class}.transform #{DateTime.now.to_time - start_time.to_time} seconds" if site.config.verbose
@@ -112,7 +112,7 @@ module Awestruct
112
112
 
113
113
  def execute_after_generation(site)
114
114
  @after_generation_extensions.each do |e|
115
- $LOG.verbose "Executing after generation #{e.class}"
115
+ $LOG.verbose "Executing after generation #{e.class}" if site.config.verbose
116
116
  start_time = DateTime.now
117
117
  if e.respond_to? :execute
118
118
  e.execute(site)
@@ -1,3 +1,3 @@
1
1
  module Awestruct
2
- VERSION = '0.5.7'
2
+ VERSION = '0.6.0.RC1'
3
3
  end
@@ -117,7 +117,7 @@ describe Awestruct::Engine do
117
117
 
118
118
  expect( Compass.configuration.line_comments ).to eq false
119
119
  expect( Compass.configuration.output_style ).to eq :compressed
120
- expect( Compass.configuration.http_path ).to eq "http://localhost:4242"
120
+ expect( Compass.configuration.asset_host.call("ignored_by_lambda")).to eq "http://localhost:4242"
121
121
  expect( Compass.configuration.relative_assets ).to eq false
122
122
  end
123
123
 
@@ -217,6 +217,34 @@ describe Awestruct::Engine do
217
217
  end
218
218
  end
219
219
 
220
+ it "should exit unsuccessfully if page syntax is invalid, using threads" do
221
+ output_dir = Dir.mktmpdir 'engine-generate-with-errors'
222
+
223
+ begin
224
+ Logging.init :trace, :debug, :verbose, :info, :warn, :error, :fatal
225
+ $LOG = Logging.logger.new 'awestruct'
226
+ $LOG.add_appenders(
227
+ Logging.appenders.string_io({level: :info, layout: Logging.layouts.pattern(pattern: "%m\n"),
228
+ color_scheme: :default})
229
+ )
230
+ $LOG.level = :debug
231
+
232
+ opts = Awestruct::CLI::Options.new
233
+ opts.source_dir = test_data_dir 'engine-generate-syntax-errors'
234
+ opts.output_dir = output_dir
235
+ config = Awestruct::Config.new( opts )
236
+ engine = Awestruct::Engine.new(config)
237
+ begin
238
+ engine.run('development', 'http://localhost:4242', 'http://localhost:4242')
239
+ fail('Expected generation error')
240
+ rescue SystemExit => e
241
+ e.status.should eql Awestruct::ExceptionHelper::EXITCODES[:generation_error]
242
+ end
243
+ ensure
244
+ FileUtils.remove_entry_secure output_dir, true
245
+ end
246
+ end
247
+
220
248
  it "should exit unsuccessfully if generate page output fails, using processes" do
221
249
  output_dir = Dir.mktmpdir 'engine-generate-with-errors'
222
250
 
@@ -8,8 +8,8 @@ verify = lambda { |output|
8
8
  verify_atom = lambda { |output|
9
9
  output.should == '<?xml version="1.0" encoding="utf-8" ?>
10
10
  <feed xmlns="http://www.w3.org/2005/Atom">
11
- <id>http://example.com</id>
12
- <title>A News Feed</title>
11
+ <id>http://example.com</id>
12
+ <title>A News Feed</title>
13
13
  </feed>
14
14
  '
15
15
  }
@@ -37,8 +37,7 @@ describe Awestruct::Handlers::PageDelegatingHandler do
37
37
 
38
38
  page = Awestruct::Page.new( @site, Awestruct::Handlers::PageDelegatingHandler.new( @site, inner_page) )
39
39
  c = page.content
40
- c.should =~ %r(<h1>This is a haml layout</h1>)
41
- c.should =~ %r(<h2>This is the inner page</h2>)
40
+ c.should =~ %r(<h1>This is a haml layout</h1>\n<h2>This is the inner page\n</h2>\n)
42
41
  c.should_not =~ %r(<b>)
43
42
  end
44
43
 
@@ -53,14 +52,11 @@ describe Awestruct::Handlers::PageDelegatingHandler do
53
52
  page.output_path = '/outer-page.html'
54
53
 
55
54
  c = page.content
56
- c.should =~ %r(<h1>This is a haml layout</h1>)
57
- c.should =~ %r(<h2>This is the inner page</h2>)
55
+ c.should =~ %r(<h1>This is a haml layout</h1>\n<h2>This is the inner page\n</h2>\n)
58
56
  c.should_not =~ %r(<b>)
59
57
 
60
- c.should_not =~ %r(<b>)
61
58
  c = page.rendered_content
62
- c.should =~ %r(<h1>This is a haml layout</h1>)
63
- c.should =~ %r(<h2>This is the inner page</h2>)
59
+ c.should =~ %r(<h1>This is a haml layout</h1>\n<h2>This is the inner page\n</h2>\n)
64
60
  c.should =~ %r(<b>)
65
61
  end
66
62
 
@@ -70,13 +66,11 @@ describe Awestruct::Handlers::PageDelegatingHandler do
70
66
  page.layout= 'outer-layout'
71
67
 
72
68
  c = page.content
73
- c.should =~ %r(<h1>This is a haml layout</h1>)
74
- c.should =~ %r(<h2>This is the inner page</h2>)
69
+ c.should =~ %r(<h1>This is a haml layout</h1>\n<h2>This is the inner page\n</h2>\n)
75
70
  c.should_not =~ %r(<b>)
76
71
 
77
72
  c = page.rendered_content
78
- c.should =~ %r(<h1>This is a haml layout</h1>)
79
- c.should =~ %r(<h2>This is the inner page</h2>)
73
+ c.should =~ %r(<h1>This is a haml layout</h1>\n<h2>This is the inner page\n</h2>\n)
80
74
  c.should =~ %r(<b>)
81
75
  end
82
76
 
@@ -105,6 +105,7 @@ describe Awestruct::Handlers::TiltHandler do
105
105
  specify 'should not throw exceptions; instead have the error in the rendered output' do
106
106
  # setup
107
107
  @site.config.verbose = true
108
+ @site.config.debug = true
108
109
  Awestruct::Engine.new(@site.config)
109
110
  Tilt::register Tilt::BogusTemplate, '.bogus',
110
111
  log = StringIO.new
@@ -0,0 +1,26 @@
1
+ profiles:
2
+ development:
3
+ show_drafts: false
4
+ cook: microwave
5
+ base_url: http://localhost:4242
6
+ production:
7
+ show_drafts: true
8
+ cook: oven
9
+ asciidoctor:
10
+ :eruby: erb
11
+ :attributes:
12
+ imagesdir: /img
13
+ staging:
14
+ compass_line_comments: off
15
+ compass_output_style: :compact
16
+ base_url: http://stage.example.com
17
+
18
+ title: Awestruction!
19
+ intl_name: Internéšnl
20
+
21
+ asciidoctor:
22
+ :safe: 0
23
+ :eruby: erubis
24
+ :attributes:
25
+ imagesdir: /assets/images
26
+ idprefix: ''
@@ -0,0 +1,8 @@
1
+ require 'awestruct/extensions/pipeline'
2
+
3
+ Awestruct::Extensions::Pipeline.new do
4
+ # extension Awestruct::Extensions::Posts.new '/news'
5
+ # extension Awestruct::Extensions::Indexifier.new
6
+ # Indexifier *must* come before Atomizer
7
+ # extension Awestruct::Extensions::Atomizer.new :posts, '/feed.atom'
8
+ end
@@ -0,0 +1,6 @@
1
+ doctype html
2
+ html
3
+ head
4
+ title Hello
5
+ body
6
+ = content
@@ -0,0 +1,7 @@
1
+ ---
2
+ layout: base
3
+ ---
4
+ p#intentional-syntax-error
5
+ - if 2 > 4:
6
+ = 'hi'
7
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awestruct
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.7
4
+ version: 0.6.0.RC1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bob McWhirter
@@ -13,28 +13,28 @@ authors:
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2016-02-09 00:00:00.000000000 Z
16
+ date: 2020-01-21 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: haml
20
20
  requirement: !ruby/object:Gem::Requirement
21
21
  requirements:
22
- - - "~>"
23
- - !ruby/object:Gem::Version
24
- version: '4.0'
25
22
  - - ">="
26
23
  - !ruby/object:Gem::Version
27
24
  version: 4.0.5
25
+ - - "<"
26
+ - !ruby/object:Gem::Version
27
+ version: '6.0'
28
28
  type: :runtime
29
29
  prerelease: false
30
30
  version_requirements: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - "~>"
33
- - !ruby/object:Gem::Version
34
- version: '4.0'
35
32
  - - ">="
36
33
  - !ruby/object:Gem::Version
37
34
  version: 4.0.5
35
+ - - "<"
36
+ - !ruby/object:Gem::Version
37
+ version: '6.0'
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: asciidoctor
40
40
  requirement: !ruby/object:Gem::Requirement
@@ -81,74 +81,56 @@ dependencies:
81
81
  requirements:
82
82
  - - "~>"
83
83
  - !ruby/object:Gem::Version
84
- version: '2.1'
84
+ version: '3.0'
85
85
  type: :runtime
86
86
  prerelease: false
87
87
  version_requirements: !ruby/object:Gem::Requirement
88
88
  requirements:
89
89
  - - "~>"
90
90
  - !ruby/object:Gem::Version
91
- version: '2.1'
91
+ version: '3.0'
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: rest-client
94
94
  requirement: !ruby/object:Gem::Requirement
95
95
  requirements:
96
96
  - - "~>"
97
97
  - !ruby/object:Gem::Version
98
- version: '1.7'
99
- - - ">="
100
- - !ruby/object:Gem::Version
101
- version: 1.7.2
98
+ version: '2.0'
102
99
  type: :runtime
103
100
  prerelease: false
104
101
  version_requirements: !ruby/object:Gem::Requirement
105
102
  requirements:
106
103
  - - "~>"
107
104
  - !ruby/object:Gem::Version
108
- version: '1.7'
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- version: 1.7.2
105
+ version: '2.0'
112
106
  - !ruby/object:Gem::Dependency
113
107
  name: listen
114
108
  requirement: !ruby/object:Gem::Requirement
115
109
  requirements:
116
- - - ">="
117
- - !ruby/object:Gem::Version
118
- version: 2.7.1
119
- - - "<="
110
+ - - "~>"
120
111
  - !ruby/object:Gem::Version
121
- version: '4.0'
112
+ version: '3.1'
122
113
  type: :runtime
123
114
  prerelease: false
124
115
  version_requirements: !ruby/object:Gem::Requirement
125
116
  requirements:
126
- - - ">="
127
- - !ruby/object:Gem::Version
128
- version: 2.7.1
129
- - - "<="
117
+ - - "~>"
130
118
  - !ruby/object:Gem::Version
131
- version: '4.0'
119
+ version: '3.1'
132
120
  - !ruby/object:Gem::Dependency
133
121
  name: rack
134
122
  requirement: !ruby/object:Gem::Requirement
135
123
  requirements:
136
124
  - - "~>"
137
125
  - !ruby/object:Gem::Version
138
- version: '1.5'
139
- - - ">="
140
- - !ruby/object:Gem::Version
141
- version: 1.5.2
126
+ version: '2.0'
142
127
  type: :runtime
143
128
  prerelease: false
144
129
  version_requirements: !ruby/object:Gem::Requirement
145
130
  requirements:
146
131
  - - "~>"
147
132
  - !ruby/object:Gem::Version
148
- version: '1.5'
149
- - - ">="
150
- - !ruby/object:Gem::Version
151
- version: 1.5.2
133
+ version: '2.0'
152
134
  - !ruby/object:Gem::Dependency
153
135
  name: git
154
136
  requirement: !ruby/object:Gem::Requirement
@@ -175,7 +157,7 @@ dependencies:
175
157
  requirements:
176
158
  - - "~>"
177
159
  - !ruby/object:Gem::Version
178
- version: '2.13'
160
+ version: '2.0'
179
161
  - - ">="
180
162
  - !ruby/object:Gem::Version
181
163
  version: 2.13.0
@@ -185,7 +167,7 @@ dependencies:
185
167
  requirements:
186
168
  - - "~>"
187
169
  - !ruby/object:Gem::Version
188
- version: '2.13'
170
+ version: '2.0'
189
171
  - - ">="
190
172
  - !ruby/object:Gem::Version
191
173
  version: 2.13.0
@@ -195,7 +177,7 @@ dependencies:
195
177
  requirements:
196
178
  - - "~>"
197
179
  - !ruby/object:Gem::Version
198
- version: '2.1'
180
+ version: '2.0'
199
181
  - - ">="
200
182
  - !ruby/object:Gem::Version
201
183
  version: 2.1.2
@@ -205,7 +187,7 @@ dependencies:
205
187
  requirements:
206
188
  - - "~>"
207
189
  - !ruby/object:Gem::Version
208
- version: '2.1'
190
+ version: '2.0'
209
191
  - - ">="
210
192
  - !ruby/object:Gem::Version
211
193
  version: 2.1.2
@@ -215,35 +197,35 @@ dependencies:
215
197
  requirements:
216
198
  - - "~>"
217
199
  - !ruby/object:Gem::Version
218
- version: '2.0'
200
+ version: '2.2'
219
201
  type: :runtime
220
202
  prerelease: false
221
203
  version_requirements: !ruby/object:Gem::Requirement
222
204
  requirements:
223
205
  - - "~>"
224
206
  - !ruby/object:Gem::Version
225
- version: '2.0'
207
+ version: '2.2'
226
208
  - !ruby/object:Gem::Dependency
227
209
  name: oga
228
210
  requirement: !ruby/object:Gem::Requirement
229
211
  requirements:
230
212
  - - "~>"
231
213
  - !ruby/object:Gem::Version
232
- version: '1.3'
214
+ version: '2.0'
233
215
  type: :runtime
234
216
  prerelease: false
235
217
  version_requirements: !ruby/object:Gem::Requirement
236
218
  requirements:
237
219
  - - "~>"
238
220
  - !ruby/object:Gem::Version
239
- version: '1.3'
221
+ version: '2.0'
240
222
  - !ruby/object:Gem::Dependency
241
223
  name: parallel
242
224
  requirement: !ruby/object:Gem::Requirement
243
225
  requirements:
244
226
  - - "~>"
245
227
  - !ruby/object:Gem::Version
246
- version: '1.1'
228
+ version: '1.0'
247
229
  - - ">"
248
230
  - !ruby/object:Gem::Version
249
231
  version: 1.1.1
@@ -253,7 +235,7 @@ dependencies:
253
235
  requirements:
254
236
  - - "~>"
255
237
  - !ruby/object:Gem::Version
256
- version: '1.1'
238
+ version: '1.0'
257
239
  - - ">"
258
240
  - !ruby/object:Gem::Version
259
241
  version: 1.1.1
@@ -261,9 +243,6 @@ dependencies:
261
243
  name: nokogiri
262
244
  requirement: !ruby/object:Gem::Requirement
263
245
  requirements:
264
- - - "~>"
265
- - !ruby/object:Gem::Version
266
- version: 1.5.0
267
246
  - - ">="
268
247
  - !ruby/object:Gem::Version
269
248
  version: 1.5.10
@@ -271,9 +250,6 @@ dependencies:
271
250
  prerelease: false
272
251
  version_requirements: !ruby/object:Gem::Requirement
273
252
  requirements:
274
- - - "~>"
275
- - !ruby/object:Gem::Version
276
- version: 1.5.0
277
253
  - - ">="
278
254
  - !ruby/object:Gem::Version
279
255
  version: 1.5.10
@@ -301,9 +277,6 @@ dependencies:
301
277
  name: bootstrap-sass
302
278
  requirement: !ruby/object:Gem::Requirement
303
279
  requirements:
304
- - - "~>"
305
- - !ruby/object:Gem::Version
306
- version: '3'
307
280
  - - ">="
308
281
  - !ruby/object:Gem::Version
309
282
  version: 3.2.0.2
@@ -311,9 +284,6 @@ dependencies:
311
284
  prerelease: false
312
285
  version_requirements: !ruby/object:Gem::Requirement
313
286
  requirements:
314
- - - "~>"
315
- - !ruby/object:Gem::Version
316
- version: '3'
317
287
  - - ">="
318
288
  - !ruby/object:Gem::Version
319
289
  version: 3.2.0.2
@@ -321,9 +291,6 @@ dependencies:
321
291
  name: zurb-foundation
322
292
  requirement: !ruby/object:Gem::Requirement
323
293
  requirements:
324
- - - "~>"
325
- - !ruby/object:Gem::Version
326
- version: 4.3.2
327
294
  - - ">="
328
295
  - !ruby/object:Gem::Version
329
296
  version: 4.3.2
@@ -331,9 +298,6 @@ dependencies:
331
298
  prerelease: false
332
299
  version_requirements: !ruby/object:Gem::Requirement
333
300
  requirements:
334
- - - "~>"
335
- - !ruby/object:Gem::Version
336
- version: 4.3.2
337
301
  - - ">="
338
302
  - !ruby/object:Gem::Version
339
303
  version: 4.3.2
@@ -341,28 +305,28 @@ dependencies:
341
305
  name: rspec
342
306
  requirement: !ruby/object:Gem::Requirement
343
307
  requirements:
344
- - - "~>"
308
+ - - ">="
345
309
  - !ruby/object:Gem::Version
346
310
  version: '3.0'
347
311
  type: :development
348
312
  prerelease: false
349
313
  version_requirements: !ruby/object:Gem::Requirement
350
314
  requirements:
351
- - - "~>"
315
+ - - ">="
352
316
  - !ruby/object:Gem::Version
353
317
  version: '3.0'
354
318
  - !ruby/object:Gem::Dependency
355
319
  name: guard-rspec
356
320
  requirement: !ruby/object:Gem::Requirement
357
321
  requirements:
358
- - - "~>"
322
+ - - ">="
359
323
  - !ruby/object:Gem::Version
360
324
  version: '4.0'
361
325
  type: :development
362
326
  prerelease: false
363
327
  version_requirements: !ruby/object:Gem::Requirement
364
328
  requirements:
365
- - - "~>"
329
+ - - ">="
366
330
  - !ruby/object:Gem::Version
367
331
  version: '4.0'
368
332
  description: Awestruct is a static site baking and publishing tool. It supports an
@@ -399,7 +363,6 @@ files:
399
363
  - lib/awestruct/cli/manifest.rb
400
364
  - lib/awestruct/cli/options.rb
401
365
  - lib/awestruct/cli/server.rb
402
- - lib/awestruct/compass/default_configuration.rb
403
366
  - lib/awestruct/compatibility.rb
404
367
  - lib/awestruct/config.rb
405
368
  - lib/awestruct/config/default-site.yml
@@ -548,6 +511,10 @@ files:
548
511
  - spec/support/test-data/engine-generate-no-errors/_ext/pipeline.rb
549
512
  - spec/support/test-data/engine-generate-no-errors/_layouts/base.html.slim
550
513
  - spec/support/test-data/engine-generate-no-errors/index.html.slim
514
+ - spec/support/test-data/engine-generate-syntax-errors/_config/site.yml
515
+ - spec/support/test-data/engine-generate-syntax-errors/_ext/pipeline.rb
516
+ - spec/support/test-data/engine-generate-syntax-errors/_layouts/base.html.slim
517
+ - spec/support/test-data/engine-generate-syntax-errors/index.html.slim
551
518
  - spec/support/test-data/engine-generate-with-errors/_config/site.yml
552
519
  - spec/support/test-data/engine-generate-with-errors/_ext/pipeline.rb
553
520
  - spec/support/test-data/engine-generate-with-errors/_layouts/base.html.slim
@@ -649,19 +616,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
649
616
  requirements:
650
617
  - - ">="
651
618
  - !ruby/object:Gem::Version
652
- version: '2.0'
619
+ version: 2.4.0
653
620
  required_rubygems_version: !ruby/object:Gem::Requirement
654
621
  requirements:
655
- - - ">="
622
+ - - ">"
656
623
  - !ruby/object:Gem::Version
657
- version: '0'
624
+ version: 1.3.1
658
625
  requirements:
659
626
  - |
660
627
  Any markup languages you are using and its dependencies.
661
628
  Haml and Markdown filters are touchy things. Redcarpet or Rdiscount work well if you're running on MRI. JRuby should be using haml 4.0.0+ with Kramdown.
662
629
  Compass and sass are no longer hard dependencies. You'll need too add them on your own should you want them. We also should be able to work with sassc.
663
630
  rubyforge_project: awestruct
664
- rubygems_version: 2.5.1
631
+ rubygems_version: 2.6.1
665
632
  signing_key:
666
633
  specification_version: 4
667
634
  summary: Static site baking and publishing tool