awestruct 0.6.1 → 0.6.2
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.
- checksums.yaml +5 -5
- data/Gemfile +3 -4
- data/awestruct.gemspec +1 -4
- data/lib/awestruct/cli/invoker.rb +1 -1
- data/lib/awestruct/cli/manifest.rb +1 -1
- data/lib/awestruct/config.rb +1 -1
- data/lib/awestruct/engine.rb +5 -4
- data/lib/awestruct/extensions/partial.rb +1 -1
- data/lib/awestruct/handlers/asciidoctor_handler.rb +2 -1
- data/lib/awestruct/util/yaml_load.rb +8 -0
- data/lib/awestruct/version.rb +1 -1
- metadata +7 -9
- data/spec/awestruct/handlers/less_handler_spec.rb +0 -33
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: cbfde0af291abd73352c5250d0d43fb1ba1a0e90ddd97bd697ed5ed24072b435
|
4
|
+
data.tar.gz: b4f5566a1d739e41614ebe9f13836deb69d384f921f9c644f080865fcf472f78
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: db3fa768353f108cf524fe7db7527ff997e5ce545228cd2c12ec859f07be1a98f5c8c5e8d6f675b530b3c24a358b214e9e924e00a6a14fc1fdf3155228f210a1
|
7
|
+
data.tar.gz: c06a668a66477b7826546cf61a8963bc8ddb65ec1601555e38c12c61247eea53f7fd1fd65806e4b36f8412640037b8030223a005d5fe676ce20ec781110586b3
|
data/Gemfile
CHANGED
@@ -15,12 +15,10 @@ group :test do
|
|
15
15
|
gem 'coffee-script', '~> 2.2.0'
|
16
16
|
gem 'asciidoctor', '1.5.2'
|
17
17
|
gem 'compass', '>= 1.0.1'
|
18
|
-
gem 'sassc', '~>
|
18
|
+
gem 'sassc', '~> 2.0'
|
19
19
|
gem 'slim', '~> 3.0'
|
20
|
-
gem 'kramdown', '~>
|
21
|
-
gem 'therubyracer', '~> 0.12.1', :platforms => :ruby
|
20
|
+
gem 'kramdown', '~> 2.4.0'
|
22
21
|
gem 'therubyrhino', '~> 2.0.3', :platforms => :jruby
|
23
|
-
gem 'less', '~> 2.5.0'
|
24
22
|
gem 'org-ruby', '~> 0.9.3'
|
25
23
|
gem 'RedCloth', '~> 4.2.9'
|
26
24
|
gem 'mustache', '~> 0.99.5'
|
@@ -28,6 +26,7 @@ group :test do
|
|
28
26
|
gem 'htmlcompressor', '~> 0.0.7'
|
29
27
|
gem 'haml-contrib', '~> 1.0.0'
|
30
28
|
gem 'sass'
|
29
|
+
gem 'ffi', '~> 1.15.5'
|
31
30
|
gem 'bootstrap-sass'
|
32
31
|
gem 'zurb-foundation'
|
33
32
|
gem 'rspec'
|
data/awestruct.gemspec
CHANGED
@@ -4,7 +4,7 @@ require 'awestruct/version'
|
|
4
4
|
spec = Gem::Specification.new do |s|
|
5
5
|
s.name = 'awestruct'
|
6
6
|
s.version = Awestruct::VERSION
|
7
|
-
s.date = '
|
7
|
+
s.date = '2023-01-21'
|
8
8
|
|
9
9
|
s.authors = ['Bob McWhirter', 'Jason Porter', 'Lance Ball', 'Dan Allen', 'Torsten Curdt', 'other contributors']
|
10
10
|
s.email = ['bob@mcwhirter.org', 'lightguard.jp@gmail.com', 'lball@redhat.com', 'dan.j.allen@gmail.com', 'tcurdt@vafer.org']
|
@@ -12,14 +12,11 @@ spec = Gem::Specification.new do |s|
|
|
12
12
|
s.summary = 'Static site baking and publishing tool'
|
13
13
|
s.description = 'Awestruct is a static site baking and publishing tool. It supports an extensive list of both templating and markup languages via Tilt (Haml, Slim, AsciiDoc, Markdown, Sass via Compass, etc), provides mobile-first layout and styling via Bootstrap or Foundation, offers a variety of deployment options (rsync, git, S3), handles site optimizations (minification, compression, cache busting), includes built-in extensions such as blog post management and is highly extensible.'
|
14
14
|
|
15
|
-
s.rubyforge_project = s.name
|
16
|
-
|
17
15
|
s.license = 'MIT'
|
18
16
|
|
19
17
|
s.platform = Gem::Platform::RUBY
|
20
18
|
s.required_ruby_version = '>= 2.4.0'
|
21
19
|
|
22
|
-
s.has_rdoc = true
|
23
20
|
s.rdoc_options = ['--charset=UTF-8']
|
24
21
|
s.extra_rdoc_files = 'README.md'
|
25
22
|
|
@@ -97,7 +97,7 @@ module Awestruct
|
|
97
97
|
abort( "No config file at #{site_yaml_file}" )
|
98
98
|
end
|
99
99
|
|
100
|
-
site_yaml = YAML.load( ERB.new(File.read( site_yaml_file ),
|
100
|
+
site_yaml = YAML.load( ERB.new(File.read( site_yaml_file ), trim_mode: '<>').result )
|
101
101
|
|
102
102
|
if ( !site_yaml )
|
103
103
|
abort( "Failed to parse #{site_yaml_file}" )
|
@@ -232,7 +232,7 @@ module Awestruct
|
|
232
232
|
def perform(dir)
|
233
233
|
|
234
234
|
begin
|
235
|
-
rendered = ERB.new(File.read(@input_path),
|
235
|
+
rendered = ERB.new(File.read(@input_path), trim_mode: '<>').result(
|
236
236
|
OpenStruct.new(@state).instance_eval { binding })
|
237
237
|
rescue => e
|
238
238
|
$LOG.debug "::DEBUG:: #{e.message} state - #{@state}"
|
data/lib/awestruct/config.rb
CHANGED
data/lib/awestruct/engine.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'awestruct/util/inflector'
|
2
2
|
require 'awestruct/util/exception_helper'
|
3
3
|
require 'awestruct/util/default_inflections'
|
4
|
+
require 'awestruct/util/yaml_load'
|
4
5
|
|
5
6
|
require 'awestruct/config'
|
6
7
|
require 'awestruct/site'
|
@@ -181,7 +182,7 @@ module Awestruct
|
|
181
182
|
def load_site_yaml(yaml_path, profile = nil)
|
182
183
|
if File.exist?(yaml_path)
|
183
184
|
begin
|
184
|
-
data =
|
185
|
+
data = Awestruct.yaml_load( ERB.new(File.read( yaml_path, :encoding => 'bom|utf-8' ), trim_mode: '<>').result)
|
185
186
|
if profile
|
186
187
|
# JP: Interpolation now turned off by default, turn it per page if needed
|
187
188
|
site.interpolate = false
|
@@ -211,7 +212,7 @@ module Awestruct
|
|
211
212
|
|
212
213
|
def load_yaml(yaml_path)
|
213
214
|
begin
|
214
|
-
data =
|
215
|
+
data = Awestruct.yaml_load( ERB.new(File.read( yaml_path ), trim_mode: '<>').result )
|
215
216
|
rescue Exception => e
|
216
217
|
ExceptionHelper.log_building_error e, yaml_path
|
217
218
|
ExceptionHelper.mark_failed
|
@@ -283,7 +284,7 @@ module Awestruct
|
|
283
284
|
def load_pipeline
|
284
285
|
ext_dir = File.join( site.config.extension_dir )
|
285
286
|
pipeline_file = File.join( ext_dir, 'pipeline.rb' )
|
286
|
-
if File.
|
287
|
+
if File.exist?(pipeline_file)
|
287
288
|
p = eval(File.read( pipeline_file ), nil, pipeline_file, 1)
|
288
289
|
p.before_all_extensions.each do |e|
|
289
290
|
pipeline.add_before_extension( e )
|
@@ -379,7 +380,7 @@ module Awestruct
|
|
379
380
|
end
|
380
381
|
|
381
382
|
compass_config_file = File.join(site.config.config_dir, 'compass.rb')
|
382
|
-
if File.
|
383
|
+
if File.exist? compass_config_file
|
383
384
|
::Compass.add_configuration ::Compass::Configuration::FileData.new_from_file(compass_config_file)
|
384
385
|
end
|
385
386
|
::Compass.configuration # return for use elsewhere
|
@@ -5,7 +5,7 @@ module Awestruct
|
|
5
5
|
def partial(path, params = {})
|
6
6
|
filename = File.join( ::Awestruct::Engine.instance.config.dir, '_partials', path )
|
7
7
|
|
8
|
-
if !File.
|
8
|
+
if !File.exist?( filename )
|
9
9
|
$LOG.error "Could not find #{filename}" if $LOG.error?
|
10
10
|
return nil
|
11
11
|
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'awestruct/handler_chain'
|
2
|
+
require 'awestruct/util/yaml_load'
|
2
3
|
require 'awestruct/handlers/base_tilt_handler'
|
3
4
|
require 'awestruct/handlers/file_handler'
|
4
5
|
require 'awestruct/handlers/layout_handler'
|
@@ -136,7 +137,7 @@ module Awestruct
|
|
136
137
|
template = ::Tilt::new(delegate.path.to_s, delegate.content_line_offset + 1, options)
|
137
138
|
headers = template.parse_headers(content, /^(?:page|awestruct)\-(?=.)/).inject({'interpolate' => false}) do |hash, (k,v)|
|
138
139
|
unless v.nil?
|
139
|
-
hash[k] = v.empty? ? v :
|
140
|
+
hash[k] = v.empty? ? v : Awestruct.yaml_load(v)
|
140
141
|
if hash[k].kind_of? Time
|
141
142
|
# use DateTime to preserve timezone information
|
142
143
|
hash[k] = DateTime.parse(v)
|
data/lib/awestruct/version.rb
CHANGED
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.6.
|
4
|
+
version: 0.6.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bob McWhirter
|
@@ -10,10 +10,10 @@ authors:
|
|
10
10
|
- Dan Allen
|
11
11
|
- Torsten Curdt
|
12
12
|
- other contributors
|
13
|
-
autorequire:
|
13
|
+
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date:
|
16
|
+
date: 2023-01-21 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: haml
|
@@ -450,6 +450,7 @@ files:
|
|
450
450
|
- lib/awestruct/util/default_inflections.rb
|
451
451
|
- lib/awestruct/util/exception_helper.rb
|
452
452
|
- lib/awestruct/util/inflector.rb
|
453
|
+
- lib/awestruct/util/yaml_load.rb
|
453
454
|
- lib/awestruct/version.rb
|
454
455
|
- man/awestruct.1
|
455
456
|
- man/awestruct.adoc
|
@@ -480,7 +481,6 @@ files:
|
|
480
481
|
- spec/awestruct/handlers/interpolation_handler_spec.rb
|
481
482
|
- spec/awestruct/handlers/javascript_handler_spec.rb
|
482
483
|
- spec/awestruct/handlers/layout_handler_spec.rb
|
483
|
-
- spec/awestruct/handlers/less_handler_spec.rb
|
484
484
|
- spec/awestruct/handlers/markdown_handler_spec.rb
|
485
485
|
- spec/awestruct/handlers/mustache_handler_spec.rb
|
486
486
|
- spec/awestruct/handlers/orgmode_handler_spec.rb
|
@@ -609,7 +609,7 @@ homepage: http://awestruct.org
|
|
609
609
|
licenses:
|
610
610
|
- MIT
|
611
611
|
metadata: {}
|
612
|
-
post_install_message:
|
612
|
+
post_install_message:
|
613
613
|
rdoc_options:
|
614
614
|
- "--charset=UTF-8"
|
615
615
|
require_paths:
|
@@ -629,9 +629,8 @@ requirements:
|
|
629
629
|
Any markup languages you are using and its dependencies.
|
630
630
|
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.
|
631
631
|
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.
|
632
|
-
|
633
|
-
|
634
|
-
signing_key:
|
632
|
+
rubygems_version: 3.3.3
|
633
|
+
signing_key:
|
635
634
|
specification_version: 4
|
636
635
|
summary: Static site baking and publishing tool
|
637
636
|
test_files:
|
@@ -662,7 +661,6 @@ test_files:
|
|
662
661
|
- spec/awestruct/handlers/interpolation_handler_spec.rb
|
663
662
|
- spec/awestruct/handlers/javascript_handler_spec.rb
|
664
663
|
- spec/awestruct/handlers/layout_handler_spec.rb
|
665
|
-
- spec/awestruct/handlers/less_handler_spec.rb
|
666
664
|
- spec/awestruct/handlers/markdown_handler_spec.rb
|
667
665
|
- spec/awestruct/handlers/mustache_handler_spec.rb
|
668
666
|
- spec/awestruct/handlers/orgmode_handler_spec.rb
|
@@ -1,33 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
verify = lambda { |output|
|
4
|
-
output.should =~ /\.class {\n width: 2;\n}/
|
5
|
-
}
|
6
|
-
|
7
|
-
theories =
|
8
|
-
[
|
9
|
-
{
|
10
|
-
:page => "less-page.less",
|
11
|
-
:simple_name => "less-page",
|
12
|
-
:syntax => :less,
|
13
|
-
:extension => '.css',
|
14
|
-
:matcher => verify
|
15
|
-
},
|
16
|
-
{
|
17
|
-
:page => "less-page-with-import.less",
|
18
|
-
:simple_name => "less-page-with-import",
|
19
|
-
:syntax => :less,
|
20
|
-
:extension => '.css',
|
21
|
-
:matcher => verify,
|
22
|
-
:unless => {
|
23
|
-
:message => "Tilt 1.3.3 does not forward given options to Less parser. @import won't work unless :paths are set",
|
24
|
-
:exp => lambda { Tilt::VERSION.eql? "1.3.3" }
|
25
|
-
}
|
26
|
-
}
|
27
|
-
]
|
28
|
-
|
29
|
-
describe Awestruct::Handlers::TiltHandler.to_s + "-Less" do
|
30
|
-
|
31
|
-
it_should_behave_like "a handler", theories
|
32
|
-
|
33
|
-
end
|