Skip to content

Releases: joelmoss/proscenium

v0.22.0

07 Nov 13:51

Choose a tag to compare

  • FEAT: Support Rails 8.1
  • FEAT: Pre-compilation task using rails assets:precompile, and configurable with the precompile config option.
  • FEAT: Assets in /vendor directory 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 aliases config instead.
  • CHORE: Update esbuild to 0.25.12

Full Changelog: v0.21.4...v0.22.0

v0.21.4

23 Oct 17:03

Choose a tag to compare

  • 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

18 Oct 12:02

Choose a tag to compare

  • FIX: Fixes a few cases of incorrect alias resolution.

Full Changelog: v0.21.0...v0.21.3

v0.21.0

18 Oct 12:01

Choose a tag to compare

  • NEW: Introduce alias mapping via the aliases config 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

06 Oct 15:44

Choose a tag to compare

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-keys NPM module replacement.
  • CHORE: updated all dependencies.

Full Changelog: v0.19.0...v0.20.0

v0.19.0

08 Sep 22:36

Choose a tag to compare

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: logging config to enable/disable logging (default: true)
  • NEW: ensure_loaded config (default: :raise), allowing you to :log or :raise on side loaded assets that have not been included.
  • NEW: cache_query_string config option to append a query string to asset URL's for use with caching.
  • NEW: Experimental package registry via the @rubygems scope.
  • NEW: Automatically use native Web APIs instead of npm packages to reduce http requests.
  • NEW: Support unbundle import attribute as an alternative to the unbundle: prefix, to unbundle an import.
  • NEW: Import only CSS module names with the cssmodulenames import 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

15 Nov 17:40

Choose a tag to compare

What's Changed

  • Side loaded assets are now prepended to the response body when the Phlex fragment header is present.
  • Replace Dry gems with Literal.

Full Changelog: v0.17.0...v0.18.0

v0.17.0

29 Oct 19:22

Choose a tag to compare

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 path is a bare path (does not start with / or ./ or ../), then we use Rails default conventions, and serve CSS from /app/assets/stylesheets and JS from /app/javascript.

Full Changelog: v0.16.0...v0.17.0

v0.16.0

11 Oct 16:49

Choose a tag to compare

What's Changed

  • feat: sideload_assets helper 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

17 Nov 16:37

Choose a tag to compare

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 be tab-2f1f6523__path-to-file-module-css.