sinatra-asset-pipeline 0.2.0 → 0.2.1
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 +56 -39
- data/lib/sinatra/asset_pipeline/version.rb +1 -1
- data/lib/sinatra/asset_pipeline.rb +2 -2
- metadata +23 -5
- checksums.yaml +0 -15
data/README.md
CHANGED
@@ -6,80 +6,97 @@ An asset pipeline implementation for Sinatra based on [Sprockets](https://github
|
|
6
6
|
|
7
7
|
Install sinatra-asset-pipeline from RubyGems:
|
8
8
|
|
9
|
-
|
9
|
+
```bash
|
10
|
+
$ gem install sinatra-asset-pipeline
|
11
|
+
```
|
10
12
|
|
11
13
|
Or include it in your project's Gemfile with Bundler:
|
12
14
|
|
13
|
-
|
15
|
+
```ruby
|
16
|
+
gem 'sinatra-asset-pipeline'
|
17
|
+
```
|
14
18
|
|
15
19
|
Make sure to add the sinatra-asset-pipeline Rake task in your applications `Rakefile`:
|
16
20
|
|
17
|
-
|
18
|
-
|
21
|
+
```ruby
|
22
|
+
require 'sinatra/asset_pipeline/task.rb'
|
23
|
+
require './app'
|
19
24
|
|
20
|
-
|
25
|
+
Sinatra::AssetPipeline::Task.define! App
|
26
|
+
```
|
21
27
|
|
22
28
|
Now, when everything is in place you can precompile assets with:
|
23
29
|
|
24
|
-
|
30
|
+
```bash
|
31
|
+
$ rake assets:precompile
|
32
|
+
```
|
25
33
|
|
26
34
|
And remove old compiled assets with:
|
27
35
|
|
28
|
-
|
36
|
+
```bash
|
37
|
+
$ rake assets:clean
|
38
|
+
```
|
29
39
|
|
30
40
|
# Example
|
31
41
|
|
32
|
-
In it's most simple form you just register the `Sinatra::
|
42
|
+
In it's most simple form you just register the `Sinatra::AssetPipeline` Sinatra extension within your Sinatra app.
|
33
43
|
|
34
|
-
|
44
|
+
```ruby
|
45
|
+
Bundler.require
|
35
46
|
|
36
|
-
|
47
|
+
require 'sinatra/asset_pipeline'
|
37
48
|
|
38
|
-
|
39
|
-
|
49
|
+
class App < Sinatra::Base
|
50
|
+
register Sinatra::AssetPipeline
|
40
51
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
52
|
+
get '/' do
|
53
|
+
haml :index
|
54
|
+
end
|
55
|
+
end
|
56
|
+
```
|
45
57
|
|
46
58
|
However, if your application doesn't follow the defaults you can customize it as follows:
|
47
59
|
|
48
|
-
|
60
|
+
```ruby
|
61
|
+
Bundler.require
|
49
62
|
|
50
|
-
|
63
|
+
require 'sinatra/asset_pipeline'
|
51
64
|
|
52
|
-
|
53
|
-
|
54
|
-
|
65
|
+
class App < Sinatra::Base
|
66
|
+
# Include these files when precompiling assets
|
67
|
+
set :assets_precompile, %w(app.js app.css *.png *.jpg *.svg *.eot *.ttf *.woff)
|
55
68
|
|
56
|
-
|
57
|
-
|
69
|
+
# Logical path to your assets
|
70
|
+
set :assets_prefix, 'assets'
|
58
71
|
|
59
|
-
|
60
|
-
|
72
|
+
# Use another host for serving assets
|
73
|
+
set :assets_host, '<id>.cloudfront.net'
|
61
74
|
|
62
|
-
|
63
|
-
|
75
|
+
# Serve assets using this protocol
|
76
|
+
set :assets_protocol, :http
|
64
77
|
|
65
|
-
|
66
|
-
|
78
|
+
# CSS minification
|
79
|
+
set :assets_css_compressor, :sass
|
67
80
|
|
68
|
-
|
69
|
-
|
81
|
+
# JavaScript minification
|
82
|
+
set :assets_js_compressor, :uglifier
|
70
83
|
|
71
|
-
|
84
|
+
# Register the AssetPipeline extention, make sure this goes after all customization
|
85
|
+
register Sinatra::AssetPipeline
|
72
86
|
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
87
|
+
get '/' do
|
88
|
+
haml :index
|
89
|
+
end
|
90
|
+
end
|
91
|
+
```
|
77
92
|
|
78
93
|
Now when everything is in place you can use all helpers provided by [sprockets-helpers](https://github.com/petebrowne/sprockets-helpers), here is a small example:
|
79
94
|
|
80
|
-
|
81
|
-
|
82
|
-
|
95
|
+
```scss
|
96
|
+
body {
|
97
|
+
background-image: image-url('cat.png');
|
98
|
+
}
|
99
|
+
```
|
83
100
|
|
84
101
|
### CSS and JavaScript minification
|
85
102
|
|
@@ -15,7 +15,7 @@ module Sinatra
|
|
15
15
|
|
16
16
|
app.set :static, true
|
17
17
|
app.set :assets_digest, true
|
18
|
-
app.set :static_cache_control, [:public, :max_age =>
|
18
|
+
app.set :static_cache_control, [:public, :max_age => 60 * 60 * 24 * 365]
|
19
19
|
|
20
20
|
app.configure do
|
21
21
|
Dir[File.join app.assets_prefix, "*"].each {|path| app.sprockets.append_path path}
|
@@ -44,7 +44,7 @@ module Sinatra
|
|
44
44
|
|
45
45
|
app.helpers Sprockets::Helpers
|
46
46
|
|
47
|
-
app.configure :development do
|
47
|
+
app.configure :test, :development do
|
48
48
|
app.get '/assets/*' do |key|
|
49
49
|
key.gsub! /(-\w+)(?!.*-\w+)/, ""
|
50
50
|
asset = app.sprockets[key]
|
metadata
CHANGED
@@ -1,18 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sinatra-asset-pipeline
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Joakim Ekberg
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2013-
|
12
|
+
date: 2013-09-24 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: rake
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
19
|
- - ! '>='
|
18
20
|
- !ruby/object:Gem::Version
|
@@ -20,6 +22,7 @@ dependencies:
|
|
20
22
|
type: :runtime
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
27
|
- - ! '>='
|
25
28
|
- !ruby/object:Gem::Version
|
@@ -27,6 +30,7 @@ dependencies:
|
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: sinatra
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
35
|
- - ! '>='
|
32
36
|
- !ruby/object:Gem::Version
|
@@ -34,6 +38,7 @@ dependencies:
|
|
34
38
|
type: :runtime
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
43
|
- - ! '>='
|
39
44
|
- !ruby/object:Gem::Version
|
@@ -41,6 +46,7 @@ dependencies:
|
|
41
46
|
- !ruby/object:Gem::Dependency
|
42
47
|
name: sass
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
44
50
|
requirements:
|
45
51
|
- - ! '>='
|
46
52
|
- !ruby/object:Gem::Version
|
@@ -48,6 +54,7 @@ dependencies:
|
|
48
54
|
type: :runtime
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
51
58
|
requirements:
|
52
59
|
- - ! '>='
|
53
60
|
- !ruby/object:Gem::Version
|
@@ -55,6 +62,7 @@ dependencies:
|
|
55
62
|
- !ruby/object:Gem::Dependency
|
56
63
|
name: coffee-script
|
57
64
|
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
58
66
|
requirements:
|
59
67
|
- - ! '>='
|
60
68
|
- !ruby/object:Gem::Version
|
@@ -62,6 +70,7 @@ dependencies:
|
|
62
70
|
type: :runtime
|
63
71
|
prerelease: false
|
64
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
65
74
|
requirements:
|
66
75
|
- - ! '>='
|
67
76
|
- !ruby/object:Gem::Version
|
@@ -69,6 +78,7 @@ dependencies:
|
|
69
78
|
- !ruby/object:Gem::Dependency
|
70
79
|
name: sprockets
|
71
80
|
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
72
82
|
requirements:
|
73
83
|
- - ! '>='
|
74
84
|
- !ruby/object:Gem::Version
|
@@ -76,6 +86,7 @@ dependencies:
|
|
76
86
|
type: :runtime
|
77
87
|
prerelease: false
|
78
88
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
79
90
|
requirements:
|
80
91
|
- - ! '>='
|
81
92
|
- !ruby/object:Gem::Version
|
@@ -83,6 +94,7 @@ dependencies:
|
|
83
94
|
- !ruby/object:Gem::Dependency
|
84
95
|
name: sprockets-sass
|
85
96
|
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
86
98
|
requirements:
|
87
99
|
- - ! '>='
|
88
100
|
- !ruby/object:Gem::Version
|
@@ -90,6 +102,7 @@ dependencies:
|
|
90
102
|
type: :runtime
|
91
103
|
prerelease: false
|
92
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
93
106
|
requirements:
|
94
107
|
- - ! '>='
|
95
108
|
- !ruby/object:Gem::Version
|
@@ -97,6 +110,7 @@ dependencies:
|
|
97
110
|
- !ruby/object:Gem::Dependency
|
98
111
|
name: sprockets-helpers
|
99
112
|
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
100
114
|
requirements:
|
101
115
|
- - ! '>='
|
102
116
|
- !ruby/object:Gem::Version
|
@@ -104,6 +118,7 @@ dependencies:
|
|
104
118
|
type: :runtime
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
107
122
|
requirements:
|
108
123
|
- - ! '>='
|
109
124
|
- !ruby/object:Gem::Version
|
@@ -111,6 +126,7 @@ dependencies:
|
|
111
126
|
- !ruby/object:Gem::Dependency
|
112
127
|
name: rspec
|
113
128
|
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
114
130
|
requirements:
|
115
131
|
- - ! '>='
|
116
132
|
- !ruby/object:Gem::Version
|
@@ -118,6 +134,7 @@ dependencies:
|
|
118
134
|
type: :development
|
119
135
|
prerelease: false
|
120
136
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
121
138
|
requirements:
|
122
139
|
- - ! '>='
|
123
140
|
- !ruby/object:Gem::Version
|
@@ -136,25 +153,26 @@ files:
|
|
136
153
|
- lib/sinatra/asset_pipeline.rb
|
137
154
|
homepage: https://github.com/kalasjocke/sinatra-asset-pipeline
|
138
155
|
licenses: []
|
139
|
-
metadata: {}
|
140
156
|
post_install_message:
|
141
157
|
rdoc_options: []
|
142
158
|
require_paths:
|
143
159
|
- lib
|
144
160
|
required_ruby_version: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
145
162
|
requirements:
|
146
163
|
- - ! '>='
|
147
164
|
- !ruby/object:Gem::Version
|
148
165
|
version: '0'
|
149
166
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
167
|
+
none: false
|
150
168
|
requirements:
|
151
169
|
- - ! '>='
|
152
170
|
- !ruby/object:Gem::Version
|
153
171
|
version: '0'
|
154
172
|
requirements: []
|
155
173
|
rubyforge_project:
|
156
|
-
rubygems_version:
|
174
|
+
rubygems_version: 1.8.25
|
157
175
|
signing_key:
|
158
|
-
specification_version:
|
176
|
+
specification_version: 3
|
159
177
|
summary: An asset pipeline implementation for Sinatra.
|
160
178
|
test_files: []
|
checksums.yaml
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
---
|
2
|
-
!binary "U0hBMQ==":
|
3
|
-
metadata.gz: !binary |-
|
4
|
-
MGE0MWMwMjQ5NTNmZTI3NTI2ZWU3MzVmZmRmNGQwMmY0MjJjNjlkYQ==
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
ZDE1MTAyYjRhMTFjZDM3MWZiZDYwMTVjMzk0ZjRlZGUyY2QxMmU1Nw==
|
7
|
-
!binary "U0hBNTEy":
|
8
|
-
metadata.gz: !binary |-
|
9
|
-
NDg5YTk3OGRlMWFmZDEwNzQ3ZTViMDFkNWY4NGViODU1ZWJhZjZiZjkwNWI0
|
10
|
-
YzVlMjJlZmNmNzRkODU1NTQxYmY5MWI1NTBhMzAzYmU5M2VjOWZiMjY1OWQ4
|
11
|
-
ZmI5M2MxOGVkNWFiNTgzMTRkNzU5NGE3MjA3MDMyZmRlYTUxNTc=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
ODAxMDlhMzkxMDFlM2RmNWQ1YjdmMDA0MjdiZjQ0NGMxNWNhNDY2NjY2YTNi
|
14
|
-
MDYxMzAwYmE3MmJhNGI3MmUxYzM5YThiYzU2YmU5NjNmODM2NTYzZTcyOTg5
|
15
|
-
NTExYTFmODgzYjY3YjQzZDg3ZmQ1OTM2YzQ1NjFiMTI1YTZlMzI=
|