Skip to content

Releases: AlchemyCMS/alchemy_cms

v8.0.2

24 Dec 11:33
0c7af6c

Choose a tag to compare

What's Changed

Full Changelog: v8.0.1...v8.0.2

v8.0.1

23 Dec 17:39
d655683

Choose a tag to compare

What's Changed

  • [8.0-stable] fix(page): Add "page_layout" to ransackable_attributes by @alchemycms-bot[bot] in #3514
  • [8.0-stable] fix(page filter): Only select from content pages by @alchemycms-bot[bot] in #3519
  • [8.0-stable] fix(assignments): Only list draft elements by @alchemycms-bot[bot] in #3520
  • [8.0-stable] fix(ElementsWindow): Focus element if element dom_id is in the url hash by @alchemycms-bot[bot] in #3521
  • [8.0-stable] fix(resource-info): Fix layout for long filenames by @tvdeyen in #3523
  • [8.0-stable] Fix filtering Attachments by only or except setting by @tvdeyen in #3525
  • [8.0-stable] Fix overlay uploader by @alchemycms-ci-bot in #3527
  • [8.0-stable] Add timeout and retry feature for preview window by @alchemycms-bot[bot] in #3528
  • [8.0-stable] Fix UI glitches 2025 by @alchemycms-ci-bot in #3529
  • [8.0-stable] tests: Run system tests with headless Firefox by @alchemycms-ci-bot in #3536
  • [8.0-stable] fix(PictureDescriptionSelect): Add site name to identify language by @alchemycms-ci-bot in #3535
  • Release v8.0.1 by @alchemycms-bot[bot] in #3539

Full Changelog: v8.0.0...v8.0.1

v8.0.0

10 Dec 18:15
2ae0740

Choose a tag to compare

AlchemyCMS 8.0.0

This is a major release with significant new features, architectural improvements, and modernization of the admin interface compared to the 7.4 series.

Highlights

🌙 Dark Theme Support

A complete dark theme has been added to the admin interface (#3251), with separate CSS bundles for light and dark themes (#3379).
The UI now uses CSS custom properties instead of Sass variables for theming (#3242).

📦 Active Storage Support

Alchemy now supports Active Storage as an alternative to Dragonfly for file storage (#3283).
The Dragonfly integration has been extracted into an adapter pattern, making it easy to switch between storage backends (#3278).

⚙️ Type-Safe Configuration

A new DSL-based configuration system with type-safe options has been introduced (#3178).
Configuration options are now accessed via Alchemy.config accessors instead of hash keys (#3275).

📋 Definition Models

Page layouts, element definitions, and ingredient definitions have been converted to ActiveModel classes (#3263, #3264, #3266), providing better encapsulation and validation.

🔍 Advanced Filtering with Ransack

The admin interface now uses Ransack for filtering resources (#3215), with support for date/time pickers (#3231) and custom format validations (#3225).

New Features

Frontend/API

  • Configurable cache-control headers (#3347)

Admin

  • Element icons - Set custom icons for elements in the sidebar (#3356)
  • Attachment "deletable" filter showing usage (#3335)
  • New welcome screen design (#3260)
  • New pagination UX (#3259)
  • Turbo Confirms for confirmation dialogs (#3258)
  • Turbo Frame/Streams for clipboard operations (#3255)
  • Browser validations enabled for forms (#3401)
  • Locale select component (#3400)
  • New info dialog with light/dark logo support (#3396)
  • Delete multiple pictures in background (#3387)
  • Default picture archive order set to latest (#3369)
  • Update checks service for version notifications (#3495)

Security

  • SVG sanitization after upload (#3499)
  • Filename sanitization before upload (#3376)
  • YAML.safe_load for users.yml seeder (#3503)

Developer Experience

  • Propshaft support - Works with both Sprockets and Propshaft (#3066)
  • view_component v4 support (#3346)
  • JS test suite migrated to Vitest from Jest (#3300)
  • Bun as JavaScript bundler and script runner (#2994)
  • fetch() over XHR for AJAX requests (#3239)
  • Icon sprite compilation (#3227)
  • Tidy task to remove legacy essence tables (#3382)
  • Page.all_ingredients association for easier ingredient access (#3507)
  • Number ingredient type for numeric values (#3224)

Breaking Changes

Rails & Ruby Requirements

  • Dropped Rails 7.0 support - Requires Rails 7.1+ (#3267)
  • Stopped testing Ruby 3.1 - Ruby 3.2+ recommended (#3223)

Removed Features

  • Ingredient view partials removed - Use view components instead (#3254)
  • Frontend elements controller removed (#3057)
  • Admin attachments download action removed (#3282)
  • dragonfly_svg plugin removed (#3247)
  • 7.x deprecations removed (#3041)
  • 7.x upgraders removed (#3039)
  • Three letter urlname restriction removed (#3353)

Configuration Changes

  • Configuration now uses Alchemy.config with typed accessors instead of hash access
  • New initializer template - run the upgrade task to copy it (#3268)
  • Alchemy::Config is deprecated in favor of Alchemy.config
  • Alchemy.enable_searchable deprecated for Alchemy.config.show_page_searchable_checkbox (#3188)

Dependency Updates

Migration Guide

  1. Update your Gemfile: gem "alchemy_cms", "~> 8.0"
  2. Run bundle update alchemy_cms
  3. Run rails alchemy:upgrade
  4. Update your configuration to use the new Alchemy.config accessors
  5. If using custom ingredient views, migrate to view components
  6. Review removed deprecations and update accordingly

Full Changelog

For a complete list of all changes, see the https://github.com/AlchemyCMS/alchemy_cms/blob/main/CHANGELOG.md or compare releases on GitHub:
v7.4.0...v8.0.0

v8.0.0.c

28 Nov 07:51
4f15fc7

Choose a tag to compare

v8.0.0.c Pre-release
Pre-release

What's Changed

Full Changelog: v8.0.0.b...v8.0.0.c

v7.4.11

06 Nov 22:17
8d7c013

Choose a tag to compare

What's Changed

Full Changelog: v7.4.10...v7.4.11

v8.0.0.b

06 Nov 22:18
1accf11

Choose a tag to compare

v8.0.0.b Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v8.0.0.a...v8.0.0.b

v7.4.10

06 Nov 22:17
2e2cc24

Choose a tag to compare

What's Changed

Full Changelog: v7.4.9...v7.4.10

v7.4.9

06 Nov 22:17
4b5400d

Choose a tag to compare

What's Changed

Full Changelog: v7.4.8...v7.4.9

v7.4.8

15 Aug 21:30
20f94ca

Choose a tag to compare

What's Changed

  • [7.4-stable] fix(DatetimeView): Use settings value if present by @alchemycms-bot in #3350

Full Changelog: v7.4.7...v7.4.8

v7.3.7

15 Aug 21:19
966d4f8

Choose a tag to compare

What's Changed

  • [7.3-stable] fix(DatetimeView): Use settings value if present by @alchemycms-bot in #3349

Full Changelog: v7.3.6...v7.3.7