nanoc3 3.0.7 → 3.0.8
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +1 -1
- data/NEWS.rdoc +7 -0
- data/README.rdoc +2 -0
- data/lib/nanoc3/cli/base.rb +1 -1
- data/lib/nanoc3/extra/auto_compiler.rb +4 -1
- data/lib/nanoc3/helpers/blogging.rb +21 -9
- data/lib/nanoc3.rb +1 -1
- data/vendor/cri/LICENSE +1 -1
- metadata +2 -2
data/LICENSE
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
Copyright (c) 2007-
|
1
|
+
Copyright (c) 2007-2010 Denis Defreyne and contributors
|
2
2
|
|
3
3
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
4
4
|
of this software and associated documentation files (the "Software"), to deal
|
data/NEWS.rdoc
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
= nanoc News
|
2
2
|
|
3
|
+
== 3.0.8
|
4
|
+
|
5
|
+
* #atom_tag_for now works with base_urls that contain a path [Eric Sunshine]
|
6
|
+
* Generated root URLs in #atom_feed now end with a slash [Eric Sunshine]
|
7
|
+
* Autocompiler now recognises requests to index files
|
8
|
+
* Blogging helper now allows created_at to be a Time instance
|
9
|
+
|
3
10
|
== 3.0.7
|
4
11
|
|
5
12
|
* Fixed bug which could cause layout rules not be matched in order
|
data/README.rdoc
CHANGED
@@ -69,9 +69,11 @@ You may need to manually install the rdoc gem and update the rubygems installati
|
|
69
69
|
|
70
70
|
* Colin Barrett
|
71
71
|
* Dmitry Bilunov
|
72
|
+
* Brian Candler
|
72
73
|
* Christian Plessl
|
73
74
|
* Šime Ramov
|
74
75
|
* "Soryu"
|
76
|
+
* Eric Sunshine
|
75
77
|
* Dennis Sutch
|
76
78
|
|
77
79
|
Special thanks to Ale Muñoz.
|
data/lib/nanoc3/cli/base.rb
CHANGED
@@ -200,7 +200,7 @@ module Nanoc3::CLI
|
|
200
200
|
def handle_option(option)
|
201
201
|
case option
|
202
202
|
when :version
|
203
|
-
puts "nanoc #{Nanoc3::VERSION} (c) 2007-
|
203
|
+
puts "nanoc #{Nanoc3::VERSION} (c) 2007-2010 Denis Defreyne."
|
204
204
|
puts "Ruby #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) running on #{RUBY_PLATFORM}"
|
205
205
|
exit 0
|
206
206
|
when :verbose
|
@@ -29,7 +29,10 @@ module Nanoc3::Extra
|
|
29
29
|
# Find rep
|
30
30
|
path = Rack::Utils::unescape(env['PATH_INFO'])
|
31
31
|
reps = site.items.map { |i| i.reps }.flatten
|
32
|
-
rep = reps.find
|
32
|
+
rep = reps.find do |r|
|
33
|
+
r.path == path ||
|
34
|
+
r.raw_path == site.config[:output_dir] + path
|
35
|
+
end
|
33
36
|
|
34
37
|
if rep
|
35
38
|
serve(rep)
|
@@ -32,7 +32,10 @@ module Nanoc3::Helpers
|
|
32
32
|
# articles appear first).
|
33
33
|
def sorted_articles
|
34
34
|
require 'time'
|
35
|
-
articles.sort_by
|
35
|
+
articles.sort_by do |a|
|
36
|
+
time = a[:created_at]
|
37
|
+
time.is_a?(String) ? Time.parse(time) : time
|
38
|
+
end.reverse
|
36
39
|
end
|
37
40
|
|
38
41
|
# Returns a string representing the atom feed containing recent articles,
|
@@ -142,7 +145,10 @@ module Nanoc3::Helpers
|
|
142
145
|
end
|
143
146
|
|
144
147
|
# Get sorted relevant articles
|
145
|
-
sorted_relevant_articles = relevant_articles.sort_by
|
148
|
+
sorted_relevant_articles = relevant_articles.sort_by do |a|
|
149
|
+
time = a[:created_at]
|
150
|
+
time.is_a?(String) ? Time.parse(time) : time
|
151
|
+
end.reverse.first(limit)
|
146
152
|
|
147
153
|
# Get most recent article
|
148
154
|
last_article = sorted_relevant_articles.first
|
@@ -154,15 +160,18 @@ module Nanoc3::Helpers
|
|
154
160
|
# Build feed
|
155
161
|
xml.instruct!
|
156
162
|
xml.feed(:xmlns => 'http://www.w3.org/2005/Atom') do
|
163
|
+
root_url = @site.config[:base_url] + '/'
|
164
|
+
|
157
165
|
# Add primary attributes
|
158
|
-
xml.id
|
166
|
+
xml.id root_url
|
159
167
|
xml.title @item[:title]
|
160
168
|
|
161
169
|
# Add date
|
162
|
-
|
170
|
+
time = last_article[:created_at]
|
171
|
+
xml.updated (time.is_a?(String) ? Time.parse(time) : time).to_iso8601_time
|
163
172
|
|
164
173
|
# Add links
|
165
|
-
xml.link(:rel => 'alternate', :href =>
|
174
|
+
xml.link(:rel => 'alternate', :href => root_url)
|
166
175
|
xml.link(:rel => 'self', :href => feed_url)
|
167
176
|
|
168
177
|
# Add author information
|
@@ -183,7 +192,8 @@ module Nanoc3::Helpers
|
|
183
192
|
xml.title a[:title], :type => 'html'
|
184
193
|
|
185
194
|
# Add dates
|
186
|
-
|
195
|
+
time = a[:created_at]
|
196
|
+
xml.published (time.is_a?(String) ? Time.parse(time) : time).to_iso8601_time
|
187
197
|
xml.updated a.mtime.to_iso8601_time
|
188
198
|
|
189
199
|
# Add link
|
@@ -234,10 +244,12 @@ module Nanoc3::Helpers
|
|
234
244
|
def atom_tag_for(item)
|
235
245
|
require 'time'
|
236
246
|
|
237
|
-
hostname
|
238
|
-
|
247
|
+
hostname, base_dir = %r{^.+?://([^/]+)(.*)$}.match(@site.config[:base_url])[1..2]
|
248
|
+
|
249
|
+
time = item[:created_at]
|
250
|
+
formatted_date = (time.is_a?(String) ? Time.parse(time) : time).to_iso8601_date
|
239
251
|
|
240
|
-
'tag:' + hostname + ',' + formatted_date + ':' + (item.reps[0].path || item.identifier)
|
252
|
+
'tag:' + hostname + ',' + formatted_date + ':' + base_dir + (item.reps[0].path || item.identifier)
|
241
253
|
end
|
242
254
|
|
243
255
|
end
|
data/lib/nanoc3.rb
CHANGED
data/vendor/cri/LICENSE
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nanoc3
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Denis Defreyne
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-
|
12
|
+
date: 2010-02-24 00:00:00 +01:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|