middleman-core 4.3.11 → 4.4.0

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.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/features/asset_hash.feature +64 -62
  3. data/features/data.feature +20 -0
  4. data/features/front-matter-neighbor.feature +33 -27
  5. data/features/front-matter.feature +11 -5
  6. data/features/i18n_preview.feature +238 -238
  7. data/features/support/env.rb +0 -3
  8. data/features/unicode_filenames.feature +3 -3
  9. data/fixtures/basic-data-app/data/test3.toml +7 -0
  10. data/fixtures/basic-data-app/source/data4.html.erb +5 -0
  11. data/fixtures/frontmatter-app/source/raw-front-matter-toml.html +6 -0
  12. data/fixtures/frontmatter-app/source/raw-front-matter.html +1 -1
  13. data/fixtures/frontmatter-neighbor-app/source/raw-front-matter-toml.html +1 -0
  14. data/fixtures/frontmatter-neighbor-app/source/raw-front-matter-toml.html.frontmatter +4 -0
  15. data/lib/middleman-core/builder.rb +1 -1
  16. data/lib/middleman-core/core_extensions/data.rb +4 -2
  17. data/lib/middleman-core/core_extensions/default_helpers.rb +1 -0
  18. data/lib/middleman-core/core_extensions/front_matter.rb +1 -0
  19. data/lib/middleman-core/core_extensions/rendering.rb +0 -6
  20. data/lib/middleman-core/dns_resolver.rb +2 -4
  21. data/lib/middleman-core/dns_resolver/basic_network_resolver.rb +0 -2
  22. data/lib/middleman-core/extensions/asset_hash.rb +1 -1
  23. data/lib/middleman-core/preview_server/server_ip_address.rb +5 -14
  24. data/lib/middleman-core/step_definitions/commandline_steps.rb +0 -4
  25. data/lib/middleman-core/step_definitions/middleman_steps.rb +1 -1
  26. data/lib/middleman-core/template_context.rb +3 -3
  27. data/lib/middleman-core/util/data.rb +28 -0
  28. data/lib/middleman-core/version.rb +1 -1
  29. data/middleman-core.gemspec +8 -6
  30. data/spec/middleman-core/dns_resolver_spec.rb +8 -24
  31. data/spec/spec_helper.rb +0 -3
  32. metadata +51 -20
  33. data/features/stylus.feature +0 -54
  34. data/lib/middleman-core/renderers/stylus.rb +0 -10
@@ -8,9 +8,6 @@ SimpleCov.root(File.expand_path(File.dirname(__FILE__) + '/../..'))
8
8
  require 'coveralls'
9
9
  Coveralls.wear!
10
10
 
11
- require 'codeclimate-test-reporter'
12
- CodeClimate::TestReporter.start
13
-
14
11
  PROJECT_ROOT_PATH = File.dirname(File.dirname(File.dirname(__FILE__)))
15
12
  require File.join(PROJECT_ROOT_PATH, 'lib', 'middleman-core')
16
13
  require File.join(PROJECT_ROOT_PATH, 'lib', 'middleman-core', 'step_definitions')
@@ -1,4 +1,4 @@
1
- @encoding @travishatesme @wip
1
+ @encoding @wip
2
2
 
3
3
  Feature: Unicode filenames
4
4
  In order to support non-ASCII characters in filenames
@@ -12,7 +12,7 @@ Feature: Unicode filenames
12
12
  """
13
13
  Snowman!
14
14
  <div style="text-align:center; font-size:4000%;">
15
-
15
+
16
16
  </div>
17
17
  """
18
18
  And a successfully built app at "empty-app"
@@ -28,7 +28,7 @@ Feature: Unicode filenames
28
28
  """
29
29
  Snowman!
30
30
  <div style="text-align:center; font-size:4000%;">
31
-
31
+
32
32
  </div>
33
33
  """
34
34
  And the Server is running
@@ -0,0 +1,7 @@
1
+ [titles]
2
+
3
+ [titles.first]
4
+ title = "One"
5
+
6
+ [titles.second]
7
+ title = "Two"
@@ -0,0 +1,5 @@
1
+ <% if data.respond_to?(:test3) && data.test3.respond_to?(:titles) %>
2
+ <%= data.test3.titles.map { |r| r[1].title }.join(":") %>
3
+ <% else %>
4
+ No Test Data
5
+ <% end %>
@@ -0,0 +1,6 @@
1
+ +++
2
+ layout = false
3
+ title = "This is the title"
4
+ +++
5
+
6
+ <h1><%= current_page.data.title %></h1>
@@ -3,4 +3,4 @@ layout: false
3
3
  title: This is the title
4
4
  ---
5
5
 
6
- <h1><%= current_page.data.title %></h1>
6
+ <h1><%= current_page.data.title %></h1>
@@ -0,0 +1 @@
1
+ <h1><%= current_page.data.title %></h1>
@@ -0,0 +1,4 @@
1
+ +++
2
+ layout = false
3
+ title = "This is the title"
4
+ +++
@@ -229,7 +229,7 @@ module Middleman
229
229
  if resource.binary?
230
230
  export_file!(output_file, resource.file_descriptor[:full_path])
231
231
  else
232
- response = @rack.get(::URI.escape(resource.request_path))
232
+ response = @rack.get(::WEBrick::HTTPUtils.escape(resource.request_path))
233
233
 
234
234
  # If we get a response, save it to a tempfile.
235
235
  if response.status == 200
@@ -17,7 +17,7 @@ module Middleman
17
17
  expose_to_template data: :data_store
18
18
 
19
19
  # The regex which tells Middleman which files are for data
20
- DATA_FILE_MATCHER = /^(.*?)[\w-]+\.(yml|yaml|json)$/
20
+ DATA_FILE_MATCHER = /^(.*?)[\w-]+\.(yml|yaml|json|toml)$/
21
21
 
22
22
  def initialize(app, config={}, &block)
23
23
  super
@@ -102,13 +102,15 @@ module Middleman
102
102
  extension = File.extname(data_path)
103
103
  basename = File.basename(data_path, extension)
104
104
 
105
- return unless %w(.yaml .yml .json).include?(extension)
105
+ return unless %w(.yaml .yml .json .toml).include?(extension)
106
106
 
107
107
  if %w(.yaml .yml).include?(extension)
108
108
  data, postscript = ::Middleman::Util::Data.parse(file, @app.config[:frontmatter_delims], :yaml)
109
109
  data[:postscript] = postscript if !postscript.nil? && data.is_a?(Hash)
110
110
  elsif extension == '.json'
111
111
  data, _postscript = ::Middleman::Util::Data.parse(file, @app.config[:frontmatter_delims], :json)
112
+ elsif extension == '.toml'
113
+ data, _postscript = ::Middleman::Util::Data.parse(file, @app.config[:frontmatter_delims], :toml)
112
114
  end
113
115
 
114
116
  data_branch = @local_data
@@ -6,6 +6,7 @@ require 'padrino-helpers/format_helpers'
6
6
  require 'padrino-helpers/number_helpers'
7
7
  require 'padrino-helpers/output_helpers'
8
8
  require 'padrino-helpers/render_helpers'
9
+ require 'active_support/core_ext/array/extract_options'
9
10
  require 'middleman-core/contracts'
10
11
 
11
12
  # Don't fail on invalid locale, that's not what our current
@@ -17,6 +17,7 @@ module Middleman::CoreExtensions
17
17
  # Set textual delimiters that denote the start and end of frontmatter
18
18
  define_setting :frontmatter_delims, {
19
19
  json: [%w(;;; ;;;)],
20
+ toml: [%w(+++ +++)],
20
21
  yaml: [%w(--- ---), %w(--- ...)]
21
22
  }, 'Allowed frontmatter delimiters'
22
23
 
@@ -47,9 +47,3 @@ Middleman::Extensions.register :less_renderer, auto_activate: :before_configurat
47
47
  require 'middleman-core/renderers/less'
48
48
  Middleman::Renderers::Less
49
49
  end
50
-
51
- # Stylus Support
52
- Middleman::Extensions.register :stylus_renderer, auto_activate: :before_configuration do
53
- require 'middleman-core/renderers/stylus'
54
- Middleman::Renderers::Stylus
55
- end
@@ -31,10 +31,8 @@ module Middleman
31
31
  @resolvers = []
32
32
  @resolvers << opts.fetch(:hosts_resolver, HostsResolver.new)
33
33
 
34
- if RUBY_VERSION >= '2.1'
35
- require 'middleman-core/dns_resolver/local_link_resolver'
36
- @resolvers << opts.fetch(:local_link_resolver, LocalLinkResolver.new)
37
- end
34
+ require 'middleman-core/dns_resolver/local_link_resolver'
35
+ @resolvers << opts.fetch(:local_link_resolver, LocalLinkResolver.new)
38
36
 
39
37
  @resolvers << opts.fetch(:network_resolver, NetworkResolver.new)
40
38
  end
@@ -43,8 +43,6 @@ module Middleman
43
43
  # @param [Integer] value
44
44
  # The timeout value
45
45
  def timeouts=(timeouts)
46
- return if RUBY_VERSION < '2'
47
-
48
46
  resolver.timeouts = timeouts
49
47
  end
50
48
  end
@@ -87,7 +87,7 @@ class Middleman::Extensions::AssetHash < ::Middleman::Extension
87
87
  else
88
88
  # Render through the Rack interface so middleware and mounted apps get a shot
89
89
  response = @rack_client.get(
90
- ::URI.escape(resource.destination_path),
90
+ ::WEBrick::HTTPUtils.escape(resource.destination_path),
91
91
  'bypass_inline_url_rewriter_asset_hash' => 'true'
92
92
  )
93
93
 
@@ -35,20 +35,11 @@ module Middleman
35
35
  format('[%s]', to_s)
36
36
  end
37
37
 
38
- if RUBY_VERSION < '2'
39
- def self.match?(str)
40
- str = str.to_s.sub(/%.*$/, '')
41
- IPAddr.new(str).ipv6?
42
- rescue StandardError
43
- false
44
- end
45
- else
46
- def self.match?(str)
47
- str = str.to_s.sub(/%.*$/, '')
48
- IPAddr.new(str).ipv6?
49
- rescue IPAddr::InvalidAddressError, IPAddr::AddressFamilyError
50
- false
51
- end
38
+ def self.match?(str)
39
+ str = str.to_s.sub(/%.*$/, '')
40
+ IPAddr.new(str).ipv6?
41
+ rescue IPAddr::InvalidAddressError, IPAddr::AddressFamilyError
42
+ false
52
43
  end
53
44
  end
54
45
  end
@@ -82,7 +82,3 @@ end
82
82
  After do
83
83
  only_processes.each { |p| p.terminate }
84
84
  end
85
-
86
- Before '@ruby-2.1' do
87
- skip_this_scenario if RUBY_VERSION < '2.1'
88
- end
@@ -35,7 +35,7 @@ Then /^the file "([^\"]*)" has the contents$/ do |path, contents|
35
35
  end
36
36
 
37
37
  Then /^the file "([^\"]*)" is removed$/ do |path|
38
- step %Q{I remove the file "#{path}"}
38
+ FileUtils.rm(expand_path(path))
39
39
 
40
40
  @server_inst.files.poll_once!
41
41
  end
@@ -99,8 +99,8 @@ module Middleman
99
99
  # @param [Hash] options
100
100
  # @param [Proc] block A block will be evaluated to return internal contents.
101
101
  # @return [String]
102
- Contract Any, Or[Symbol, String], Hash => String, Maybe[Proc] => String
103
- def render(_, name, options={}, &block)
102
+ Contract Any, Or[Symbol, String], Hash, Hash, Maybe[Proc] => String
103
+ def render(_, name, options={}, locals={}, &block)
104
104
  name = name.to_s
105
105
 
106
106
  partial_file = locate_partial(name, false) || locate_partial(name, true)
@@ -114,7 +114,7 @@ module Middleman
114
114
  partial_file.read
115
115
  else
116
116
  opts = options.dup
117
- locs = opts.delete(:locals)
117
+ locs = locals.dup
118
118
 
119
119
  render_file(partial_file, locs, opts, &block)
120
120
  end
@@ -1,5 +1,6 @@
1
1
  require 'yaml'
2
2
  require 'json'
3
+ require 'toml'
3
4
  require 'pathname'
4
5
  require 'backports/2.1.0/array/to_h'
5
6
  require 'hashie'
@@ -65,6 +66,8 @@ module Middleman
65
66
  return [parse_yaml(content, full_path), nil]
66
67
  when :json
67
68
  return [parse_json(content, full_path), nil]
69
+ when :toml
70
+ return [parse_toml(content, full_path), nil]
68
71
  end
69
72
  end
70
73
 
@@ -79,6 +82,11 @@ module Middleman
79
82
  parse_json("{#{match[:frontmatter]}}", full_path),
80
83
  match[:additional_content]
81
84
  ]
85
+ when *frontmatter_delims[:toml]
86
+ [
87
+ parse_toml(match[:frontmatter], full_path),
88
+ match[:additional_content]
89
+ ]
82
90
  else
83
91
  [
84
92
  {},
@@ -122,6 +130,26 @@ module Middleman
122
130
  c ? symbolize_recursive(c) : {}
123
131
  end
124
132
  memoize :parse_yaml
133
+
134
+ # Parse TOML frontmatter out of a string
135
+ # @param [String] content
136
+ # @return [Hash]
137
+ Contract String, Pathname => Hash
138
+ def parse_toml(content, full_path)
139
+ c = begin
140
+ ::Middleman::Util.instrument 'parse.toml' do
141
+ ::TOML.load(content)
142
+ end
143
+ rescue StandardError
144
+ # TOML parser swallows useful error, so we can't warn about it.
145
+ # https://github.com/jm/toml/issues/47
146
+ warn "TOML Exception parsing #{full_path}"
147
+ {}
148
+ end
149
+
150
+ c ? symbolize_recursive(c) : {}
151
+ end
152
+ memoize :parse_yaml
125
153
 
126
154
  # Parse JSON frontmatter out of a string
127
155
  # @param [String] content
@@ -1,5 +1,5 @@
1
1
  module Middleman
2
2
  # Current Version
3
3
  # @return [String]
4
- VERSION = '4.3.11'.freeze unless const_defined?(:VERSION)
4
+ VERSION = '4.4.0'.freeze unless const_defined?(:VERSION)
5
5
  end
@@ -16,10 +16,10 @@ Gem::Specification.new do |s|
16
16
  s.files = `git ls-files -z`.split("\0")
17
17
  s.test_files = `git ls-files -z -- {fixtures,features}/*`.split("\0")
18
18
  s.require_path = 'lib'
19
- s.required_ruby_version = '>= 2.2.0'
19
+ s.required_ruby_version = '>= 2.5.0'
20
20
 
21
21
  # Core
22
- s.add_dependency('bundler')
22
+ s.add_dependency('bundler', '~> 2.0')
23
23
  s.add_dependency('rack', ['>= 1.4.5', '< 3'])
24
24
  s.add_dependency('tilt', ['~> 2.0.9'])
25
25
  s.add_dependency('erubis')
@@ -27,18 +27,20 @@ Gem::Specification.new do |s|
27
27
  s.add_dependency('parallel')
28
28
  s.add_dependency('servolux')
29
29
  s.add_dependency('dotenv')
30
+ s.add_dependency('toml')
31
+ s.add_dependency('webrick')
30
32
 
31
33
  # Helpers
32
- s.add_dependency('activesupport', ['>= 4.2', '< 6.0'])
33
- s.add_dependency('padrino-helpers', ['~> 0.13.0'])
34
- s.add_dependency("addressable", ["~> 2.3"])
34
+ s.add_dependency('activesupport', ['>= 6.1', '< 7.0'])
35
+ s.add_dependency('padrino-helpers', ['~> 0.15.0'])
36
+ s.add_dependency("addressable", ["~> 2.4"])
35
37
  s.add_dependency('memoist', ['~> 0.14'])
36
38
 
37
39
  # Watcher
38
40
  s.add_dependency('listen', ['~> 3.0.0'])
39
41
 
40
42
  # i18n
41
- s.add_dependency('i18n', ['~> 0.9.0'])
43
+ s.add_dependency('i18n', ['~> 1.6.0'])
42
44
 
43
45
  # Automatic Image Sizes
44
46
  s.add_dependency('fastimage', ['~> 2.0'])
@@ -22,9 +22,7 @@ RSpec.describe Middleman::DnsResolver do
22
22
  context 'when hosts resolver can resolve name' do
23
23
  before :each do
24
24
  expect(hosts_resolver).to receive(:getnames).with(unresolved_ip).and_return(resolved_names)
25
- if RUBY_VERSION >= '2.1'
26
- expect(local_link_resolver).not_to receive(:getnames)
27
- end
25
+ expect(local_link_resolver).not_to receive(:getnames)
28
26
  expect(network_resolver).not_to receive(:getnames)
29
27
  end
30
28
 
@@ -37,12 +35,8 @@ RSpec.describe Middleman::DnsResolver do
37
35
  context 'when local link resolver can resolve name' do
38
36
  before :each do
39
37
  expect(hosts_resolver).to receive(:getnames).with(unresolved_ip).and_return([])
40
- if RUBY_VERSION >= '2.1'
41
- expect(local_link_resolver).to receive(:getnames).with(unresolved_ip).and_return(resolved_names)
42
- expect(network_resolver).not_to receive(:getnames)
43
- else
44
- expect(network_resolver).to receive(:getnames).with(unresolved_ip).and_return(resolved_names)
45
- end
38
+ expect(local_link_resolver).to receive(:getnames).with(unresolved_ip).and_return(resolved_names)
39
+ expect(network_resolver).not_to receive(:getnames)
46
40
  end
47
41
 
48
42
  let(:unresolved_ip) { '127.0.0.1' }
@@ -54,9 +48,7 @@ RSpec.describe Middleman::DnsResolver do
54
48
  context 'when network resolver can resolve name' do
55
49
  before :each do
56
50
  expect(hosts_resolver).to receive(:getnames).with(unresolved_ip).and_return([])
57
- if RUBY_VERSION >= '2.1'
58
- expect(local_link_resolver).to receive(:getnames).with(unresolved_ip).and_return([])
59
- end
51
+ expect(local_link_resolver).to receive(:getnames).with(unresolved_ip).and_return([])
60
52
  expect(network_resolver).to receive(:getnames).with(unresolved_ip).and_return(resolved_names)
61
53
  end
62
54
 
@@ -71,9 +63,7 @@ RSpec.describe Middleman::DnsResolver do
71
63
  context 'when hosts resolver can resolve name' do
72
64
  before :each do
73
65
  expect(hosts_resolver).to receive(:getaddresses).with(unresolved_ips).and_return(resolved_name)
74
- if RUBY_VERSION >= '2.1'
75
- expect(local_link_resolver).not_to receive(:getaddresses)
76
- end
66
+ expect(local_link_resolver).not_to receive(:getaddresses)
77
67
  expect(network_resolver).not_to receive(:getaddresses)
78
68
  end
79
69
 
@@ -86,12 +76,8 @@ RSpec.describe Middleman::DnsResolver do
86
76
  context 'when local link resolver can resolve name' do
87
77
  before :each do
88
78
  expect(hosts_resolver).to receive(:getaddresses).with(unresolved_ips).and_return([])
89
- if RUBY_VERSION >= '2.1'
90
- expect(local_link_resolver).to receive(:getaddresses).with(unresolved_ips).and_return(resolved_name)
91
- expect(network_resolver).not_to receive(:getaddresses)
92
- else
93
- expect(network_resolver).to receive(:getaddresses).with(unresolved_ips).and_return(resolved_name)
94
- end
79
+ expect(local_link_resolver).to receive(:getaddresses).with(unresolved_ips).and_return(resolved_name)
80
+ expect(network_resolver).not_to receive(:getaddresses)
95
81
  end
96
82
 
97
83
  let(:unresolved_ips) { '127.0.0.1' }
@@ -103,9 +89,7 @@ RSpec.describe Middleman::DnsResolver do
103
89
  context 'when network resolver can resolve name' do
104
90
  before :each do
105
91
  expect(hosts_resolver).to receive(:getaddresses).with(unresolved_ips).and_return([])
106
- if RUBY_VERSION >= '2.1'
107
- expect(local_link_resolver).to receive(:getaddresses).with(unresolved_ips).and_return([])
108
- end
92
+ expect(local_link_resolver).to receive(:getaddresses).with(unresolved_ips).and_return([])
109
93
  expect(network_resolver).to receive(:getaddresses).with(unresolved_ips).and_return(resolved_name)
110
94
  end
111
95
 
data/spec/spec_helper.rb CHANGED
@@ -4,9 +4,6 @@ SimpleCov.root(File.expand_path(File.dirname(__FILE__) + '/..'))
4
4
  require 'coveralls'
5
5
  Coveralls.wear!
6
6
 
7
- require 'codeclimate-test-reporter'
8
- CodeClimate::TestReporter.start
9
-
10
7
  require 'aruba/api'
11
8
  RSpec.configure do |config|
12
9
  config.include Aruba::Api
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: middleman-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.3.11
4
+ version: 4.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Reynolds
@@ -10,22 +10,22 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2020-09-15 00:00:00.000000000 Z
13
+ date: 2021-06-16 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: bundler
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
- - - ">="
19
+ - - "~>"
20
20
  - !ruby/object:Gem::Version
21
- version: '0'
21
+ version: '2.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
- - - ">="
26
+ - - "~>"
27
27
  - !ruby/object:Gem::Version
28
- version: '0'
28
+ version: '2.0'
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: rack
31
31
  requirement: !ruby/object:Gem::Requirement
@@ -130,54 +130,82 @@ dependencies:
130
130
  - - ">="
131
131
  - !ruby/object:Gem::Version
132
132
  version: '0'
133
+ - !ruby/object:Gem::Dependency
134
+ name: toml
135
+ requirement: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
140
+ type: :runtime
141
+ prerelease: false
142
+ version_requirements: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ - !ruby/object:Gem::Dependency
148
+ name: webrick
149
+ requirement: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
154
+ type: :runtime
155
+ prerelease: false
156
+ version_requirements: !ruby/object:Gem::Requirement
157
+ requirements:
158
+ - - ">="
159
+ - !ruby/object:Gem::Version
160
+ version: '0'
133
161
  - !ruby/object:Gem::Dependency
134
162
  name: activesupport
135
163
  requirement: !ruby/object:Gem::Requirement
136
164
  requirements:
137
165
  - - ">="
138
166
  - !ruby/object:Gem::Version
139
- version: '4.2'
167
+ version: '6.1'
140
168
  - - "<"
141
169
  - !ruby/object:Gem::Version
142
- version: '6.0'
170
+ version: '7.0'
143
171
  type: :runtime
144
172
  prerelease: false
145
173
  version_requirements: !ruby/object:Gem::Requirement
146
174
  requirements:
147
175
  - - ">="
148
176
  - !ruby/object:Gem::Version
149
- version: '4.2'
177
+ version: '6.1'
150
178
  - - "<"
151
179
  - !ruby/object:Gem::Version
152
- version: '6.0'
180
+ version: '7.0'
153
181
  - !ruby/object:Gem::Dependency
154
182
  name: padrino-helpers
155
183
  requirement: !ruby/object:Gem::Requirement
156
184
  requirements:
157
185
  - - "~>"
158
186
  - !ruby/object:Gem::Version
159
- version: 0.13.0
187
+ version: 0.15.0
160
188
  type: :runtime
161
189
  prerelease: false
162
190
  version_requirements: !ruby/object:Gem::Requirement
163
191
  requirements:
164
192
  - - "~>"
165
193
  - !ruby/object:Gem::Version
166
- version: 0.13.0
194
+ version: 0.15.0
167
195
  - !ruby/object:Gem::Dependency
168
196
  name: addressable
169
197
  requirement: !ruby/object:Gem::Requirement
170
198
  requirements:
171
199
  - - "~>"
172
200
  - !ruby/object:Gem::Version
173
- version: '2.3'
201
+ version: '2.4'
174
202
  type: :runtime
175
203
  prerelease: false
176
204
  version_requirements: !ruby/object:Gem::Requirement
177
205
  requirements:
178
206
  - - "~>"
179
207
  - !ruby/object:Gem::Version
180
- version: '2.3'
208
+ version: '2.4'
181
209
  - !ruby/object:Gem::Dependency
182
210
  name: memoist
183
211
  requirement: !ruby/object:Gem::Requirement
@@ -212,14 +240,14 @@ dependencies:
212
240
  requirements:
213
241
  - - "~>"
214
242
  - !ruby/object:Gem::Version
215
- version: 0.9.0
243
+ version: 1.6.0
216
244
  type: :runtime
217
245
  prerelease: false
218
246
  version_requirements: !ruby/object:Gem::Requirement
219
247
  requirements:
220
248
  - - "~>"
221
249
  - !ruby/object:Gem::Version
222
- version: 0.9.0
250
+ version: 1.6.0
223
251
  - !ruby/object:Gem::Dependency
224
252
  name: fastimage
225
253
  requirement: !ruby/object:Gem::Requirement
@@ -440,7 +468,6 @@ files:
440
468
  - features/sitemap_traversal.feature
441
469
  - features/slim.feature
442
470
  - features/strip_url.feature
443
- - features/stylus.feature
444
471
  - features/support/env.rb
445
472
  - features/support/preserve_mime_types.rb
446
473
  - features/template-key-collision.feature
@@ -584,8 +611,10 @@ files:
584
611
  - fixtures/basic-data-app/config.rb
585
612
  - fixtures/basic-data-app/data/test.yml
586
613
  - fixtures/basic-data-app/data/test2.json
614
+ - fixtures/basic-data-app/data/test3.toml
587
615
  - fixtures/basic-data-app/source/data.html.erb
588
616
  - fixtures/basic-data-app/source/data3.html.erb
617
+ - fixtures/basic-data-app/source/data4.html.erb
589
618
  - fixtures/build-with-errors-app/config.rb
590
619
  - fixtures/build-with-errors-app/source/index.html.erb
591
620
  - fixtures/cache-buster-app/config.rb
@@ -758,6 +787,7 @@ files:
758
787
  - fixtures/frontmatter-app/source/front-matter-haml.html.haml
759
788
  - fixtures/frontmatter-app/source/front-matter-line-2.html.erb
760
789
  - fixtures/frontmatter-app/source/front-matter-pandoc.html.md.erb
790
+ - fixtures/frontmatter-app/source/raw-front-matter-toml.html
761
791
  - fixtures/frontmatter-app/source/raw-front-matter.html
762
792
  - fixtures/frontmatter-app/source/raw-front-matter.php
763
793
  - fixtures/frontmatter-neighbor-app/config.rb
@@ -767,6 +797,8 @@ files:
767
797
  - fixtures/frontmatter-neighbor-app/source/front-matter-change.html.erb.frontmatter
768
798
  - fixtures/frontmatter-neighbor-app/source/front-matter-encoding.html.erb
769
799
  - fixtures/frontmatter-neighbor-app/source/front-matter-encoding.html.erb.frontmatter
800
+ - fixtures/frontmatter-neighbor-app/source/raw-front-matter-toml.html
801
+ - fixtures/frontmatter-neighbor-app/source/raw-front-matter-toml.html.frontmatter
770
802
  - fixtures/frontmatter-neighbor-app/source/raw-front-matter.html
771
803
  - fixtures/frontmatter-neighbor-app/source/raw-front-matter.html.frontmatter
772
804
  - fixtures/frontmatter-neighbor-app/source/raw-front-matter.php
@@ -1495,7 +1527,6 @@ files:
1495
1527
  - lib/middleman-core/renderers/sass.rb
1496
1528
  - lib/middleman-core/renderers/sass_functions.rb
1497
1529
  - lib/middleman-core/renderers/slim.rb
1498
- - lib/middleman-core/renderers/stylus.rb
1499
1530
  - lib/middleman-core/sitemap/extensions/ignores.rb
1500
1531
  - lib/middleman-core/sitemap/extensions/import.rb
1501
1532
  - lib/middleman-core/sitemap/extensions/move_file.rb
@@ -1551,14 +1582,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
1551
1582
  requirements:
1552
1583
  - - ">="
1553
1584
  - !ruby/object:Gem::Version
1554
- version: 2.2.0
1585
+ version: 2.5.0
1555
1586
  required_rubygems_version: !ruby/object:Gem::Requirement
1556
1587
  requirements:
1557
1588
  - - ">="
1558
1589
  - !ruby/object:Gem::Version
1559
1590
  version: '0'
1560
1591
  requirements: []
1561
- rubygems_version: 3.1.2
1592
+ rubygems_version: 3.2.15
1562
1593
  signing_key:
1563
1594
  specification_version: 4
1564
1595
  summary: Hand-crafted frontend development