depend_on_asset is not required anymore on sprockets-rails 2.1.2
This commit is contained in:
parent
040a1dbb11
commit
b053a47b3e
1
Gemfile
1
Gemfile
@ -11,6 +11,7 @@ gem 'rack-cache', '~> 1.2'
|
||||
gem 'jquery-rails', '~> 3.1.0'
|
||||
gem 'turbolinks'
|
||||
gem 'coffee-rails', '~> 4.0.0'
|
||||
gem 'sprockets-rails', github: 'rails/sprockets-rails', branch: '2-1-stable'
|
||||
|
||||
# require: false so bcrypt is loaded only when has_secure_password is used.
|
||||
# This is to avoid ActiveModel (and by extension the entire framework)
|
||||
|
@ -581,23 +581,8 @@ runtime. To disable this behavior you can set:
|
||||
config.assets.raise_runtime_errors = false
|
||||
```
|
||||
|
||||
When `raise_runtime_errors` is set to `false` sprockets will not check that dependencies of assets are declared properly. Here is a scenario where you must tell the asset pipeline about a dependency:
|
||||
|
||||
If you have `application.css.erb` that references `logo.png` like this:
|
||||
|
||||
```css
|
||||
#logo { background: url(<%= asset_data_uri 'logo.png' %>) }
|
||||
```
|
||||
|
||||
Then you must declare that `logo.png` is a dependency of `application.css.erb`, so when the image gets re-compiled, the css file does as well. You can do this using the `//= depend_on_asset` declaration:
|
||||
|
||||
```css
|
||||
//= depend_on_asset "logo.png"
|
||||
#logo { background: url(<%= asset_data_uri 'logo.png' %>) }
|
||||
```
|
||||
|
||||
Without this declaration you may experience strange behavior when pushing to production that is difficult to debug. When you have `raise_runtime_errors` set to `true`, dependencies will be checked at runtime so you can ensure that all dependencies are met.
|
||||
|
||||
When this option is true asset pipeline will check if all the assets loaded in your application
|
||||
are included in the `config.assets.precompile` list.
|
||||
|
||||
### Turning Debugging Off
|
||||
|
||||
@ -943,7 +928,7 @@ gem.
|
||||
```ruby
|
||||
config.assets.css_compressor = :yui
|
||||
```
|
||||
The other option for compressing CSS if you have the sass-rails gem installed is
|
||||
The other option for compressing CSS if you have the sass-rails gem installed is
|
||||
|
||||
```ruby
|
||||
config.assets.css_compressor = :sass
|
||||
@ -1018,7 +1003,7 @@ The X-Sendfile header is a directive to the web server to ignore the response
|
||||
from the application, and instead serve a specified file from disk. This option
|
||||
is off by default, but can be enabled if your server supports it. When enabled,
|
||||
this passes responsibility for serving the file to the web server, which is
|
||||
faster. Have a look at [send_file](http://api.rubyonrails.org/classes/ActionController/DataStreaming.html#method-i-send_file)
|
||||
faster. Have a look at [send_file](http://api.rubyonrails.org/classes/ActionController/DataStreaming.html#method-i-send_file)
|
||||
on how to use this feature.
|
||||
|
||||
Apache and nginx support this option, which can be enabled in
|
||||
|
@ -42,7 +42,7 @@ def assert_no_file_exists(filename)
|
||||
|
||||
test "assets routes have higher priority" do
|
||||
app_file "app/assets/images/rails.png", "notactuallyapng"
|
||||
app_file "app/assets/javascripts/demo.js.erb", "//= depend_on_asset 'rails.png'\na = <%= image_path('rails.png').inspect %>;"
|
||||
app_file "app/assets/javascripts/demo.js.erb", "a = <%= image_path('rails.png').inspect %>;"
|
||||
|
||||
app_file 'config/routes.rb', <<-RUBY
|
||||
Rails.application.routes.draw do
|
||||
@ -200,7 +200,7 @@ class User < ActiveRecord::Base; raise 'should not be reached'; end
|
||||
|
||||
test "precompile creates a manifest file with all the assets listed" do
|
||||
app_file "app/assets/images/rails.png", "notactuallyapng"
|
||||
app_file "app/assets/stylesheets/application.css.erb", "//= depend_on_asset 'rails.png'\n <%= asset_path('rails.png') %>"
|
||||
app_file "app/assets/stylesheets/application.css.erb", "<%= asset_path('rails.png') %>"
|
||||
app_file "app/assets/javascripts/application.js", "alert();"
|
||||
# digest is default in false, we must enable it for test environment
|
||||
add_to_config "config.assets.digest = true"
|
||||
@ -261,7 +261,7 @@ class User < ActiveRecord::Base; raise 'should not be reached'; end
|
||||
test "precompile shouldn't use the digests present in manifest.json" do
|
||||
app_file "app/assets/images/rails.png", "notactuallyapng"
|
||||
|
||||
app_file "app/assets/stylesheets/application.css.erb", "//= depend_on rails.png\np { url: <%= asset_path('rails.png') %> }"
|
||||
app_file "app/assets/stylesheets/application.css.erb", "p { url: <%= asset_path('rails.png') %> }"
|
||||
|
||||
ENV["RAILS_ENV"] = "production"
|
||||
precompile!
|
||||
@ -280,7 +280,7 @@ class User < ActiveRecord::Base; raise 'should not be reached'; end
|
||||
|
||||
test "precompile appends the md5 hash to files referenced with asset_path and run in production with digest true" do
|
||||
app_file "app/assets/images/rails.png", "notactuallyapng"
|
||||
app_file "app/assets/stylesheets/application.css.erb", "//= depend_on_asset 'rails.png'\n<%= asset_path('rails.png') %>"
|
||||
app_file "app/assets/stylesheets/application.css.erb", "<%= asset_path('rails.png') %>"
|
||||
add_to_config "config.assets.compile = true"
|
||||
add_to_config "config.assets.digest = true"
|
||||
|
||||
@ -449,7 +449,7 @@ class ::PostsController < ActionController::Base; end
|
||||
|
||||
test "asset urls should be protocol-relative if no request is in scope" do
|
||||
app_file "app/assets/images/rails.png", "notreallyapng"
|
||||
app_file "app/assets/javascripts/image_loader.js.erb", "//= depend_on_asset 'rails.png'\n\nvar src='<%= image_path('rails.png') %>';"
|
||||
app_file "app/assets/javascripts/image_loader.js.erb", "var src='<%= image_path('rails.png') %>';"
|
||||
add_to_config "config.assets.precompile = %w{image_loader.js}"
|
||||
add_to_config "config.asset_host = 'example.com'"
|
||||
precompile!
|
||||
@ -461,7 +461,7 @@ class ::PostsController < ActionController::Base; end
|
||||
ENV["RAILS_RELATIVE_URL_ROOT"] = "/sub/uri"
|
||||
app_file "app/assets/images/rails.png", "notreallyapng"
|
||||
|
||||
app_file "app/assets/javascripts/app.js.erb", "//= depend_on_asset 'rails.png'\n\nvar src='<%= image_path('rails.png') %>';"
|
||||
app_file "app/assets/javascripts/app.js.erb", "var src='<%= image_path('rails.png') %>';"
|
||||
add_to_config "config.assets.precompile = %w{app.js}"
|
||||
precompile!
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user