Master
Get upgrade notes from Sprockets 3.x to 4.x at https://github.com/rails/sprockets/blob/master/UPGRADING.md
- Fix for precompile issues when multiple extensions map to the same MIME type (eg.
.jpeg
/.jpg
). #781 - Fix
application/css-sourcemap+json
charset #764 - Fix compatibility with Rack 2 applications. #790
- Rack 3 compatibility. #758
- Fix thread safety of
Sprockets::CachedEnvironment
andSprockets::Cache::MemoryStore
. #771 - Add support for Rack 3.0. Headers set by sprockets will now be lower case. #758
- Make
Sprockets::Utils.module_include
thread safe on JRuby. #759 - Fix typo in
asset.rb
file. #768
- Fix
Sprockets::Server
to return response headers to be compatible with Rack::Lint 2.0.
- Allow age to be altered in asset:clean rake task.
- Fix
Sprockets::Server
to return lower-cased response headers to comply with Rack::Lint 3.0. #744 - Adding new directive
depend_on_directory
#668 - Fix
application/js-sourcemap+json
charset #669 - Fix
CachedEnvironment
caching nil values #723 - Process
*.jst.ejs.erb
files with ERBProcessor #674 - Fix cache key for coffee script processor to be dependent on the filename #670
- Fix
Manifest#find
yielding from a Promise causing issue on Ruby 3.1.0-dev. #720 - Better detect the ERB version to avoid deprecation warnings. #719
- Allow assets already fingerprinted to be served through
Sprockets::Server
- Do not fingerprint files that already contain a valid digest in their name
- Remove remaining support for Ruby < 2.4.#672
- Fix
etag
and digest path compilation that were generating string with invalid digest since 4.0.1.
- Fix for Ruby 2.7 keyword arguments warning in
base.rb
. #660 - Fix for when
x_sprockets_linecount
is missing from a source map. - Fix subresource integrity to match the digest of the asset.
- Fix YACB (Yet Another Caching Bug) Fix broken expansion of asset link paths
- Minimum Ruby version for Sprockets 4 is now 2.5+ which matches minimum ruby version of Rails [#604]
- Fix threading bug introduced in Sprockets 4 [#603]
- Warn when two potential manifest files exist. [#560]
- Security release for CVE-2018-3760
- Fix a year long bug that caused
Sprockets::FileNotFound
errors when the asset was present [#547] - Raise an error when two assets such as foo.js and foo.js.erb would produce the same output artifact (foo.js) [#549 #530]
- Process
*.jst.eco.erb
files with ERBProcessor
- Fix source map line offsets [#515]
- Return a
400 Bad Request
when the path encoding is invalid. [#514]
- Reduce string allocations
- Source map metadata uses compressed form specified by the source map v3 spec. [#402] [BREAKING]
- Generate index maps when decoding source maps isn't necessary. [#402]
- Remove fingerprints from source map files. [#402]
- Changing the version now busts the digest of all assets [#404]
- Exporter interface added [#386]
- Using ENV vars in templates will recompile templates when the env vars change. [#365]
- Source maps for imported sass files with sassc is now fixed [#391]
- Load paths now in error messages [#322]
- Cache key added to babel processor [#387]
Environment#find_asset!
can now be used to raise an exception when asset could not be found [#379]
- Source Map fixes [#255] [#367]
- Performance improvements
- Fix load_paths on Sass processors [#223]
- Initial release of Sprockets 4
Please upgrade to the latest Sprockets 3 version before upgrading to Sprockets 4. Check the 3.x branch for previous changes https://github.com/rails/sprockets/blob/3.x/CHANGELOG.md.