Releases: rails/propshaft
v1.2.1
What's Changed
β’ Only sweep the cache if cache sweeping is enabled by @gaffneyc in #245
β’ Change stylesheet_link_tag and javascript_include_tag to extract options from sources
β’ Add a method to delete manifest entries
New Contributors
β’ @gaffneyc made their first contribution in #245
Full Changelog: v1.2.0...v1.2.1
v1.2.0
π Manifest Format Update
The manifest format has been enhanced in v1.2.0 to support Subresource Integrity. While this change is backwards compatible and doesn't affect regular usage, if you or any libraries/tools you use were manually parsing the .manifest.json
file, you should be aware of the new format.
Previous format:
{ "logical_path.js": "logical_path-digest123.js" }
New format:
{ "logical_path.js": { "digested_path": "logical_path-digest123.js", "integrity": "sha384-hash..." } }
What you need to know:
- No action required for most users - Propshaft helper methods continue to work unchanged
- If you or your tools manually parse the manifest: Update code to access
manifest[logical_path]["digested_path"]
instead ofmanifest[logical_path]
directly - Third-party libraries: Check if any gems or tools in your stack parse the manifest directly and may need updates
- Backwards compatibility: Propshaft can still read manifests in the old format
- New feature: The
integrity
field provides Subresource Integrity hashes when enabled
What's Changed
- Read asset content in binary mode to suppress CRLF conversion on Windows by @thloe2 in #222
- Add quotes to etags by @zarqman in #220
- Fix CSS Asset Compiler to work with files started with data and http by @brenogazzola in #224
- Server should also sweep cache by @brenogazzola in #232
- Remove railties runtime dependency by @zcei in #239
- Add Subresource Integrity value to manifest by @zcei in #238
New Contributors
- @jrochkind made their first contribution in #216
- @thloe2 made their first contribution in #222
- @zarqman made their first contribution in #220
- @zcei made their first contribution in #239
- @TimeTravelerFromNow made their first contribution in #240
Full Changelog: v1.1.0...v1.2.0
v1.1.0
v1.0.1
What's Changed
- Require propshaft before railtie by @zzak in #205
- Prioritize app assets over engine assets by @brunoprietog in #206
New Contributors
- @zzak made their first contribution in #205
- @brunoprietog made their first contribution in #206
Full Changelog: v1.0.0...v1.0.1
v1.0.0
What's Changed
- Clean old sourcemap assets by @marcelolx in #201
- Add encoding options to Resolver::Static#read and Resolver::Dynamic#read by @denzelem in #180
- Add support to override manifest_path as a configuration by @fabiormoura in #195
Full Changelog: v0.9.1...v1.0.0
v0.9.1
What's Changed
- Fix 404 for loading source maps with digests in url by @theodorton in #194
- Require active_support's delegation module (fix crash introduced in 0.9.0) by @aaronjensen in #191
- Fix deprecation in engine mounting by @atomaka in #198
New Contributors
Full Changelog: v0.9.0...v0.9.1
v0.9.0
What's Changed
- Digests of files that can have dependencies on other files in the load path need to reflect those dependencies by @dhh in #188
- Provide :all and :app helpers for stylesheet references via cached methods by @dhh in #190
- Shorter digest length by @wlipa in #173
- Require rack/version for Rack::RELEASE constant by @aaronjensen in #159
- Adds the assets:clean[count] parameter by @codergeek121 in #165
- Improve source mapping compiler log message by @esasse in #163
- Support base64 encoded digests to account for rollup 4.x by @aaronjensen in #168
- Preserve options with
stylesheet_link_tag
:all
by @kevinmcconnell in #177 - Handle sourceMappingURL already prefixed with asset path by @tagCincy in #170
- Maintain sourcemap file extensions by @tagCincy in #171
- Sychronize cache sweeper action to prevent race condition by @dhh in #189
New Contributors
- @chrisalley made their first contribution in #156
- @xuanxu made their first contribution in #160
- @codergeek121 made their first contribution in #165
- @esasse made their first contribution in #163
- @HashNotAdam made their first contribution in #167
- @wlipa made their first contribution in #173
- @kevinmcconnell made their first contribution in #177
- @tagCincy made their first contribution in #170
- @m-nakamura145 made their first contribution in #174
Full Changelog: v0.8.0...v0.9.0
v0.8.0
What's Changed
- fix: Vary HTTP header by @dunglas in #136
- Prevent damage to /* ... */ comments with missing source maps by @pond in #132
- Adds support for relative url root by @markstanley-nps in #138
- Update warning message to use correct location by @phantomwhale in #146
- Source maps do not have to be on their own line by @pond in #133
- Add helper to include all stylesheets in the load path by @dhh in #154
- Use rack constants for headers by @brenogazzola in #147
Full Changelog: v0.7.0...v0.8.0
v0.7.0
What's Changed
- Identify relative protocol asset URLs by @barrywoolgar in #83
- Improve css compiler by @brenogazzola in #80
- Updates to upgrade guide by @stevegeek in #81
- Add support to oj gem by @brenogazzola in #85
- Silence asset requests with config.assets.quiet by @thomascchen in #88
- Remove twice config.assets.version assignations by @kevynlebouille in #93
- Handle SVG mask URL with encoded anchor by @thibaudgg in #98
- Warn when precompiling assets in development by @abevoelker in #102
- Allow assets to be found using their non digested path by @rainerborene in #100
- Rack 2/3 compatibility by @brenogazzola in #113
- Add support for asset host by @brenogazzola in #118
Full Changelog: v0.6.4...v0.7.0
v0.6.4
What's Changed
- Preserve asset paths order when deduping by @brenogazzola in #75
Full Changelog: v0.6.3...v0.6.4