Releases: joelmoss/proscenium
Releases · joelmoss/proscenium
v0.22.0
- FEAT: Support Rails 8.1
- FEAT: Pre-compilation task using
rails assets:precompile, and configurable with theprecompileconfig option. - FEAT: Assets in
/vendordirectory are now served exactly as-is, without building or pre-compilation. And are served with long cache lifetime. - FIX: Improved exceptions, taking full advantage of Rails error pages.
- CHORE: Removed support for cache query string. use pre-compilation instead.
- CHORE: Removed server-side import map support. Use
aliasesconfig instead. - CHORE: Update esbuild to 0.25.12
Full Changelog: v0.21.4...v0.22.0
v0.21.4
- FIX: Ensure the query string used as the cache version, is passed down to nested imports, which avoids mismatched query strings.
Full Changelog: v0.21.3...v0.21.4
v0.21.3
- FIX: Fixes a few cases of incorrect alias resolution.
Full Changelog: v0.21.0...v0.21.3
v0.21.0
- NEW: Introduce alias mapping via the
aliasesconfig option. This is a simple way to map one import to another in a similar way to import maps, but it is far simpler. Import maps include features that are unnecessary when used on the server. Support for import maps will be removed in v0.22.0
Full Changelog: v0.20.0...v0.21.0
v0.20.0
What's Changed?
- BREAKING(i18n): Keys are converted to camelCase, as per the JavaScript convention.
- FIX: Serve asset chunks with long cache lifetime, as they are always unique anyway
- FEAT: Added
own-keysNPM module replacement. - CHORE: updated all dependencies.
Full Changelog: v0.19.0...v0.20.0
v0.19.0
This one is a big release that has been nearly a year in the making. But it's been heavily used in a production Rails app during development. Spit, polish, and docs are next!
What's Changed
- NEW: Extracted phlex support to new proscenium-phlex gem
- NEW: Extracted view_component support to new proscenium-view_component gem
- NEW:
loggingconfig to enable/disable logging (default: true) - NEW:
ensure_loadedconfig (default::raise), allowing you to:logor:raiseon side loaded assets that have not been included. - NEW:
cache_query_stringconfig option to append a query string to asset URL's for use with caching. - NEW: Experimental package registry via the
@rubygemsscope. - NEW: Automatically use native Web APIs instead of npm packages to reduce http requests.
- NEW: Support
unbundleimport attribute as an alternative to theunbundle:prefix, to unbundle an import. - NEW: Import only CSS module names with the
cssmodulenamesimport attribute. - NEW: Supports Rails 8
- FIX: Only the first CSS module is now loaded in the ancestry, in addition to regular CSS files.
...plus loads more improvements and fixes under the hood!
Full Changelog: v0.18.0...v0.19.0
v0.18.0
v0.17.0
What's Changed
- BREAKING: Removed parsing and building of HTTP(S) URL's. These are now passed through as-is, to allow the browser to handle them.
- feat: Rails asset helpers will now use Rails default conventions for CSS and JS paths, while still being processed with Proscenium. So if the given
pathis a bare path (does not start with/or./or../), then we use Rails default conventions, and serve CSS from/app/assets/stylesheetsand JS from/app/javascript.
Full Changelog: v0.16.0...v0.17.0
v0.16.0
What's Changed
- feat:
sideload_assetshelper for fine grained control over what and how assets are side loaded. - feat: Cache asset path maps ("input::output") when building to path
- feat: Experimental CSS Module rewriter
- fix: lots! 😜
- Require Ruby >= 3.2
- Upgrade Go to 1.23
Full Changelog: v0.15.0...v0.16.0
v0.14.0
Full Changelog: v0.13.0...v0.14.0
Changes
- In development CSS module names now include the path to the file for easier debugging and location of where styles are defined. So instead of
tab-2f1f6523, it will betab-2f1f6523__path-to-file-module-css.