sitefuel 0.0.0a

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. data/README +86 -0
  2. data/RELEASE_NOTES +7 -0
  3. data/bin/sitefuel +162 -0
  4. data/lib/sitefuel/Configuration.rb +35 -0
  5. data/lib/sitefuel/SiteFuelLogger.rb +128 -0
  6. data/lib/sitefuel/SiteFuelRuntime.rb +293 -0
  7. data/lib/sitefuel/extensions/ArrayComparisons.rb +34 -0
  8. data/lib/sitefuel/extensions/DynamicClassMethods.rb +19 -0
  9. data/lib/sitefuel/extensions/FileComparison.rb +24 -0
  10. data/lib/sitefuel/extensions/Silently.rb +27 -0
  11. data/lib/sitefuel/extensions/StringFormatting.rb +75 -0
  12. data/lib/sitefuel/extensions/SymbolComparison.rb +13 -0
  13. data/lib/sitefuel/external/AbstractExternalProgram.rb +616 -0
  14. data/lib/sitefuel/external/ExternalProgramTestCase.rb +67 -0
  15. data/lib/sitefuel/external/GIT.rb +9 -0
  16. data/lib/sitefuel/external/JPEGTran.rb +68 -0
  17. data/lib/sitefuel/external/PNGCrush.rb +66 -0
  18. data/lib/sitefuel/processors/AbstractExternalProgramProcessor.rb +72 -0
  19. data/lib/sitefuel/processors/AbstractProcessor.rb +378 -0
  20. data/lib/sitefuel/processors/AbstractStringBasedProcessor.rb +88 -0
  21. data/lib/sitefuel/processors/CSSProcessor.rb +84 -0
  22. data/lib/sitefuel/processors/HAMLProcessor.rb +52 -0
  23. data/lib/sitefuel/processors/HTMLProcessor.rb +211 -0
  24. data/lib/sitefuel/processors/JavaScriptProcessor.rb +57 -0
  25. data/lib/sitefuel/processors/PHPProcessor.rb +32 -0
  26. data/lib/sitefuel/processors/PNGProcessor.rb +80 -0
  27. data/lib/sitefuel/processors/RHTMLProcessor.rb +25 -0
  28. data/lib/sitefuel/processors/SASSProcessor.rb +50 -0
  29. data/test/processor_listing.rb +28 -0
  30. data/test/test_AbstractExternalProgram.rb +186 -0
  31. data/test/test_AbstractProcessor.rb +237 -0
  32. data/test/test_AbstractStringBasedProcessor.rb +48 -0
  33. data/test/test_AllProcessors.rb +65 -0
  34. data/test/test_ArrayComparisons.rb +32 -0
  35. data/test/test_CSSProcessor.rb +120 -0
  36. data/test/test_FileComparisons.rb +42 -0
  37. data/test/test_HAMLProcessor.rb.rb +60 -0
  38. data/test/test_HTMLProcessor.rb +186 -0
  39. data/test/test_JPEGTran.rb +40 -0
  40. data/test/test_JavaScriptProcessor.rb +63 -0
  41. data/test/test_PHPProcessor.rb +51 -0
  42. data/test/test_PNGCrush.rb +58 -0
  43. data/test/test_PNGProcessor.rb +32 -0
  44. data/test/test_RHTMLProcessor.rb +62 -0
  45. data/test/test_SASSProcessor.rb +68 -0
  46. data/test/test_SiteFuelLogging.rb +79 -0
  47. data/test/test_SiteFuelRuntime.rb +96 -0
  48. data/test/test_StringFormatting.rb +51 -0
  49. data/test/test_SymbolComparison.rb +27 -0
  50. data/test/test_images/sample_jpg01.jpg +0 -0
  51. data/test/test_images/sample_png01.png +0 -0
  52. data/test/test_programs/versioning.rb +26 -0
  53. data/test/test_sites/simplehtml/deployment.yml +22 -0
  54. data/test/test_sites/simplehtml/index.html +66 -0
  55. data/test/test_sites/simplehtml/style.css +40 -0
  56. data/test/ts_all.rb +39 -0
  57. metadata +165 -0
@@ -0,0 +1,79 @@
1
+ #
2
+ # File:: test_SiteFuelLogging.rb
3
+ # Author:: wkm
4
+ # Copyright:: 2009
5
+ # License:: GPL
6
+ #
7
+ # Unit tests for the sitefuel logging class
8
+ #
9
+
10
+ $:.unshift File.join(File.dirname(__FILE__),'..','lib')
11
+
12
+ require 'test/unit'
13
+ require 'logger'
14
+
15
+ require 'sitefuel/SiteFuelLogger'
16
+
17
+ include SiteFuel
18
+
19
+ class TestSiteFuelLogging < Test::Unit::TestCase
20
+ def test_fatal
21
+ log = SiteFuelLogger.instance
22
+ log.level = Logger::UNKNOWN
23
+
24
+ fatal = log.fatal_count
25
+ assert_equal fatal, log.fatal_count
26
+ log.fatal('fatal error')
27
+ assert_equal fatal+1, log.fatal_count
28
+ log.fatal('apparently not so fatal, since here\'s another fatal error')
29
+ assert_equal fatal+2, log.fatal_count
30
+ end
31
+
32
+ def test_errors
33
+ log = SiteFuelLogger.instance
34
+ log.level = Logger::UNKNOWN
35
+
36
+ error = log.error_count
37
+ assert_equal error, log.error_count
38
+ log.error('just an error')
39
+ assert_equal error+1, log.error_count
40
+ log.error('another error')
41
+ assert_equal error+2, log.error_count
42
+ end
43
+
44
+ def test_warnings
45
+ log = SiteFuelLogger.instance
46
+ log.level = Logger::UNKNOWN
47
+
48
+ warn = log.warn_count
49
+ assert_equal warn, log.warn_count
50
+ log.warn('just a warning')
51
+ assert_equal warn+1, log.warn_count
52
+ log.warn('another warning :)')
53
+ assert_equal warn+2, log.warn_count
54
+ end
55
+
56
+ def test_info_messages
57
+ log = SiteFuelLogger.instance
58
+ log.level = Logger::UNKNOWN
59
+
60
+ info = log.info_count
61
+ assert_equal info, log.info_count
62
+ log.info('oh hello, just letting you know...')
63
+ assert_equal info+1, log.info_count
64
+ log.info('... the sky is still blue.')
65
+ assert_equal info+2, log.info_count
66
+ end
67
+
68
+ def test_debug_messages
69
+ log = SiteFuelLogger.instance
70
+ log.level = Logger::UNKNOWN
71
+
72
+ debug = log.debug_count
73
+ assert_equal debug, log.debug_count
74
+ log.debug('about to run an assert!')
75
+ assert_equal debug+1, log.debug_count
76
+ log.debug('wadda ya know. about to run another assert.')
77
+ assert_equal debug+2, log.debug_count
78
+ end
79
+ end
@@ -0,0 +1,96 @@
1
+ #
2
+ # File:: test_SiteFuelRuntime.m
3
+ # Author:: wkm
4
+ # Copyright:: 2009
5
+ # License:: GPL
6
+ #
7
+ # Unit tests for the SiteFuelRuntime class.
8
+ #
9
+
10
+ $:.unshift File.join(File.dirname(__FILE__), '..', 'lib')
11
+
12
+ require 'test/unit'
13
+ require 'logger'
14
+
15
+ require 'sitefuel/SiteFuelRuntime'
16
+ require 'sitefuel/SiteFuelLogger'
17
+
18
+ require 'sitefuel/processors/AbstractProcessor'
19
+ require 'sitefuel/processors/HTMLProcessor'
20
+ require 'sitefuel/processors/CSSProcessor'
21
+ require 'sitefuel/processors/SASSProcessor'
22
+
23
+ include SiteFuel
24
+
25
+ class HTMLClasherTest < Processor::AbstractProcessor
26
+ def self.file_patterns
27
+ [".html"]
28
+ end
29
+ end
30
+
31
+ class OtherProcessorA < Processor::AbstractProcessor; end
32
+ class OtherProcessorB < Processor::AbstractProcessor; end
33
+
34
+ class TestSiteFuelRuntime < Test::Unit::TestCase
35
+
36
+ def setup
37
+ @runtime = SiteFuelRuntime.new
38
+ end
39
+
40
+ def test_processor_picking
41
+ assert_equal Processor::CSSProcessor, @runtime.choose_processor("foo.css")
42
+ assert_equal Processor::HTMLProcessor, @runtime.choose_processor("foo.html")
43
+ assert_equal Processor::HTMLProcessor, @runtime.choose_processor("FOO.HtM")
44
+
45
+ assert_equal Processor::CSSProcessor, @runtime.choose_processor!("foo.css")
46
+ assert_equal Processor::HTMLProcessor, @runtime.choose_processor!("foo.html")
47
+ assert_equal Processor::HTMLProcessor, @runtime.choose_processor!("FOO.HtM")
48
+
49
+ assert_nil @runtime.choose_processor("foo.xxxx")
50
+ assert_nil @runtime.choose_processor("foocss")
51
+ assert_nil @runtime.choose_processor("foohtml")
52
+
53
+ assert_nil @runtime.choose_processor!("foo.xxxx")
54
+ assert_nil @runtime.choose_processor!("foocss")
55
+ assert_nil @runtime.choose_processor!("foohtml")
56
+ end
57
+
58
+ def test_processor_finding
59
+ # test that we don't have the clasher, since it doesn't end with Processor
60
+ assert !SiteFuelRuntime.find_processors.include?(HTMLClasherTest), 'HTMLClasherTest included'
61
+
62
+ # test that we do have the basic processor test suite
63
+ assert SiteFuelRuntime.find_processors.include?(Processor::HTMLProcessor)
64
+ assert SiteFuelRuntime.find_processors.include?(Processor::CSSProcessor)
65
+ assert SiteFuelRuntime.find_processors.include?(Processor::SASSProcessor)
66
+ end
67
+
68
+ def test_processor_clashing
69
+
70
+ # test adding of a single processor
71
+ original = @runtime.processors.clone
72
+ @runtime.add_processor(HTMLClasherTest)
73
+ assert_equal [HTMLClasherTest], @runtime.processors - original
74
+
75
+ # test adding of an array of processors
76
+ original = @runtime.processors.clone
77
+ @runtime.add_processor([OtherProcessorA, OtherProcessorB])
78
+ assert_equal [OtherProcessorA, OtherProcessorB], @runtime.processors - original
79
+
80
+ assert_raise Processor::MultipleApplicableProcessors do
81
+ @runtime.choose_processor("foo.html")
82
+ end
83
+
84
+ # test that SiteFuelLogger#choose_processor! doesn't throw
85
+ # a message but does log a warning
86
+ SiteFuelLogger.instance.level = Logger::UNKNOWN
87
+ warnings = SiteFuelLogger.instance.warn_count
88
+ assert_nothing_raised do
89
+ @runtime.choose_processor!("foo.html")
90
+ end
91
+ assert_equal warnings+1, SiteFuelLogger.instance.warn_count
92
+
93
+ assert_equal Processor::HTMLProcessor, @runtime.choose_processor("foo.htm")
94
+
95
+ end
96
+ end
@@ -0,0 +1,51 @@
1
+ #
2
+ # File:: test_StringFormatting.rb
3
+ # Author:: wkm
4
+ # Copyright:: 2009
5
+ # License:: GPL
6
+ #
7
+ # Unit tests for String#cabbrev, String#labbrev, and String#rabbrev
8
+ # methods. The main thing these look for is off-by-one errors.
9
+ #
10
+
11
+ $:.unshift File.join(File.dirname(__FILE__),'..','lib')
12
+
13
+ require 'test/unit'
14
+ require 'sitefuel/extensions/StringFormatting'
15
+
16
+ class TestString < Test::Unit::TestCase
17
+ def test_cabbrev
18
+ assert_equal "hello world", "hello world".cabbrev(11)
19
+ assert_equal "hello world", "hello world".cabbrev(12)
20
+
21
+ assert_equal 12, "the quick brown fox jumped over the lazy dog".cabbrev(12).length
22
+ assert_equal "the q... dog", "the quick brown fox jumped over the lazy dog".cabbrev(12)
23
+ assert_equal "the quick brown fox... over the lazy dog", "the quick brown fox jumped over the lazy dog".cabbrev(40)
24
+ end
25
+
26
+ def test_rabbrev
27
+ assert_equal "foo", "foo".rabbrev(12)
28
+
29
+ assert_equal "...brown dog", "the quick brown dog".rabbrev(12)
30
+ assert_equal 12, "the quick brown dog".rabbrev(12).length
31
+ end
32
+
33
+ def test_labbrev
34
+ assert_equal "foo", "foo".labbrev(12)
35
+
36
+ assert_equal "the quick...", "the quick brown dog".labbrev(12)
37
+ assert_equal 12, "the quick brown dog".labbrev(12).length
38
+ end
39
+
40
+ def test_align
41
+ assert_equal(
42
+ "hi\n hello world\nyup there\n it is!\n",
43
+ %q{
44
+ hi
45
+ hello world
46
+ yup there
47
+ it is!
48
+ }.align
49
+ )
50
+ end
51
+ end
@@ -0,0 +1,27 @@
1
+ #
2
+ # File:: test_SymbolComparisons.rb
3
+ # Author:: wkm
4
+ # Copyright:: 2009
5
+ # License:: GPL
6
+ #
7
+ # Unit tests for the spaceship method and hence sorting of symbols
8
+ #
9
+
10
+ $:.unshift File.join(File.dirname(__FILE__), '..', 'lib')
11
+
12
+ require 'test/unit'
13
+ require 'sitefuel/extensions/SymbolComparison'
14
+
15
+ class TestSymbolComparisons < Test::Unit::TestCase
16
+ def test_spaceship
17
+ assert_equal(-1, :a<=>:b)
18
+ assert_equal 0, :a<=>:a
19
+ assert_equal 1, :b<=>:a
20
+
21
+ assert_equal(-1, :a<=>:ab)
22
+ end
23
+
24
+ def test_sort
25
+ assert_equal [:a, :b, :c], [:c, :a, :b].sort
26
+ end
27
+ end
Binary file
Binary file
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/ruby
2
+ #
3
+ # File:: versioning.rb
4
+ # Author:: wkm
5
+ # Copyright:: 2009
6
+ # License:: GPL
7
+ #
8
+ # Simple program for testing various versioning controls
9
+ #
10
+
11
+
12
+ if not $*.empty?
13
+ case $*[0]
14
+ when '--version'
15
+ puts '0.1.2'
16
+
17
+ when '--version-2'
18
+ puts '0.1.2asdad'
19
+
20
+ when '--version-3'
21
+ puts '0.2'
22
+
23
+ when '--version-4'
24
+ puts 'test-program v.0.1.2'
25
+ end
26
+ end
@@ -0,0 +1,22 @@
1
+ # deployment settings for the 'simplehtml' test
2
+ processormappings:
3
+ html: .html
4
+ css: .css
5
+ png: .png
6
+
7
+ global:
8
+ filterset: full
9
+
10
+ html:
11
+ filterset:
12
+ - whitespace
13
+ - beautifytext
14
+
15
+ css:
16
+ filterset:
17
+ - whitespace
18
+
19
+ png:
20
+ filterset:
21
+ # try very hard to get smaller PNGs:
22
+ - bruteforce
@@ -0,0 +1,66 @@
1
+ <html>
2
+ <head>
3
+ <title>
4
+ sitefuel :: basic test
5
+ </title>
6
+ <link rel='stylesheet' type='text/css' href='style.css'>
7
+ </head>
8
+ <body>
9
+ <h1>HTML and CSS deployment test for <span class='l'>site<span class='f'>fuel</span></span></h1>
10
+ <p>
11
+ This is a baseline test of the HTML and CSS processors in sitefuel.
12
+ </p>
13
+
14
+ <h2>Testing tweakers</h2>
15
+ <h3>Dashes</h3>
16
+ <p>
17
+ This tests the dash tweaker. Sentences separated by triple
18
+ dashes---like so---should be nicely converted into em dashes.
19
+ Similarly, number separated by double dashes---like 50--60---should
20
+ be nicely converted into en dashes.
21
+ </p>
22
+
23
+ <h3>Quotes</h3>
24
+ <p>
25
+ The various quotes should be made into their appropriate left or
26
+ right forms.
27
+ </p>
28
+ <p>
29
+ Single quotes: Richard said 'Hi!'.
30
+ </p>
31
+ <p>
32
+ Double quotes: Richard said "Hi!".
33
+ </p>
34
+ <p>
35
+ Apostrophes: This is Richard's car.
36
+ </p>
37
+
38
+ <h3>Arrows</h3>
39
+ <p>
40
+ Arrows are converted as well:
41
+ </p>
42
+ <p>
43
+ a --> b, a ---> b, a ==> b, a ===> b,<br>
44
+ a <-- b, a <--- b, a <== b, a <=== b,<br>
45
+ </p>
46
+
47
+ <h2>JavaScript Includes</h2>
48
+ <p>
49
+ JavaScript elements should automatically be passed through the
50
+ JavaScript processor for minification.
51
+ </p>
52
+ <pre>&lt;script type="text/javascript"&gt;
53
+ // some random java script invented by seriously fudging the
54
+ // google analytics includes
55
+ var protocol = document.location.protocol
56
+ document.write("Web protocol used: "+protocol)
57
+ &lt;/script&gt;</pre>
58
+
59
+ <h2>HTML injection</h2>
60
+ <p>
61
+ It's possible to specify an HTML fragment to include at the bottom
62
+ of every page (right above the &lt;body&gt; tag). This is intended
63
+ for automatically inserting traffic statistics code.
64
+ </p>
65
+ </body>
66
+ </html>
@@ -0,0 +1,40 @@
1
+ body {
2
+ background: #ffffff;
3
+ margin: 5em;
4
+ font-family: 'lucida grande',helvetica,sans-serif;
5
+ font-size: 13pt;
6
+ }
7
+
8
+ h1 {
9
+ font-size: 16pt;
10
+ }
11
+ h2 {
12
+ font-size: 13pt;
13
+ margin-top: 3em;
14
+ }
15
+ h3 {
16
+ font-size: 13pt;
17
+ font-weight: normal;
18
+ text-transform: lowercase;
19
+ font-variant: small-caps;
20
+ margin-top: 2.5em;
21
+ margin-left: 1em
22
+ }
23
+ h2 + h3 {
24
+ margin-top: 0;
25
+ }
26
+
27
+ p {
28
+ line-height: 130%;
29
+ margin-left: 1em;
30
+ width: 30em;
31
+ }
32
+
33
+ .l {
34
+ font-variant: small-caps;
35
+ }
36
+ .f {
37
+ color: #f90;
38
+ font-style: italic;
39
+ font-variant:normal;
40
+ }
data/test/ts_all.rb ADDED
@@ -0,0 +1,39 @@
1
+ #!/usr/bin/ruby -wrubygems
2
+
3
+ #
4
+ # File:: ts_all.rb
5
+ # Author:: wkm
6
+ # Copyright:: 2009
7
+ # License:: GPL
8
+ #
9
+ # The entirety test suite. Runs all tests.
10
+ #
11
+
12
+ require 'test/unit'
13
+ require 'term/ansicolor'
14
+ include Term::ANSIColor
15
+
16
+ $Divider = '='*60
17
+
18
+ # programmatically load all test files in this directory
19
+ testfiles = Dir[File.join(File.dirname(__FILE__), "test_*.rb")];
20
+
21
+ # some whitespace
22
+
23
+ puts $Divider
24
+ puts bold('Found: %d test files' % testfiles.length)
25
+ puts testfiles.join("\n")
26
+
27
+ puts $Divider
28
+ puts bold('Loading:')
29
+
30
+ testfiles.each do |testfile|
31
+ load testfile
32
+ putc '.'
33
+ STDOUT.flush
34
+ end
35
+ puts
36
+
37
+ puts $Divider
38
+ puts bold('Results:')
39
+
metadata ADDED
@@ -0,0 +1,165 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: sitefuel
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0a
5
+ platform: ruby
6
+ authors:
7
+ - wkm
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-12-17 00:00:00 -06:00
13
+ default_executable: sitefuel
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: hpricot
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0.8"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: jsmin
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "1.0"
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: cssmin
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: "1.0"
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: haml
47
+ type: :runtime
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: "2.2"
54
+ version:
55
+ description: |
56
+ == 0.1.0
57
+ * initial public release of the SiteFuel alpha
58
+ * support for trivial minification of HTML, RHTML, and PHP.
59
+ * uses CSSMin and JSMin to minify CSS and JavaScript; both in individual
60
+ files and embedded in HTML.
61
+ * uses pngcrush and jpegtran to minify PNG and JPEG images.
62
+ * support for the Git and SVN version control systems.
63
+
64
+ email: wkm@sitefuel.org
65
+ executables:
66
+ - sitefuel
67
+ extensions: []
68
+
69
+ extra_rdoc_files:
70
+ - README
71
+ - RELEASE_NOTES
72
+ files:
73
+ - bin/sitefuel
74
+ - test/test_AbstractExternalProgram.rb
75
+ - test/test_RHTMLProcessor.rb
76
+ - test/processor_listing.rb
77
+ - test/test_AllProcessors.rb
78
+ - test/test_SymbolComparison.rb
79
+ - test/test_PNGProcessor.rb
80
+ - test/test_CSSProcessor.rb
81
+ - test/test_images/sample_png01.png
82
+ - test/test_images/sample_jpg01.jpg
83
+ - test/test_ArrayComparisons.rb
84
+ - test/ts_all.rb
85
+ - test/test_SiteFuelRuntime.rb
86
+ - test/test_AbstractStringBasedProcessor.rb
87
+ - test/test_SiteFuelLogging.rb
88
+ - test/test_AbstractProcessor.rb
89
+ - test/test_sites/simplehtml/style.css
90
+ - test/test_sites/simplehtml/deployment.yml
91
+ - test/test_sites/simplehtml/index.html
92
+ - test/test_JavaScriptProcessor.rb
93
+ - test/test_SASSProcessor.rb
94
+ - test/test_HAMLProcessor.rb.rb
95
+ - test/test_FileComparisons.rb
96
+ - test/test_programs/versioning.rb
97
+ - test/test_HTMLProcessor.rb
98
+ - test/test_StringFormatting.rb
99
+ - test/test_PHPProcessor.rb
100
+ - test/test_JPEGTran.rb
101
+ - test/test_PNGCrush.rb
102
+ - lib/sitefuel/SiteFuelRuntime.rb
103
+ - lib/sitefuel/extensions/DynamicClassMethods.rb
104
+ - lib/sitefuel/extensions/ArrayComparisons.rb
105
+ - lib/sitefuel/extensions/Silently.rb
106
+ - lib/sitefuel/extensions/SymbolComparison.rb
107
+ - lib/sitefuel/extensions/StringFormatting.rb
108
+ - lib/sitefuel/extensions/FileComparison.rb
109
+ - lib/sitefuel/processors/AbstractStringBasedProcessor.rb
110
+ - lib/sitefuel/processors/HTMLProcessor.rb
111
+ - lib/sitefuel/processors/CSSProcessor.rb
112
+ - lib/sitefuel/processors/JavaScriptProcessor.rb
113
+ - lib/sitefuel/processors/PNGProcessor.rb
114
+ - lib/sitefuel/processors/PHPProcessor.rb
115
+ - lib/sitefuel/processors/AbstractProcessor.rb
116
+ - lib/sitefuel/processors/RHTMLProcessor.rb
117
+ - lib/sitefuel/processors/SASSProcessor.rb
118
+ - lib/sitefuel/processors/HAMLProcessor.rb
119
+ - lib/sitefuel/processors/AbstractExternalProgramProcessor.rb
120
+ - lib/sitefuel/Configuration.rb
121
+ - lib/sitefuel/external/PNGCrush.rb
122
+ - lib/sitefuel/external/ExternalProgramTestCase.rb
123
+ - lib/sitefuel/external/JPEGTran.rb
124
+ - lib/sitefuel/external/AbstractExternalProgram.rb
125
+ - lib/sitefuel/external/GIT.rb
126
+ - lib/sitefuel/SiteFuelLogger.rb
127
+ - README
128
+ - RELEASE_NOTES
129
+ has_rdoc: true
130
+ homepage: http://sitefuel.org
131
+ licenses: []
132
+
133
+ post_install_message: |
134
+ =======================================================
135
+ This is a test deployment of the SiteFuel gem. It is
136
+ not intended for public consumption. Specifically, only
137
+ the `stage` command is enabled and the documentation is
138
+ far from complete.
139
+ =======================================================
140
+
141
+ rdoc_options: []
142
+
143
+ require_paths:
144
+ - lib
145
+ required_ruby_version: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - ">="
148
+ - !ruby/object:Gem::Version
149
+ version: "0"
150
+ version:
151
+ required_rubygems_version: !ruby/object:Gem::Requirement
152
+ requirements:
153
+ - - ">"
154
+ - !ruby/object:Gem::Version
155
+ version: 1.3.1
156
+ version:
157
+ requirements: []
158
+
159
+ rubyforge_project:
160
+ rubygems_version: 1.3.5
161
+ signing_key:
162
+ specification_version: 3
163
+ summary: A lightweight framework for processing, optimizing, and deploying websites
164
+ test_files:
165
+ - test/ts_all.rb