awestruct 0.4.2.x8 → 0.4.2.x9
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.
- data/lib/awestruct/cli/auto.rb +0 -5
- data/lib/awestruct/cli/server.rb +10 -3
- data/lib/awestruct/rack/app.rb +63 -0
- data/lib/awestruct/version.rb +1 -1
- metadata +176 -58
data/lib/awestruct/cli/auto.rb
CHANGED
@@ -16,13 +16,8 @@ module Awestruct
|
|
16
16
|
listener.ignore( %r(^#{File.basename( @config.tmp_dir )}) )
|
17
17
|
listener.ignore( %r(^#{File.basename( @config.output_dir )}) )
|
18
18
|
listener.change do |modified, added, removed|
|
19
|
-
puts "modified #{modified.inspect}"
|
20
|
-
puts "added #{added.inspect}"
|
21
|
-
puts "removed #{removed.inspect}"
|
22
19
|
modified.each do |path|
|
23
20
|
engine = ::Awestruct::Engine.instance
|
24
|
-
puts "path -> #{path}"
|
25
|
-
puts "bn -> #{File.basename( engine.config.output_dir )}"
|
26
21
|
unless ( path =~ %r(#{File.basename( engine.config.output_dir) }) || path =~ /.awestruct/ )
|
27
22
|
engine.generate_page_by_output_path( path )
|
28
23
|
end
|
data/lib/awestruct/cli/server.rb
CHANGED
@@ -1,10 +1,12 @@
|
|
1
|
-
require 'webrick'
|
1
|
+
#require 'webrick'
|
2
|
+
require 'thin'
|
3
|
+
require 'awestruct/rack/app'
|
2
4
|
|
3
5
|
module Awestruct
|
4
6
|
module CLI
|
5
7
|
|
6
|
-
WEBrick::HTTPUtils::DefaultMimeTypes.store('atom', 'application/atom+xml')
|
7
|
-
WEBrick::HTTPUtils::DefaultMimeTypes.store('appcache', 'text/cache-manifest')
|
8
|
+
#WEBrick::HTTPUtils::DefaultMimeTypes.store('atom', 'application/atom+xml')
|
9
|
+
#WEBrick::HTTPUtils::DefaultMimeTypes.store('appcache', 'text/cache-manifest')
|
8
10
|
|
9
11
|
class Server
|
10
12
|
attr_reader :server
|
@@ -16,6 +18,11 @@ module Awestruct
|
|
16
18
|
end
|
17
19
|
|
18
20
|
def run
|
21
|
+
@server = Thin::Server.new( '0.0.0.0', @port, Awestruct::Rack::App.new( @path ) )
|
22
|
+
@server.start
|
23
|
+
end
|
24
|
+
|
25
|
+
def run_webrick
|
19
26
|
@server = WEBrick::HTTPServer.new( :DocumentRoot=>@path, :Port=>@port, :BindAddress=>@bind_addr )
|
20
27
|
@server.start
|
21
28
|
end
|
@@ -0,0 +1,63 @@
|
|
1
|
+
|
2
|
+
module Awestruct
|
3
|
+
module Rack
|
4
|
+
|
5
|
+
class App
|
6
|
+
def initialize(doc_root)
|
7
|
+
@doc_root = doc_root
|
8
|
+
end
|
9
|
+
|
10
|
+
def call(env)
|
11
|
+
path = env['REQUEST_PATH']
|
12
|
+
fs_path = File.join( @doc_root, path )
|
13
|
+
|
14
|
+
if ( File.directory?( fs_path ) )
|
15
|
+
if ( ! ( path =~ %r(/$) ) )
|
16
|
+
return [ 301,
|
17
|
+
{ :location=>path + '/' },
|
18
|
+
"Redirecting to: #{path}" ]
|
19
|
+
elsif ( File.exist?( File.join( fs_path, 'index.html' ) ) )
|
20
|
+
fs_path = File.join( fs_path, 'index.html' )
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
if ( File.exist?( fs_path ) )
|
25
|
+
[ 200,
|
26
|
+
{},
|
27
|
+
read_content( fs_path ) ]
|
28
|
+
else
|
29
|
+
[ 404,
|
30
|
+
{},
|
31
|
+
read_error_document(path) ]
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
def read_error_document( path )
|
36
|
+
doc_path = nil
|
37
|
+
htaccess = File.join( @doc_root, '.htaccess' )
|
38
|
+
if ( File.exist?( htaccess ) )
|
39
|
+
File.open( htaccess ).each_line do |line|
|
40
|
+
if ( line =~ %r(^.*ErrorDocument[ \t]+404[ \t]+(.+)$) )
|
41
|
+
doc_path = $1
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
if ( doc_path )
|
46
|
+
fs_doc_path = File.join( @doc_root, doc_path )
|
47
|
+
return read_content( fs_doc_path ) if File.exist?( fs_doc_path )
|
48
|
+
end
|
49
|
+
"404: Not Found: #{path}"
|
50
|
+
end
|
51
|
+
|
52
|
+
|
53
|
+
def read_content( path )
|
54
|
+
input_stream = IO.open(IO.sysopen(path, "rb"), "rb" )
|
55
|
+
result = input_stream.read
|
56
|
+
return result
|
57
|
+
ensure
|
58
|
+
input_stream.close
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
end
|
63
|
+
end
|
data/lib/awestruct/version.rb
CHANGED
metadata
CHANGED
@@ -1,8 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: awestruct
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: 756435199
|
4
5
|
prerelease: 6
|
5
|
-
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 4
|
9
|
+
- 2
|
10
|
+
- x
|
11
|
+
- 9
|
12
|
+
version: 0.4.2.x9
|
6
13
|
platform: ruby
|
7
14
|
authors:
|
8
15
|
- Bob McWhirter
|
@@ -13,203 +20,308 @@ cert_chain: []
|
|
13
20
|
date: 2012-06-07 00:00:00 Z
|
14
21
|
dependencies:
|
15
22
|
- !ruby/object:Gem::Dependency
|
16
|
-
|
23
|
+
prerelease: false
|
24
|
+
type: :runtime
|
17
25
|
requirement: &id001 !ruby/object:Gem::Requirement
|
18
26
|
none: false
|
19
27
|
requirements:
|
20
28
|
- - ~>
|
21
29
|
- !ruby/object:Gem::Version
|
30
|
+
hash: 51
|
31
|
+
segments:
|
32
|
+
- 0
|
33
|
+
- 8
|
34
|
+
- 6
|
22
35
|
version: 0.8.6
|
23
|
-
|
24
|
-
prerelease: false
|
36
|
+
name: hpricot
|
25
37
|
version_requirements: *id001
|
26
38
|
- !ruby/object:Gem::Dependency
|
27
|
-
|
39
|
+
prerelease: false
|
40
|
+
type: :runtime
|
28
41
|
requirement: &id002 !ruby/object:Gem::Requirement
|
29
42
|
none: false
|
30
43
|
requirements:
|
31
44
|
- - ~>
|
32
45
|
- !ruby/object:Gem::Version
|
46
|
+
hash: 11
|
47
|
+
segments:
|
48
|
+
- 3
|
49
|
+
- 1
|
50
|
+
- 4
|
33
51
|
version: 3.1.4
|
34
|
-
|
35
|
-
prerelease: false
|
52
|
+
name: haml
|
36
53
|
version_requirements: *id002
|
37
54
|
- !ruby/object:Gem::Dependency
|
38
|
-
|
55
|
+
prerelease: false
|
56
|
+
type: :runtime
|
39
57
|
requirement: &id003 !ruby/object:Gem::Requirement
|
40
58
|
none: false
|
41
59
|
requirements:
|
42
60
|
- - ~>
|
43
61
|
- !ruby/object:Gem::Version
|
62
|
+
hash: 29
|
63
|
+
segments:
|
64
|
+
- 3
|
65
|
+
- 1
|
66
|
+
- 15
|
44
67
|
version: 3.1.15
|
45
|
-
|
46
|
-
prerelease: false
|
68
|
+
name: sass
|
47
69
|
version_requirements: *id003
|
48
70
|
- !ruby/object:Gem::Dependency
|
49
|
-
|
71
|
+
prerelease: false
|
72
|
+
type: :runtime
|
50
73
|
requirement: &id004 !ruby/object:Gem::Requirement
|
51
74
|
none: false
|
52
75
|
requirements:
|
53
76
|
- - ~>
|
54
77
|
- !ruby/object:Gem::Version
|
78
|
+
hash: 3
|
79
|
+
segments:
|
80
|
+
- 1
|
81
|
+
- 5
|
82
|
+
- 0
|
55
83
|
version: 1.5.0
|
56
|
-
|
57
|
-
prerelease: false
|
84
|
+
name: hashery
|
58
85
|
version_requirements: *id004
|
59
86
|
- !ruby/object:Gem::Dependency
|
60
|
-
|
87
|
+
prerelease: false
|
88
|
+
type: :runtime
|
61
89
|
requirement: &id005 !ruby/object:Gem::Requirement
|
62
90
|
none: false
|
63
91
|
requirements:
|
64
92
|
- - ~>
|
65
93
|
- !ruby/object:Gem::Version
|
94
|
+
hash: 31
|
95
|
+
segments:
|
96
|
+
- 1
|
97
|
+
- 6
|
98
|
+
- 8
|
66
99
|
version: 1.6.8
|
67
|
-
|
68
|
-
prerelease: false
|
100
|
+
name: rdiscount
|
69
101
|
version_requirements: *id005
|
70
102
|
- !ruby/object:Gem::Dependency
|
71
|
-
|
103
|
+
prerelease: false
|
104
|
+
type: :runtime
|
72
105
|
requirement: &id006 !ruby/object:Gem::Requirement
|
73
106
|
none: false
|
74
107
|
requirements:
|
75
108
|
- - ~>
|
76
109
|
- !ruby/object:Gem::Version
|
110
|
+
hash: 37
|
111
|
+
segments:
|
112
|
+
- 4
|
113
|
+
- 2
|
114
|
+
- 9
|
77
115
|
version: 4.2.9
|
78
|
-
|
79
|
-
prerelease: false
|
116
|
+
name: RedCloth
|
80
117
|
version_requirements: *id006
|
81
118
|
- !ruby/object:Gem::Dependency
|
82
|
-
|
119
|
+
prerelease: false
|
120
|
+
type: :runtime
|
83
121
|
requirement: &id007 !ruby/object:Gem::Requirement
|
84
122
|
none: false
|
85
123
|
requirements:
|
86
124
|
- - ~>
|
87
125
|
- !ruby/object:Gem::Version
|
126
|
+
hash: 7
|
127
|
+
segments:
|
128
|
+
- 2
|
129
|
+
- 2
|
130
|
+
- 0
|
88
131
|
version: 2.2.0
|
89
|
-
|
90
|
-
prerelease: false
|
132
|
+
name: coffee-script
|
91
133
|
version_requirements: *id007
|
92
134
|
- !ruby/object:Gem::Dependency
|
93
|
-
|
135
|
+
prerelease: false
|
136
|
+
type: :runtime
|
94
137
|
requirement: &id008 !ruby/object:Gem::Requirement
|
95
138
|
none: false
|
96
139
|
requirements:
|
97
140
|
- - ~>
|
98
141
|
- !ruby/object:Gem::Version
|
142
|
+
hash: 7
|
143
|
+
segments:
|
144
|
+
- 1
|
145
|
+
- 5
|
146
|
+
- 2
|
99
147
|
version: 1.5.2
|
100
|
-
|
101
|
-
prerelease: false
|
148
|
+
name: nokogiri
|
102
149
|
version_requirements: *id008
|
103
150
|
- !ruby/object:Gem::Dependency
|
104
|
-
|
151
|
+
prerelease: false
|
152
|
+
type: :runtime
|
105
153
|
requirement: &id009 !ruby/object:Gem::Requirement
|
106
154
|
none: false
|
107
155
|
requirements:
|
108
156
|
- - ~>
|
109
157
|
- !ruby/object:Gem::Version
|
158
|
+
hash: 45
|
159
|
+
segments:
|
160
|
+
- 0
|
161
|
+
- 12
|
162
|
+
- 1
|
110
163
|
version: 0.12.1
|
111
|
-
|
112
|
-
prerelease: false
|
164
|
+
name: compass
|
113
165
|
version_requirements: *id009
|
114
166
|
- !ruby/object:Gem::Dependency
|
115
|
-
|
167
|
+
prerelease: false
|
168
|
+
type: :runtime
|
116
169
|
requirement: &id010 !ruby/object:Gem::Requirement
|
117
170
|
none: false
|
118
171
|
requirements:
|
119
172
|
- - ~>
|
120
173
|
- !ruby/object:Gem::Version
|
174
|
+
hash: 63
|
175
|
+
segments:
|
176
|
+
- 0
|
177
|
+
- 10
|
178
|
+
- 4
|
121
179
|
version: 0.10.4
|
122
|
-
|
123
|
-
prerelease: false
|
180
|
+
name: compass-960-plugin
|
124
181
|
version_requirements: *id010
|
125
182
|
- !ruby/object:Gem::Dependency
|
126
|
-
|
183
|
+
prerelease: false
|
184
|
+
type: :runtime
|
127
185
|
requirement: &id011 !ruby/object:Gem::Requirement
|
128
186
|
none: false
|
129
187
|
requirements:
|
130
188
|
- - ~>
|
131
189
|
- !ruby/object:Gem::Version
|
190
|
+
hash: 13
|
191
|
+
segments:
|
192
|
+
- 2
|
193
|
+
- 0
|
194
|
+
- 1
|
132
195
|
version: 2.0.1
|
133
|
-
|
134
|
-
prerelease: false
|
196
|
+
name: bootstrap-sass
|
135
197
|
version_requirements: *id011
|
136
198
|
- !ruby/object:Gem::Dependency
|
137
|
-
|
199
|
+
prerelease: false
|
200
|
+
type: :runtime
|
138
201
|
requirement: &id012 !ruby/object:Gem::Requirement
|
139
202
|
none: false
|
140
203
|
requirements:
|
141
204
|
- - ~>
|
142
205
|
- !ruby/object:Gem::Version
|
206
|
+
hash: 13
|
207
|
+
segments:
|
208
|
+
- 0
|
209
|
+
- 5
|
210
|
+
- 3
|
143
211
|
version: 0.5.3
|
144
|
-
|
145
|
-
prerelease: false
|
212
|
+
name: org-ruby
|
146
213
|
version_requirements: *id012
|
147
214
|
- !ruby/object:Gem::Dependency
|
148
|
-
|
215
|
+
prerelease: false
|
216
|
+
type: :runtime
|
149
217
|
requirement: &id013 !ruby/object:Gem::Requirement
|
150
218
|
none: false
|
151
219
|
requirements:
|
152
220
|
- - ~>
|
153
221
|
- !ruby/object:Gem::Version
|
222
|
+
hash: 3
|
223
|
+
segments:
|
224
|
+
- 1
|
225
|
+
- 6
|
226
|
+
- 6
|
154
227
|
version: 1.6.6
|
155
|
-
|
156
|
-
prerelease: false
|
228
|
+
name: json
|
157
229
|
version_requirements: *id013
|
158
230
|
- !ruby/object:Gem::Dependency
|
159
|
-
|
231
|
+
prerelease: false
|
232
|
+
type: :runtime
|
160
233
|
requirement: &id014 !ruby/object:Gem::Requirement
|
161
234
|
none: false
|
162
235
|
requirements:
|
163
236
|
- - ~>
|
164
237
|
- !ruby/object:Gem::Version
|
238
|
+
hash: 19
|
239
|
+
segments:
|
240
|
+
- 0
|
241
|
+
- 1
|
242
|
+
- 4
|
165
243
|
version: 0.1.4
|
166
|
-
|
167
|
-
prerelease: false
|
244
|
+
name: notifier
|
168
245
|
version_requirements: *id014
|
169
246
|
- !ruby/object:Gem::Dependency
|
170
|
-
|
247
|
+
prerelease: false
|
248
|
+
type: :runtime
|
171
249
|
requirement: &id015 !ruby/object:Gem::Requirement
|
172
250
|
none: false
|
173
251
|
requirements:
|
174
252
|
- - ~>
|
175
253
|
- !ruby/object:Gem::Version
|
254
|
+
hash: 21
|
255
|
+
segments:
|
256
|
+
- 1
|
257
|
+
- 2
|
258
|
+
- 5
|
176
259
|
version: 1.2.5
|
177
|
-
|
178
|
-
prerelease: false
|
260
|
+
name: git
|
179
261
|
version_requirements: *id015
|
180
262
|
- !ruby/object:Gem::Dependency
|
181
|
-
|
263
|
+
prerelease: false
|
264
|
+
type: :runtime
|
182
265
|
requirement: &id016 !ruby/object:Gem::Requirement
|
183
266
|
none: false
|
184
267
|
requirements:
|
185
268
|
- - ~>
|
186
269
|
- !ruby/object:Gem::Version
|
270
|
+
hash: 11
|
271
|
+
segments:
|
272
|
+
- 0
|
273
|
+
- 4
|
274
|
+
- 2
|
187
275
|
version: 0.4.2
|
188
|
-
|
189
|
-
prerelease: false
|
276
|
+
name: listen
|
190
277
|
version_requirements: *id016
|
191
278
|
- !ruby/object:Gem::Dependency
|
192
|
-
|
279
|
+
prerelease: false
|
280
|
+
type: :runtime
|
193
281
|
requirement: &id017 !ruby/object:Gem::Requirement
|
194
282
|
none: false
|
195
283
|
requirements:
|
196
284
|
- - ~>
|
197
285
|
- !ruby/object:Gem::Version
|
198
|
-
|
199
|
-
|
200
|
-
|
286
|
+
hash: 25
|
287
|
+
segments:
|
288
|
+
- 1
|
289
|
+
- 3
|
290
|
+
- 1
|
291
|
+
version: 1.3.1
|
292
|
+
name: thin
|
201
293
|
version_requirements: *id017
|
202
294
|
- !ruby/object:Gem::Dependency
|
203
|
-
|
295
|
+
prerelease: false
|
296
|
+
type: :development
|
204
297
|
requirement: &id018 !ruby/object:Gem::Requirement
|
205
298
|
none: false
|
206
299
|
requirements:
|
207
300
|
- - ~>
|
208
301
|
- !ruby/object:Gem::Version
|
209
|
-
|
210
|
-
|
211
|
-
|
302
|
+
hash: 17
|
303
|
+
segments:
|
304
|
+
- 2
|
305
|
+
- 9
|
306
|
+
version: "2.9"
|
307
|
+
name: rspec
|
212
308
|
version_requirements: *id018
|
309
|
+
- !ruby/object:Gem::Dependency
|
310
|
+
prerelease: false
|
311
|
+
type: :development
|
312
|
+
requirement: &id019 !ruby/object:Gem::Requirement
|
313
|
+
none: false
|
314
|
+
requirements:
|
315
|
+
- - ~>
|
316
|
+
- !ruby/object:Gem::Version
|
317
|
+
hash: 63
|
318
|
+
segments:
|
319
|
+
- 0
|
320
|
+
- 9
|
321
|
+
- 2
|
322
|
+
version: 0.9.2
|
323
|
+
name: rake
|
324
|
+
version_requirements: *id019
|
213
325
|
description: Awestruct is a framework for creating static HTML sites.
|
214
326
|
email: bob@mcwhirter.org
|
215
327
|
executables:
|
@@ -287,6 +399,7 @@ files:
|
|
287
399
|
- lib/awestruct/page.rb
|
288
400
|
- lib/awestruct/page_loader.rb
|
289
401
|
- lib/awestruct/pipeline.rb
|
402
|
+
- lib/awestruct/rack/app.rb
|
290
403
|
- lib/awestruct/site.rb
|
291
404
|
- lib/awestruct/util/default_inflections.rb
|
292
405
|
- lib/awestruct/util/inflector.rb
|
@@ -313,7 +426,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
313
426
|
requirements:
|
314
427
|
- - ">="
|
315
428
|
- !ruby/object:Gem::Version
|
316
|
-
hash:
|
429
|
+
hash: 3
|
317
430
|
segments:
|
318
431
|
- 0
|
319
432
|
version: "0"
|
@@ -322,6 +435,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
322
435
|
requirements:
|
323
436
|
- - ">"
|
324
437
|
- !ruby/object:Gem::Version
|
438
|
+
hash: 25
|
439
|
+
segments:
|
440
|
+
- 1
|
441
|
+
- 3
|
442
|
+
- 1
|
325
443
|
version: 1.3.1
|
326
444
|
requirements: []
|
327
445
|
|