suite 0.1.2 → 0.1.3

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/README.md CHANGED
@@ -263,6 +263,10 @@ If you’ve used the `stylesheet_link_tag` and `javascript_include_tag` view hel
263
263
 
264
264
  `http://s3.amazonaws.com/my-bucket-name/javascripts/c1aba2692680cbc9e958451badaa989a.js`
265
265
 
266
+ ### <a name="section_4.7"></a> 4.7 Icons
267
+
268
+ Icons are served up from the `/assets/icons/` directory, but during build are placed in the root directory. Place your favicon.ico, apple-touch-icon (and variants) and any other icons that you want to end up in your root build directory here. Requests that match favicon|apple-touch-icon will serve assets from the icons directory.
269
+
266
270
  ## <a name="section_5"></a> 5 About
267
271
 
268
272
  From the very beginning, this toolkit has been designed from the ground up to scratch my own itch while developing a non dynamic site. I wanted SASS and CoffeeScript so I had them running watching for changes in two windows. I wanted HAML for my content, so I hacked together a build script and created my own way of organising partials. Eventually running sass, coffeescript and a build script became enough of a hindrance that I started to think bigger, and Suite was born.
@@ -274,6 +278,18 @@ I’m still new at Ruby so I may have done things in a round-about fashion. If y
274
278
 
275
279
  ### <a name="section_6.1"></a> 6.1 Development
276
280
 
281
+ __0.1.3__ (March 11, 2012)
282
+
283
+ * Handle root dir icon assets, e.g.favicon, apple-touch-icon(.*)
284
+
285
+ __0.1.2__ (March 9, 2012)
286
+
287
+ * Performance of dev server increased 3x
288
+
289
+ __0.1.1__ (March 7, 2012)
290
+
291
+ * Cleaned up default template cruft
292
+
277
293
  __0.1.0__ (March 7, 2012)
278
294
 
279
295
  * Initial public release.
data/lib/suite/builder.rb CHANGED
@@ -40,6 +40,7 @@ module Suite
40
40
  end
41
41
  end
42
42
  directory "assets/images", build_directory + "/" + asset_directory + "/images"
43
+ directory "assets/icons", build_directory
43
44
  end
44
45
 
45
46
  def create_directory_structure
data/lib/suite/project.rb CHANGED
@@ -40,7 +40,7 @@ module Suite
40
40
  end
41
41
 
42
42
  def asset path
43
- sprocket_environment[path.sub(/javascripts\/|stylesheets\/|images\//,'')]
43
+ sprocket_environment[path.sub(/javascripts\/|stylesheets\/|images\/|icons\//,'')]
44
44
  end
45
45
 
46
46
  def source_asset_path
@@ -58,6 +58,7 @@ module Suite
58
58
  def sprocket_environment
59
59
  @_memorized_sprocket_environment ||= begin
60
60
  environment = Sprockets::Environment.new
61
+ environment.append_path source_asset_path + '/icons'
61
62
  environment.append_path source_asset_path + '/images'
62
63
  environment.append_path source_asset_path + '/javascripts'
63
64
  environment.append_path source_asset_path + '/stylesheets'
data/lib/suite/server.rb CHANGED
@@ -11,6 +11,8 @@ module Suite
11
11
  path = env["REQUEST_PATH"]
12
12
  if path =~ /^\/assets/
13
13
  respond_with_asset path
14
+ elsif path =~ /apple-touch-icon|favicon/
15
+ respond_with_icon path
14
16
  else
15
17
  respond_with_content path
16
18
  end
@@ -28,6 +30,18 @@ module Suite
28
30
  ]
29
31
  end
30
32
 
33
+ def respond_with_icon path
34
+ asset = Suite.project.asset path.gsub(/^\//,'')
35
+ return not_found unless asset
36
+ content_types = MIME::Types.type_for(path)
37
+ headers = {'content-type'=> content_types.first.content_type } unless content_types.size == 0
38
+ [
39
+ 200,
40
+ headers || {},
41
+ asset.body
42
+ ]
43
+ end
44
+
31
45
  def respond_with_content path
32
46
  return not_found unless page = Suite.project.page_at_slugs(slugs)
33
47
  renderer = Suite::Renderers::Page.new page[:layout], page[:content]
data/lib/suite/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Suite
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: suite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-09 00:00:00.000000000 Z
12
+ date: 2012-03-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70337811301140 !ruby/object:Gem::Requirement
16
+ requirement: &70324754518180 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '2.6'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70337811301140
24
+ version_requirements: *70324754518180
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: thor
27
- requirement: &70337811299280 !ruby/object:Gem::Requirement
27
+ requirement: &70324754513080 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70337811299280
35
+ version_requirements: *70324754513080
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: goliath
38
- requirement: &70337811295260 !ruby/object:Gem::Requirement
38
+ requirement: &70324754506680 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70337811295260
46
+ version_requirements: *70324754506680
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: mime-types
49
- requirement: &70337811293880 !ruby/object:Gem::Requirement
49
+ requirement: &70324754506000 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70337811293880
57
+ version_requirements: *70324754506000
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: haml
60
- requirement: &70337811292600 !ruby/object:Gem::Requirement
60
+ requirement: &70324754505140 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70337811292600
68
+ version_requirements: *70324754505140
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: sprockets
71
- requirement: &70337811289920 !ruby/object:Gem::Requirement
71
+ requirement: &70324754503440 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *70337811289920
79
+ version_requirements: *70324754503440
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: sprockets-sass
82
- requirement: &70337811285080 !ruby/object:Gem::Requirement
82
+ requirement: &70324754501760 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0'
88
88
  type: :runtime
89
89
  prerelease: false
90
- version_requirements: *70337811285080
90
+ version_requirements: *70324754501760
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: coffee-script
93
- requirement: &70337811282420 !ruby/object:Gem::Requirement
93
+ requirement: &70324754500300 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: '0'
99
99
  type: :runtime
100
100
  prerelease: false
101
- version_requirements: *70337811282420
101
+ version_requirements: *70324754500300
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: compass
104
- requirement: &70337811278360 !ruby/object:Gem::Requirement
104
+ requirement: &70324754499440 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ! '>='
@@ -109,10 +109,10 @@ dependencies:
109
109
  version: '0'
110
110
  type: :runtime
111
111
  prerelease: false
112
- version_requirements: *70337811278360
112
+ version_requirements: *70324754499440
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: yui-compressor
115
- requirement: &70337811276640 !ruby/object:Gem::Requirement
115
+ requirement: &70324754498380 !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
118
118
  - - ! '>='
@@ -120,7 +120,7 @@ dependencies:
120
120
  version: '0'
121
121
  type: :runtime
122
122
  prerelease: false
123
- version_requirements: *70337811276640
123
+ version_requirements: *70324754498380
124
124
  description: All the stuff that make front end web development fun, in one simple
125
125
  toolkit
126
126
  email: