📝 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