rails2_asset_pipeline 0.1.20 → 0.2.0
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/Gemfile +1 -0
- data/Gemfile.lock +5 -3
- data/Rakefile +1 -17
- data/Readme.md +45 -3
- data/lib/rails2_asset_pipeline.rb +6 -5
- data/lib/rails2_asset_pipeline/version.rb +1 -1
- data/spec/rails2_asset_pipeline_spec.rb +4 -2
- metadata +4 -4
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,17 +1,18 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
rails2_asset_pipeline (0.
|
4
|
+
rails2_asset_pipeline (0.2.0)
|
5
5
|
sprockets
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: http://rubygems.org/
|
9
9
|
specs:
|
10
|
+
bump (0.3.9)
|
10
11
|
diff-lcs (1.1.3)
|
11
12
|
hike (1.2.1)
|
12
13
|
json (1.7.3)
|
13
|
-
multi_json (1.
|
14
|
-
rack (1.4.
|
14
|
+
multi_json (1.5.0)
|
15
|
+
rack (1.4.3)
|
15
16
|
rake (0.9.2)
|
16
17
|
rspec (2.6.0)
|
17
18
|
rspec-core (~> 2.6.0)
|
@@ -32,6 +33,7 @@ PLATFORMS
|
|
32
33
|
ruby
|
33
34
|
|
34
35
|
DEPENDENCIES
|
36
|
+
bump
|
35
37
|
json
|
36
38
|
rails2_asset_pipeline!
|
37
39
|
rake
|
data/Rakefile
CHANGED
@@ -1,22 +1,6 @@
|
|
1
1
|
require 'bundler/gem_tasks'
|
2
|
+
require 'bump/tasks'
|
2
3
|
|
3
4
|
task :default do
|
4
5
|
sh "rspec spec/"
|
5
6
|
end
|
6
|
-
|
7
|
-
# extracted from https://github.com/grosser/project_template
|
8
|
-
rule /^version:bump:.*/ do |t|
|
9
|
-
sh "git status | grep 'nothing to commit'" # ensure we are not dirty
|
10
|
-
index = ['major', 'minor','patch'].index(t.name.split(':').last)
|
11
|
-
file = 'lib/rails2_asset_pipeline/version.rb'
|
12
|
-
|
13
|
-
version_file = File.read(file)
|
14
|
-
old_version, *version_parts = version_file.match(/(\d+)\.(\d+)\.(\d+)/).to_a
|
15
|
-
version_parts[index] = version_parts[index].to_i + 1
|
16
|
-
version_parts[2] = 0 if index < 2 # remove patch for minor
|
17
|
-
version_parts[1] = 0 if index < 1 # remove minor for major
|
18
|
-
new_version = version_parts * '.'
|
19
|
-
File.open(file,'w'){|f| f.write(version_file.sub(old_version, new_version)) }
|
20
|
-
|
21
|
-
sh "bundle && git add #{file} Gemfile.lock && git commit -m 'bump version to #{new_version}'"
|
22
|
-
end
|
data/Readme.md
CHANGED
@@ -37,6 +37,16 @@ Just a path: <%= asset_path "application.js" %>
|
|
37
37
|
# config/environment.rb
|
38
38
|
config.gem "rails2_asset_pipeline"
|
39
39
|
|
40
|
+
# Gemfile (if you have one)
|
41
|
+
gem "rails2_asset_pipeline"
|
42
|
+
|
43
|
+
group :development do
|
44
|
+
gem "coffee-script", :require => false # need coffee ?
|
45
|
+
gem "sass", :require => false # need sass ?
|
46
|
+
gem "sprockets-sass", :require => false
|
47
|
+
end
|
48
|
+
|
49
|
+
|
40
50
|
### Initializer
|
41
51
|
Here you can do configuration of sprockets.
|
42
52
|
- loaded in `rake assets:precompile` **without** the rails environment (to enable compiling/deploying without development environment)
|
@@ -46,8 +56,9 @@ Here you can do configuration of sprockets.
|
|
46
56
|
```Ruby
|
47
57
|
# config/initializers/rails2_asset_pipeline.rb
|
48
58
|
if Rails.env.development? # dynamic asset compilation needs these
|
59
|
+
require 'coffee-script' # need coffee ?
|
49
60
|
require 'sprockets/sass' # need sass ?
|
50
|
-
autoload :Sass, 'sass' #
|
61
|
+
autoload :Sass, 'sass' # autoload when used via rake assets:precompile
|
51
62
|
require 'sprockets/source_url' # sprockets-source_url for debugable assets in chrome
|
52
63
|
end
|
53
64
|
|
@@ -60,6 +71,18 @@ require 'rails2_asset_pipeline/view_helpers'
|
|
60
71
|
Rails2AssetPipeline::ViewHelpers.ignored_folders = ["images"]
|
61
72
|
```
|
62
73
|
|
74
|
+
Optional: remove unnecessary Sass middleware + monkey-patches
|
75
|
+
|
76
|
+
```Ruby
|
77
|
+
# config/environment.rb
|
78
|
+
...
|
79
|
+
|
80
|
+
module Sass; RAILS_LOADED = true; end # prevent sass middleware + monkeypatches -> all handled by rails2_asset_pipeline (verify via: rake middleware | grep Sass)
|
81
|
+
|
82
|
+
Rails::Initializer.run do
|
83
|
+
...
|
84
|
+
```
|
85
|
+
|
63
86
|
### Tasks
|
64
87
|
|
65
88
|
# Rakefile
|
@@ -77,7 +100,7 @@ Setup a config.ru so development has dynamic assets
|
|
77
100
|
# we need to protect against multiple includes of the Rails environment (trust me)
|
78
101
|
require './config/environment' if !defined?(Rails) || !Rails.initialized?
|
79
102
|
|
80
|
-
|
103
|
+
Rails2AssetPipeline.config_ru(self)
|
81
104
|
|
82
105
|
map '/' do
|
83
106
|
use Rails::Rack::LogTailer unless Rails.env.test?
|
@@ -102,6 +125,7 @@ You can also use `Rails2AssetPipeline::ViewHelpers.asset_path("application.js")`
|
|
102
125
|
|
103
126
|
### Fast tests
|
104
127
|
To not compile assets during testing you can overwrite the manifest.
|
128
|
+
|
105
129
|
```Ruby
|
106
130
|
# spec/fixtures/empty_manifest.json
|
107
131
|
{"assets": {}, "files": {}}
|
@@ -110,6 +134,18 @@ To not compile assets during testing you can overwrite the manifest.
|
|
110
134
|
Rails2AssetPipeline.manifest = Rails.root.join("spec/fixtures/empty_manifest.json")
|
111
135
|
```
|
112
136
|
|
137
|
+
### Images vs CSS
|
138
|
+
|
139
|
+
/* application.css */
|
140
|
+
.image_via_sass_url{
|
141
|
+
background: url('ok.gif');
|
142
|
+
}
|
143
|
+
|
144
|
+
/* application.css.erb ... not recommended but possible ... */
|
145
|
+
.image_with_erb{
|
146
|
+
background-image:url(<%= asset_data_uri 'ok.gif' %>);
|
147
|
+
}
|
148
|
+
|
113
149
|
### Sass
|
114
150
|
- add `sass` to your gems for sass parsing
|
115
151
|
- add `sprockets-sass` to your gems for sass @import support
|
@@ -117,11 +153,17 @@ Rails2AssetPipeline.manifest = Rails.root.join("spec/fixtures/empty_manifest.jso
|
|
117
153
|
|
118
154
|
# Todo
|
119
155
|
- read config from Rails 3 style config.assets
|
120
|
-
- asset image helpers for inside css/scss
|
121
156
|
- make output location configurable in .setup and use it for manifest location and rake tasks
|
122
157
|
|
158
|
+
|
159
|
+
|
160
|
+
|
123
161
|
Author
|
124
162
|
======
|
163
|
+
|
164
|
+
### [Contributors](https://github.com/grosser/rails2_asset_pipeline/contributors)
|
165
|
+
- [Michael Peteuil](https://github.com/mpeteuil)
|
166
|
+
|
125
167
|
[Michael Grosser](http://grosser.it)<br/>
|
126
168
|
michael@grosser.it<br/>
|
127
169
|
License: MIT<br/>
|
@@ -22,11 +22,12 @@ module Rails2AssetPipeline
|
|
22
22
|
@env
|
23
23
|
end
|
24
24
|
|
25
|
-
def self.config_ru
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
25
|
+
def self.config_ru(rack)
|
26
|
+
unless STATIC_ENVIRONMENTS.include?(Rails.env)
|
27
|
+
Rails2AssetPipeline.dynamic_assets_available = true
|
28
|
+
|
29
|
+
rack.instance_eval do
|
30
|
+
map "/assets" do
|
30
31
|
run Rails2AssetPipeline.env
|
31
32
|
end
|
32
33
|
end
|
@@ -41,14 +41,16 @@ describe Rails2AssetPipeline do
|
|
41
41
|
|
42
42
|
it "sets up a route for development" do
|
43
43
|
Rails.env = "development"
|
44
|
-
|
44
|
+
result = Rails2AssetPipeline.config_ru(self)
|
45
45
|
@mapped.should == ["/assets"]
|
46
|
+
(!!result).should == true
|
46
47
|
end
|
47
48
|
|
48
49
|
it "does not set up a route for production" do
|
49
50
|
Rails.env = "production"
|
50
|
-
|
51
|
+
result = Rails2AssetPipeline.config_ru(self)
|
51
52
|
@mapped.should == nil
|
53
|
+
(!!result).should == false
|
52
54
|
end
|
53
55
|
end
|
54
56
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails2_asset_pipeline
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-01-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sprockets
|
@@ -67,7 +67,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
67
67
|
version: '0'
|
68
68
|
segments:
|
69
69
|
- 0
|
70
|
-
hash:
|
70
|
+
hash: 3234184968952417120
|
71
71
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
@@ -76,7 +76,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
76
76
|
version: '0'
|
77
77
|
segments:
|
78
78
|
- 0
|
79
|
-
hash:
|
79
|
+
hash: 3234184968952417120
|
80
80
|
requirements: []
|
81
81
|
rubyforge_project:
|
82
82
|
rubygems_version: 1.8.24
|