middleman-vcs-time 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 365f56104ba7f707ba587d1bb48fa6f3a1950c1b
4
- data.tar.gz: 4a836554e2f209050cc51b834326b80c579c9971
3
+ metadata.gz: 7968930fda9cd6d292ee50dc5dca313e7db31f40
4
+ data.tar.gz: 2bd471546abc65091f441d91effe27df624da306
5
5
  SHA512:
6
- metadata.gz: 904f9674e4b1847340c9ecafbdc99d4e18a06afa0bca1bb1937b03a6ad4afddde997b71575cb6dd4ca13309cc24d97b25a58835b558271f96b88d730faab33c1
7
- data.tar.gz: 412c360e0baf237f00fa48923705fc7d9ffdad115afcab30b3ba48702d0a1d9393e2fb52eb614a8b39578b3752c5b15d3e6dfef5a2332bf93694c3b78e478df0
6
+ metadata.gz: 6eebe78f242967f2cf77516227719e745955ace6c1a16adad3bfcdb31e80baf4d7c1f178a11c77028004a4d1264002422301d5a21c3eaea52ae36e92d4228ffe
7
+ data.tar.gz: 7b125ad296c92396659e7750a91a51d116fb7a630be7e7dd09b9312d88aeb82d7197e9e4031308e54aa6a5790b340a561b2cd1a7dc243d1d535974ee0811e04a
data/.gitignore CHANGED
@@ -1,6 +1,11 @@
1
+ # Appraisal
2
+ /gemfiles/*.gemfile.lock
3
+
4
+ # Aruba
5
+ /tmp
6
+
1
7
  # Bundler
2
8
  /Gemfile.lock
3
9
 
4
- # Packaging
10
+ # RubyGems
5
11
  /pkg
6
- /tmp
@@ -2,6 +2,13 @@ env:
2
2
  - CUCUMBER_FORMAT=pretty
3
3
  language: ruby
4
4
  rvm:
5
- - 2.0.0
6
- - 2.1.2
5
+ - 2.2.5
6
+ - 2.3.1
7
+ gemfile:
8
+ - gemfiles/middleman_4.0.gemfile
9
+ - gemfiles/middleman_4.1.gemfile
10
+ - gemfiles/middleman_unreleased.gemfile
11
+ matrix:
12
+ allow_failures:
13
+ - gemfile: gemfiles/middleman_unreleased.gemfile
7
14
  script: bundle exec rake test
@@ -0,0 +1,5 @@
1
+ unreleased = { github: 'middleman/middleman', branch: 'master' }
2
+
3
+ appraise('middleman_4.0') { gem 'middleman-core', '~> 4.0.0' }
4
+ appraise('middleman_4.1') { gem 'middleman-core', '~> 4.1.0' }
5
+ appraise('middleman_unreleased') { gem 'middleman-core', unreleased }
data/Gemfile CHANGED
@@ -2,18 +2,12 @@ source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
4
 
5
- group :development do
6
- gem 'middleman', github: 'middleman/middleman', branch: 'v3-stable'
7
- gem 'rake'
8
- gem 'rdoc'
9
- gem 'travis'
10
- gem 'websocket-native'
11
- gem 'yard'
12
- end
5
+ gem 'middleman-core', github: 'middleman/middleman', branch: 'master'
13
6
 
14
7
  group :test do
15
- gem 'aruba'
16
- gem 'cucumber'
17
- gem 'fivemat'
8
+ gem 'appraisal', '~> 2.0'
9
+ gem 'aruba', '~> 0.14'
10
+ gem 'capybara', '~> 2.4'
11
+ gem 'cucumber', '~> 2.0'
18
12
  gem 'rspec', '~> 3.0'
19
13
  end
data/README.md CHANGED
@@ -4,11 +4,8 @@
4
4
  [![Build Status][build-status-badge]][build-status]
5
5
 
6
6
  Provides means to look up the last-modified times of [Middleman][] sitemap
7
- resources according to a version control system.
8
-
9
- Supported version control systems:
10
-
11
- - Git
7
+ resources according to version control. Supports Git with a fallback to
8
+ filesystem metadata.
12
9
 
13
10
  ## Installation
14
11
 
@@ -28,7 +25,7 @@ Activate the extension in `config.rb`:
28
25
  activate :vcs_time
29
26
  ```
30
27
 
31
- Get the modification time of the current page:
28
+ Get the modification time of e.g. the current page:
32
29
 
33
30
  ```ruby
34
31
  current_page.mtime # => 2014-01-20 17:31:50 -0800
@@ -36,7 +33,7 @@ current_page.mtime # => 2014-01-20 17:31:50 -0800
36
33
 
37
34
 
38
35
  [build-status]: https://travis-ci.org/AndrewKvalheim/middleman-vcs-time
39
- [build-status-badge]: https://travis-ci.org/AndrewKvalheim/middleman-vcs-time.png?branch=master
36
+ [build-status-badge]: https://travis-ci.org/AndrewKvalheim/middleman-vcs-time.svg?branch=master
40
37
  [gem-version]: https://badge.fury.io/rb/middleman-vcs-time
41
- [gem-version-badge]: https://badge.fury.io/rb/middleman-vcs-time.png
38
+ [gem-version-badge]: https://badge.fury.io/rb/middleman-vcs-time.svg
42
39
  [middleman]: http://middlemanapp.com/
data/Rakefile CHANGED
@@ -4,12 +4,11 @@ Bundler::GemHelper.install_tasks
4
4
  require 'cucumber/rake/task'
5
5
 
6
6
  Cucumber::Rake::Task.new(:cucumber, 'Run features that should pass') do |t|
7
- format = ENV['CUCUMBER_FORMAT'] || 'Fivemat'
8
- t.cucumber_opts = "--color --tags ~@wip --strict --format #{format}"
7
+ t.cucumber_opts = '--color --tags ~@wip --strict'
9
8
  end
10
9
 
11
10
  require 'rake/clean'
12
11
 
13
- task :test => ['cucumber']
12
+ task test: ['cucumber']
14
13
 
15
- task :default => :test
14
+ task default: :test
@@ -8,4 +8,4 @@ Feature: Fallback
8
8
  Scenario: Use the file modification time when there is no version control system
9
9
  Given the Server is running at "no-vcs-app"
10
10
  When I go to "/show-mtime.html"
11
- Then I should see the modification time for a file named "source/show-mtime.html.erb"
11
+ Then I should see the file modification time of "source/show-mtime.html.erb"
@@ -3,12 +3,12 @@ Feature: Git support
3
3
  Scenario: Use the file modification time when the source file is untracked
4
4
  Given the Server is running under Git at "git-app"
5
5
  When I go to "/show-mtime_untracked.html"
6
- Then I should see the modification time for a file named "source/show-mtime_untracked.html.erb"
6
+ Then I should see the file modification time of "source/show-mtime_untracked.html.erb"
7
7
 
8
8
  Scenario: Use the file modification time when there are working changes to the source file
9
9
  Given the Server is running under Git at "git-app"
10
10
  When I go to "/show-mtime_working.html"
11
- Then I should see the modification time for a file named "source/show-mtime_working.html.erb"
11
+ Then I should see the file modification time of "source/show-mtime_working.html.erb"
12
12
 
13
13
  Scenario: Use the author time of the most recent commit
14
14
  Given the Server is running under Git at "git-app"
@@ -1,10 +1,10 @@
1
1
  # Use a non-standard Git directory in fixtures so as not to conflict with the
2
2
  # parent repository
3
3
  Given /^the Server is running under Git at "([^\"]*)"$/ do |app_path|
4
- step %Q{a fixture app "#{app_path}"}
4
+ step %(a fixture app "#{app_path}")
5
5
 
6
- set_env 'GIT_DIR', File.join(current_dir, 'dotgit')
7
- set_env 'GIT_WORK_TREE', current_dir
6
+ ENV['GIT_DIR'] = expand_path('dotgit')
7
+ ENV['GIT_WORK_TREE'] = expand_path('.')
8
8
 
9
- step %Q{the Server is running}
9
+ step %(the Server is running)
10
10
  end
@@ -3,15 +3,15 @@ TOLERANCE = 5
3
3
  Then /^I should see the current time$/ do
4
4
  now = Time.now.to_i
5
5
 
6
- window = (now - TOLERANCE .. now + TOLERANCE)
7
- has_current_time = @browser.last_response.body.scan(/\d+/).any? do |digits|
6
+ window = ((now - TOLERANCE)..(now + TOLERANCE))
7
+ has_current_time = page.body.scan(/\d+/).any? do |digits|
8
8
  window.include?(digits.to_i)
9
9
  end
10
10
 
11
11
  expect(has_current_time).to be_truthy
12
12
  end
13
13
 
14
- Then /^I should see the modification time for a file named "([^\"]*)"$/ do |file|
15
- target = File.join(current_dir, file)
16
- step %Q{I should see "#{File.mtime(target).to_i}"}
14
+ Then /^I should see the file modification time of "([^\"]*)"$/ do |file|
15
+ target = expand_path(file)
16
+ step %(I should see "#{File.mtime(target).to_i}")
17
17
  end
@@ -5,5 +5,5 @@ require File.join(PROJECT_ROOT_PATH, 'lib', 'middleman-vcs-time')
5
5
 
6
6
  # Prevent fixtures from detecting the parent repository
7
7
  Before do
8
- set_env 'GIT_DIR', File::NULL
8
+ ENV['GIT_DIR'] = File::NULL
9
9
  end
@@ -1,4 +1,8 @@
1
- require 'lib/generated-resources'
1
+ require 'lib/generated_resources'
2
2
 
3
3
  activate :generated_resources
4
4
  activate :vcs_time
5
+
6
+ generate 'show-mtime_generated.html' do |resource|
7
+ "This page was last modified at #{resource.mtime.strftime('%s')}."
8
+ end
@@ -0,0 +1,36 @@
1
+ module GeneratedResources
2
+ # Resource with a configurable renderer
3
+ class GeneratedResource < ::Middleman::Sitemap::Resource
4
+ attr_accessor :renderer
5
+
6
+ def render(options = {}, locals = {})
7
+ @renderer.call(self, options, locals)
8
+ end
9
+ end
10
+
11
+ # Sitemap manipulator
12
+ class Extension < ::Middleman::Extension
13
+ expose_to_config :generate
14
+
15
+ def initialize(app, options_hash = {})
16
+ super
17
+
18
+ @renderers = {}
19
+ end
20
+
21
+ def generate(path, &renderer)
22
+ @renderers[path] = renderer
23
+ end
24
+
25
+ def manipulate_resource_list(resources)
26
+ resources + @renderers.map do |path, renderer|
27
+ GeneratedResource.new(app.sitemap, path, nil).tap do |resource|
28
+ resource.renderer = renderer
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+
35
+ extension = GeneratedResources::Extension
36
+ ::Middleman::Extensions.register :generated_resources, extension
@@ -0,0 +1,15 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "middleman-core", "~> 4.0.0"
6
+
7
+ group :test do
8
+ gem "appraisal", "~> 2.0"
9
+ gem "aruba", "~> 0.14"
10
+ gem "capybara", "~> 2.4"
11
+ gem "cucumber", "~> 2.0"
12
+ gem "rspec", "~> 3.0"
13
+ end
14
+
15
+ gemspec :path => "../"
@@ -0,0 +1,15 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "middleman-core", "~> 4.1.0"
6
+
7
+ group :test do
8
+ gem "appraisal", "~> 2.0"
9
+ gem "aruba", "~> 0.14"
10
+ gem "capybara", "~> 2.4"
11
+ gem "cucumber", "~> 2.0"
12
+ gem "rspec", "~> 3.0"
13
+ end
14
+
15
+ gemspec :path => "../"
@@ -0,0 +1,15 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "middleman-core", :github => "middleman/middleman", :branch => "master"
6
+
7
+ group :test do
8
+ gem "appraisal", "~> 2.0"
9
+ gem "aruba", "~> 0.14"
10
+ gem "capybara", "~> 2.4"
11
+ gem "cucumber", "~> 2.0"
12
+ gem "rspec", "~> 3.0"
13
+ end
14
+
15
+ gemspec :path => "../"
@@ -1,3 +1,7 @@
1
- require 'middleman-vcs-time/extension'
1
+ require 'middleman-core'
2
2
 
3
- Middleman::VCSTime::Extension.register :vcs_time
3
+ ::Middleman::Extensions.register :vcs_time do
4
+ require 'middleman-vcs-time/extension'
5
+
6
+ Middleman::VCSTime::Extension
7
+ end
@@ -1,7 +1,6 @@
1
- require 'middleman-core'
2
-
3
1
  module Middleman
4
2
  module VCSTime
3
+ # Middleman extension
5
4
  class Extension < ::Middleman::Extension
6
5
  def initialize(app, **options_hash, &block)
7
6
  super
@@ -11,9 +10,9 @@ module Middleman
11
10
  end
12
11
 
13
12
  def after_configuration
14
- systems = [Git, Fallback]
13
+ vcs = [Git, Fallback].find(&:available?)
15
14
 
16
- systems.detect(&:load)
15
+ Middleman::Sitemap::Resource.prepend vcs::ResourceIncludes
17
16
  end
18
17
  end
19
18
  end
@@ -1,20 +1,16 @@
1
1
  module Middleman
2
2
  module VCSTime
3
+ # Interface to filesystem metadata
3
4
  class Fallback
5
+ # Extensions to sitemap resources
4
6
  module ResourceIncludes
5
7
  def mtime
6
- if File.exists?(source_file)
7
- File.mtime(source_file)
8
- else
9
- Time.now
10
- end
8
+ source_file ? File.mtime(source_file) : Time.now
11
9
  end
12
10
  end
13
11
 
14
- def self.load
15
- Middleman::Sitemap::Resource.class_eval do
16
- include ResourceIncludes
17
- end
12
+ def self.available?
13
+ true
18
14
  end
19
15
  end
20
16
  end
@@ -2,51 +2,59 @@ require 'pathname'
2
2
 
3
3
  module Middleman
4
4
  module VCSTime
5
+ # Interface to Git metadata
5
6
  class Git < Fallback
7
+ # Extensions to sitemap resources
6
8
  module ResourceIncludes
7
9
  def mtime
8
- @_mtime ||= if git_clean?
9
- git_author_time
10
- else
11
- super
12
- end
10
+ @_mtime ||= git_clean? ? git_author_time : super
13
11
  end
14
12
 
15
13
  private
16
14
 
17
- def git_author_time
18
- command = %w{git log --follow --numstat --format=%at --}
15
+ # Parsed numstat log
16
+ class Numstats
17
+ include Enumerable
18
+
19
+ GIT_NUMSTAT = %w(git log --follow --numstat --format=%at --).freeze
20
+
21
+ # Parsed commit entry
22
+ class Commit
23
+ attr_reader :time
19
24
 
20
- result = IO.popen(command + [source_file]) do |output|
21
- output.each_line.each_slice(3).find do |result|
22
- result.last.split("\t").take(2).map(&:to_i).reduce(&:+).nonzero?
25
+ def initialize(raw)
26
+ @insertions, @deletions = raw.last.split("\t").take(2).map(&:to_i)
27
+ @time = Time.at(raw.first.to_i)
23
28
  end
24
- end
25
29
 
26
- Time.at(result.first.to_i) if result
27
- end
30
+ def changed?
31
+ @deletions.nonzero? || @insertions.nonzero?
32
+ end
33
+ end
28
34
 
29
- def git_clean?
30
- command = %w{git status --porcelain --}
35
+ def initialize(path)
36
+ @raw = IO.popen(GIT_NUMSTAT + [path])
37
+ end
31
38
 
32
- IO.popen(command + [source_file]) { |output| output.read.empty? }
39
+ def each
40
+ @raw.each_line.each_slice(3) { |entry| yield Commit.new(entry) }
41
+ end
33
42
  end
34
- end
35
43
 
36
- def self.load
37
- if available?
38
- super
44
+ def git_author_time
45
+ change = Numstats.new(source_file).find(&:changed?)
46
+ change.time if change
47
+ end
39
48
 
40
- Middleman::Sitemap::Resource.class_eval do
41
- include ResourceIncludes
49
+ def git_clean?
50
+ IO.popen(%w(git status --porcelain --) + [source_file]) do |output|
51
+ output.read.empty?
42
52
  end
43
53
  end
44
54
  end
45
55
 
46
- private
47
-
48
56
  def self.available?
49
- system(*%w{git rev-parse}, err: File::NULL)
57
+ system(*%w(git rev-parse), err: File::NULL)
50
58
  end
51
59
  end
52
60
  end
@@ -1,20 +1,34 @@
1
- # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path('../lib', __FILE__)
1
+ $LOAD_PATH.push File.expand_path('../lib', __FILE__)
3
2
 
4
3
  Gem::Specification.new do |gem|
4
+ # Identity
5
5
  gem.name = 'middleman-vcs-time'
6
- gem.version = '0.0.3'
7
- gem.platform = Gem::Platform::RUBY
8
- gem.required_ruby_version = '~> 2.0'
9
- gem.license = 'MIT'
10
- gem.authors = ['Andrew Kvalheim']
11
- gem.email = ['Andrew@Kvalhe.im']
6
+ gem.version = '0.0.4'
12
7
  gem.homepage = 'https://github.com/AndrewKvalheim/middleman-vcs-time'
13
- gem.summary = %q{Use version control to determine last-modified times of Middleman resources.}
8
+ gem.summary = 'Use version control to determine last-modified times of ' \
9
+ 'Middleman resources.'
14
10
 
11
+ # License
12
+ gem.license = 'MIT'
13
+
14
+ # Authorship
15
+ gem.authors = ['Andrew Kvalheim']
16
+ gem.email = ['Andrew@Kvalhe.im']
17
+
18
+ # Content
15
19
  gem.files = `git ls-files -z`.split("\0")
16
20
  gem.test_files = gem.files.grep(%r{^(features|fixtures)/})
17
21
  gem.require_paths = ['lib']
18
22
 
19
- gem.add_runtime_dependency 'middleman-core', ['~> 3.2']
23
+ # Dependencies
24
+ gem.platform = Gem::Platform::RUBY
25
+ gem.required_ruby_version = '~> 2.2'
26
+ gem.add_runtime_dependency 'middleman-core', '~> 4.0'
27
+
28
+ # Development dependencies
29
+ gem.add_development_dependency 'rake'
30
+ gem.add_development_dependency 'rdoc'
31
+ gem.add_development_dependency 'travis'
32
+ gem.add_development_dependency 'websocket-native'
33
+ gem.add_development_dependency 'yard'
20
34
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: middleman-vcs-time
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kvalheim
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-10 00:00:00.000000000 Z
11
+ date: 2016-05-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: middleman-core
@@ -16,14 +16,84 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '3.2'
19
+ version: '4.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '3.2'
26
+ version: '4.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rdoc
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: travis
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: websocket-native
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: yard
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
27
97
  description:
28
98
  email:
29
99
  - Andrew@Kvalhe.im
@@ -33,6 +103,7 @@ extra_rdoc_files: []
33
103
  files:
34
104
  - ".gitignore"
35
105
  - ".travis.yml"
106
+ - Appraisals
36
107
  - Gemfile
37
108
  - LICENSE.md
38
109
  - README.md
@@ -64,8 +135,11 @@ files:
64
135
  - fixtures/git-app/source/show-mtime_untracked.html.erb
65
136
  - fixtures/git-app/source/show-mtime_working.html.erb
66
137
  - fixtures/no-vcs-app/config.rb
67
- - fixtures/no-vcs-app/lib/generated-resources.rb
138
+ - fixtures/no-vcs-app/lib/generated_resources.rb
68
139
  - fixtures/no-vcs-app/source/show-mtime.html.erb
140
+ - gemfiles/middleman_4.0.gemfile
141
+ - gemfiles/middleman_4.1.gemfile
142
+ - gemfiles/middleman_unreleased.gemfile
69
143
  - lib/middleman-vcs-time.rb
70
144
  - lib/middleman-vcs-time/extension.rb
71
145
  - lib/middleman-vcs-time/systems/fallback.rb
@@ -84,7 +158,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
84
158
  requirements:
85
159
  - - "~>"
86
160
  - !ruby/object:Gem::Version
87
- version: '2.0'
161
+ version: '2.2'
88
162
  required_rubygems_version: !ruby/object:Gem::Requirement
89
163
  requirements:
90
164
  - - ">="
@@ -92,7 +166,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
92
166
  version: '0'
93
167
  requirements: []
94
168
  rubyforge_project:
95
- rubygems_version: 2.2.2
169
+ rubygems_version: 2.6.4
96
170
  signing_key:
97
171
  specification_version: 4
98
172
  summary: Use version control to determine last-modified times of Middleman resources.
@@ -124,6 +198,6 @@ test_files:
124
198
  - fixtures/git-app/source/show-mtime_untracked.html.erb
125
199
  - fixtures/git-app/source/show-mtime_working.html.erb
126
200
  - fixtures/no-vcs-app/config.rb
127
- - fixtures/no-vcs-app/lib/generated-resources.rb
201
+ - fixtures/no-vcs-app/lib/generated_resources.rb
128
202
  - fixtures/no-vcs-app/source/show-mtime.html.erb
129
203
  has_rdoc:
@@ -1,33 +0,0 @@
1
- module Middleman
2
- module GeneratedResources
3
- class GeneratedResource < Middleman::Sitemap::Resource
4
- def binary?
5
- false
6
- end
7
-
8
- def render
9
- raise NotImplementedError
10
- end
11
-
12
- def source_file
13
- ''
14
- end
15
- end
16
-
17
- class Extension < Middleman::Extension
18
- def manipulate_resource_list(resources)
19
- resource = GeneratedResource.new(app.sitemap, 'show-mtime_generated.html')
20
-
21
- class << resource
22
- def render
23
- "This page was last modified at #{mtime.strftime('%s')}."
24
- end
25
- end
26
-
27
- resources << resource
28
- end
29
- end
30
- end
31
- end
32
-
33
- Middleman::GeneratedResources::Extension.register :generated_resources