Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: AlchemyCMS/alchemy_cms
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 90d36a9a2de1028f9a9fbd4fd3d2667bea6bc713
Choose a base ref
..
head repository: AlchemyCMS/alchemy_cms
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: d363fbd0f728b3ea614d8f68626445646633af49
Choose a head ref
Showing with 1,195 additions and 828 deletions.
  1. +2 −0 .gem_release.yml
  2. +33 −0 .github/dependabot.yml
  3. +4 −4 .github/workflows/build_test.yml
  4. +21 −35 CHANGELOG.md
  5. +5 −5 Gemfile
  6. +25 −4 README.md
  7. +22 −0 Rakefile
  8. +3 −3 alchemy_cms.gemspec
  9. +1 −1 app/assets/builds/alchemy/admin.css
  10. +1 −1 app/assets/builds/alchemy/admin.css.map
  11. +1 −0 app/assets/builds/alchemy/custom-properties.css
  12. +1 −0 app/assets/builds/alchemy/custom-properties.css.map
  13. +1 −1 app/assets/builds/alchemy/welcome.css
  14. +1 −1 app/assets/builds/alchemy/welcome.css.map
  15. +1 −1 app/assets/builds/tinymce/skins/content/alchemy/content.min.css
  16. +1 −1 app/assets/builds/tinymce/skins/content/alchemy/content.min.css.map
  17. +1 −1 app/controllers/alchemy/admin/resources_controller.rb
  18. +22 −1 app/helpers/alchemy/admin/navigation_helper.rb
  19. +34 −0 app/javascript/alchemy_admin/components/elements_window.js
  20. +65 −0 app/javascript/alchemy_admin/components/elements_window_handle.js
  21. +1 −0 app/javascript/alchemy_admin/components/index.js
  22. +5 −5 app/javascript/alchemy_admin/components/preview_window.js
  23. +4 −5 app/models/concerns/alchemy/picture_thumbnails.rb
  24. +3 −3 app/stylesheets/alchemy/_defaults.scss
  25. +20 −20 app/stylesheets/alchemy/_deprecated_variables.scss
  26. +2 −1 app/stylesheets/alchemy/_deprecation.scss
  27. +29 −23 app/stylesheets/alchemy/_extends.scss
  28. +41 −35 app/stylesheets/alchemy/_mixins.scss
  29. +1 −1 app/stylesheets/alchemy/_variables.scss
  30. +43 −43 app/stylesheets/alchemy/admin.scss
  31. +20 −16 app/stylesheets/alchemy/admin/archive.scss
  32. +15 −12 app/stylesheets/alchemy/admin/base.scss
  33. +20 −17 app/stylesheets/alchemy/admin/buttons.scss
  34. +4 −2 app/stylesheets/alchemy/admin/clipboard.scss
  35. +5 −3 app/stylesheets/alchemy/admin/dashboard.scss
  36. +17 −11 app/stylesheets/alchemy/admin/dialogs.scss
  37. +153 −101 app/stylesheets/alchemy/admin/elements.scss
  38. +7 −5 app/stylesheets/alchemy/admin/errors.scss
  39. +7 −5 app/stylesheets/alchemy/admin/flatpickr.scss
  40. +11 −7 app/stylesheets/alchemy/admin/form_fields.scss
  41. +23 −19 app/stylesheets/alchemy/admin/forms.scss
  42. +18 −14 app/stylesheets/alchemy/admin/frame.scss
  43. +4 −2 app/stylesheets/alchemy/admin/hints.scss
  44. +7 −4 app/stylesheets/alchemy/admin/image_library.scss
  45. +3 −1 app/stylesheets/alchemy/admin/images.scss
  46. +3 −1 app/stylesheets/alchemy/admin/labels.scss
  47. +4 −2 app/stylesheets/alchemy/admin/lists.scss
  48. +65 −43 app/stylesheets/alchemy/admin/navigation.scss
  49. +21 −18 app/stylesheets/alchemy/admin/nodes.scss
  50. +20 −18 app/stylesheets/alchemy/admin/notices.scss
  51. +10 −8 app/stylesheets/alchemy/admin/pagination.scss
  52. +26 −19 app/stylesheets/alchemy/admin/preview_window.scss
  53. +1 −1 app/stylesheets/alchemy/admin/print.scss
  54. +9 −5 app/stylesheets/alchemy/admin/resource_info.scss
  55. +9 −6 app/stylesheets/alchemy/admin/search.scss
  56. +43 −33 app/stylesheets/alchemy/admin/selects.scss
  57. +37 −33 app/stylesheets/alchemy/admin/sitemap.scss
  58. +7 −4 app/stylesheets/alchemy/admin/tables.scss
  59. +6 −3 app/stylesheets/alchemy/admin/tags.scss
  60. +7 −4 app/stylesheets/alchemy/admin/toolbar.scss
  61. +4 −2 app/stylesheets/alchemy/admin/typography.scss
  62. +5 −2 app/stylesheets/alchemy/admin/upload.scss
  63. +2 −1 app/stylesheets/alchemy/{_custom-properties.css → custom-properties.css}
  64. +5 −5 app/stylesheets/alchemy/welcome.scss
  65. +8 −8 app/stylesheets/tinymce/skins/content/alchemy/content.scss
  66. +122 −122 app/stylesheets/tinymce/skins/ui/alchemy/skin.scss
  67. +1 −1 app/views/alchemy/_menubar.html.erb
  68. +0 −4 app/views/alchemy/admin/elements/_element.html.erb
  69. +1 −0 app/views/alchemy/admin/elements/_header.html.erb
  70. +1 −0 app/views/alchemy/admin/elements/index.html.erb
  71. +4 −1 app/views/layouts/alchemy/admin.html.erb
  72. +0 −27 lib/alchemy/modules.rb
  73. +1 −1 package.json
  74. +3 −3 spec/dummy/app/models/event.rb
  75. +1 −1 spec/dummy/config/application.rb
  76. +1 −1 spec/dummy/config/locales/alchemy.en.yml
  77. +20 −1 spec/features/admin/resources_integration_spec.rb
  78. +40 −0 spec/helpers/alchemy/admin/navigation_helper_spec.rb
  79. +0 −36 spec/libraries/modules_spec.rb
2 changes: 2 additions & 0 deletions .gem_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
bump:
file: lib/alchemy/version.rb
33 changes: 33 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -29,3 +29,36 @@ updates:
- "minor"
- "patch"
versioning-strategy: increase-if-necessary
- package-ecosystem: "bundler"
directory: "/"
schedule:
interval: "daily"
groups:
dev-dependencies:
dependency-type: "development"
patterns:
- "capybara*"
- "bootsnap"
- "listen"
- "factory*"
- "puma"
- "rails-controller-testing"
- "rspec-*"
- "simplecov"
- "selenium-webdriver"
- "shoulda-matchers"
- "timecop"
- "webmock"
- "web-console"
update-types:
- "minor"
- "patch"
rails:
dependency-type: "production"
patterns:
- "action*"
- "active*"
- "rails"
- "railties"
update-types:
- "patch"
8 changes: 4 additions & 4 deletions .github/workflows/build_test.yml
Original file line number Diff line number Diff line change
@@ -63,10 +63,10 @@ jobs:
fail-fast: false
matrix:
rails:
- "7.0.0"
- "7.1.0"
- "7.2.0"
- "8.0.0.beta1"
- "7.0"
- "7.1"
- "7.2"
- "8.0"
ruby:
- "3.1"
- "3.2"
56 changes: 21 additions & 35 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
# Changelog

## 7.3.4 (2024-11-18)

- [7.3-stable] chore: Fix rubocop styling issues [#3080](https://github.com/AlchemyCMS/alchemy_cms/pull/3080) ([tvdeyen](https://github.com/tvdeyen))
- [7.3] Fix welcome screen stylesheet [#3078](https://github.com/AlchemyCMS/alchemy_cms/pull/3078) ([tvdeyen](https://github.com/tvdeyen))

## 7.3.3 (2024-10-15)

- [7.3-stable] Fix loading custom properties into Tinymce skin [#3070](https://github.com/AlchemyCMS/alchemy_cms/pull/3070) ([tvdeyen](https://github.com/tvdeyen))

## 7.3.2 (2024-10-15)

- [7.3-stable] Fix filtering associated models by id [#3068](https://github.com/AlchemyCMS/alchemy_cms/pull/3068) ([alchemycms-bot](https://github.com/alchemycms-bot))
- [7.3-stable] fix new page form [#3064](https://github.com/AlchemyCMS/alchemy_cms/pull/3064) ([tvdeyen](https://github.com/tvdeyen))

## 7.3.1 (2024-10-04)

- [7.3-stable] Add tinymce skin files to Sprockets manifest [#3063](https://github.com/AlchemyCMS/alchemy_cms/pull/3063) ([tvdeyen](https://github.com/tvdeyen))
- [7.3] Deprecate resources helpers [#3040](https://github.com/AlchemyCMS/alchemy_cms/pull/3040) ([tvdeyen](https://github.com/tvdeyen))
- [7.3-stable] Make page select portable [#3038](https://github.com/AlchemyCMS/alchemy_cms/pull/3038) ([tvdeyen](https://github.com/tvdeyen))

## 7.3.0 (2024-09-11)

- fix(Ingredient::Picture): Do not try to localize CSS class if empty [#3031](https://github.com/AlchemyCMS/alchemy_cms/pull/3031) ([tvdeyen](https://github.com/tvdeyen))
@@ -73,16 +93,6 @@
- Precompile CSS files into Gem [#2886](https://github.com/AlchemyCMS/alchemy_cms/pull/2886) ([tvdeyen](https://github.com/tvdeyen))
- Return 422 on validation error [#2869](https://github.com/AlchemyCMS/alchemy_cms/pull/2869) ([tvdeyen](https://github.com/tvdeyen))

## 7.2.6 (2024-09-04)

- [7.2-stable] Set Alchemy::Page.current in Messages Controller [#3021](https://github.com/AlchemyCMS/alchemy_cms/pull/3021) ([tvdeyen](https://github.com/tvdeyen))
- [7.2-stable] Fallback to @page var if no Current.page is set [#3020](https://github.com/AlchemyCMS/alchemy_cms/pull/3020) ([tvdeyen](https://github.com/tvdeyen))

## 7.2.5 (2024-09-04)

- [7.2-stable] Render Datetime ingredient in local time zone [#3019](https://github.com/AlchemyCMS/alchemy_cms/pull/3019) ([tvdeyen](https://github.com/tvdeyen))
- [7.2-stable] Allow to set input_type on Datetime ingredient editor [#3016](https://github.com/AlchemyCMS/alchemy_cms/pull/3016) ([tvdeyen](https://github.com/tvdeyen))

## 7.2.4 (2024-08-10)

- [7.2-stable] Fix margin of alchemy-message in alchemy-dialog [#2993](https://github.com/AlchemyCMS/alchemy_cms/pull/2993) ([tvdeyen](https://github.com/tvdeyen))
@@ -251,11 +261,6 @@
- Add nodes to page dialog [#2699](https://github.com/AlchemyCMS/alchemy_cms/pull/2699) ([sascha-karnatz](https://github.com/sascha-karnatz))
- Fixes language switching to default language [#2689](https://github.com/AlchemyCMS/alchemy_cms/pull/2689) ([robinboening](https://github.com/robinboening))

## 7.1.12 (2024-09-04)

- [7.1-stable] Render Datetime ingredient in local time zone [#3018](https://github.com/AlchemyCMS/alchemy_cms/pull/3018) ([tvdeyen](https://github.com/tvdeyen))
- [7.1-stable] Allow to set input_type on Datetime ingredient editor [#3015](https://github.com/AlchemyCMS/alchemy_cms/pull/3015) ([tvdeyen](https://github.com/tvdeyen))

## 7.1.11 (2024-08-10)

- [7.1-stable] fix PictureEditor defaultCropSize [#2991](https://github.com/AlchemyCMS/alchemy_cms/pull/2991) ([alchemycms-bot](https://github.com/alchemycms-bot))
@@ -466,26 +471,6 @@
- Convert Dirty from Coffeescript to Javascript [#2510](https://github.com/AlchemyCMS/alchemy_cms/pull/2510) ([sascha-karnatz](https://github.com/sascha-karnatz))
- Convert buttons.js.coffee to buttons.js [#2509](https://github.com/AlchemyCMS/alchemy_cms/pull/2509) ([sascha-karnatz](https://github.com/sascha-karnatz))

## 7.0.15 (2024-09-04)

- [7.0-stable] Render Datetime ingredient in local time zone [#3017](https://github.com/AlchemyCMS/alchemy_cms/pull/3017) ([tvdeyen](https://github.com/tvdeyen))
- [7.0-stable] Allow to set input_type on Datetime ingredient editor [#3014](https://github.com/AlchemyCMS/alchemy_cms/pull/3014) ([tvdeyen](https://github.com/tvdeyen))
- [7.0-stable] Fix combining search filters and pagination [#2980](https://github.com/AlchemyCMS/alchemy_cms/pull/2980) ([alchemycms-bot](https://github.com/alchemycms-bot))
- [7.0-stable] Remove call to missing content_positions task [#2961](https://github.com/AlchemyCMS/alchemy_cms/pull/2961) ([alchemycms-bot](https://github.com/alchemycms-bot))
- [7.0-stable] Fix re-render of layoutpages form if validation fails [#2952](https://github.com/AlchemyCMS/alchemy_cms/pull/2952) ([alchemycms-bot](https://github.com/alchemycms-bot))
- [7.0-stable] fix(ContactMessages): Use alchemy route proxy [#2927](https://github.com/AlchemyCMS/alchemy_cms/pull/2927) ([alchemycms-bot](https://github.com/alchemycms-bot))

## 7.0.14 (2024-06-04)

- [7.0-stable] fix(RoutingConstraints): Allow Turbo Stream requests [#2914](https://github.com/AlchemyCMS/alchemy_cms/pull/2914) ([alchemycms-bot](https://github.com/alchemycms-bot))
- [7.0-stable] fix Ingredient Audio and Video boolean type casting [#2910](https://github.com/AlchemyCMS/alchemy_cms/pull/2910) ([alchemycms-bot](https://github.com/alchemycms-bot))

## 7.0.13 (2024-05-29)

- [7.0-stable] Fix preview window width for smaller viewports [#2889](https://github.com/AlchemyCMS/alchemy_cms/pull/2889) ([alchemycms-bot](https://github.com/alchemycms-bot))
- [7.0-stable] Fix Preview Window width [#2880](https://github.com/AlchemyCMS/alchemy_cms/pull/2880) ([alchemycms-bot](https://github.com/alchemycms-bot))
- [7.0-stable] Fix preview window resize transition [#2871](https://github.com/AlchemyCMS/alchemy_cms/pull/2871) ([alchemycms-bot](https://github.com/alchemycms-bot))

## 7.0.12 (2024-04-12)

- [7.0-stable] Fix Ingredient Boolean View [#2837](https://github.com/AlchemyCMS/alchemy_cms/pull/2837) ([alchemycms-bot](https://github.com/alchemycms-bot))
@@ -1926,3 +1911,4 @@ No changes
## 3.0.0 (2014-07-03)

[Release Notes](https://github.com/AlchemyCMS/alchemy_cms/releases/tag/v3.0.0)

10 changes: 5 additions & 5 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -4,11 +4,11 @@ source "https://rubygems.org"

gemspec

rails_version = ENV.fetch("RAILS_VERSION", "8.0.0.beta1")
gem "rails", "~> #{rails_version}"
rails_version = ENV.fetch("RAILS_VERSION", "8.0")
gem "rails", "~> #{rails_version}.0"

if ENV["DB"].nil? || ENV["DB"] == "sqlite"
gem "sqlite3", (rails_version == "7.0") ? "~> 1.7.0" : "~> 2.0.0"
gem "sqlite3", (rails_version == "7.0") ? "~> 1.7" : "~> 2.0"
end
if ENV["DB"] == "mysql" || ENV["DB"] == "mariadb"
gem "mysql2", "~> 0.5.1"
@@ -27,8 +27,6 @@ group :development, :test do

if ENV["GITHUB_ACTIONS"]
gem "simplecov-cobertura", "~> 2.1"
# Necessary because GH Actions gem cache does not have this "Bundled with Ruby" gem installed
gem "rexml", "~> 3.2.4"

# https://github.com/hotwired/turbo-rails/issues/512
if rails_version == "7.1"
@@ -65,3 +63,5 @@ gem "rails_live_reload", "~> 0.3.5"
gem "dartsass-rails", "~> 0.5.0"

gem "propshaft", "~> 1.0"

gem "gem-release", "~> 2.2"
29 changes: 25 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -341,24 +341,45 @@ $ bin/start

## 📦 Releasing

### Bump version
### 🤖 Automated (recommended)

There is a Rake task that helps you to release a new version of Alchemy.

```bash
$ bundle exec rake alchemy:release
```

> [!NOTE]
> This will release a new patch level
If you want to release a new minor or major version you can do so by setting the `VERSION` environment variable accordingly.

```bash
$ bundle exec rake alchemy:release VERSION=X.Y.Z
```

### 👷🏽‍♀️ Manual

If something goes wrong with the automated release task you can still release a new version manually.

#### 1. Bump version

Bump the version number in `lib/alchemy/version.rb`.

### Update the changelog
#### 2. Update the changelog

```bash
$ export GITHUB_ACCESS_TOKEN=...
$ PREVIOUS_VERSION=4.1.0 bundle exec rake alchemy:changelog:update
```

### Commit version bump
#### 3. Commit version bump

```bash
$ git commit -am "Bump version to vX.Y.Z"
```

### Release a new version
#### 4. Release a new version

This task will publish the ruby gem.
It also tags the latest commit.
22 changes: 22 additions & 0 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -63,11 +63,16 @@ namespace :alchemy do
changes = `git rev-list v#{ENV["PREVIOUS_VERSION"]}..HEAD | bundle exec github_fast_changelog AlchemyCMS/alchemy_cms`.split("\n")
changelog = File.read(original_file)
File.open(new_file, "w") do |file|
file.puts "# Changelog"
file.puts ""
file.puts "## Unreleased"
file.puts ""
changes.each do |change|
next if changelog.include?(change)
file.puts change
end
File.foreach(original_file) do |line|
next if line.include?("# Changelog")
file.puts line
end
file.puts ""
@@ -77,4 +82,21 @@ namespace :alchemy do
File.delete(backup)
end
end

desc "Release a new version of Alchemy to rubygems.org"
task :release do
require_relative "lib/alchemy/version"
ENV["PREVIOUS_VERSION"] = Alchemy::VERSION
system("bundle exec gem bump --version #{ENV.fetch("VERSION", "patch")}")
load "./lib/alchemy/version.rb"
new_version = Alchemy::VERSION
Rake::Task["alchemy:changelog:update"].invoke
changelog = File.read("CHANGELOG.md").gsub(/(##) Unreleased/, "## #{new_version} (#{Time.now.strftime("%Y-%m-%d")})")
File.open("CHANGELOG.md", "w") { |file| file.puts changelog }
system("git add CHANGELOG.md")
system("git commit --amend --no-edit")
system("gem tag")
Rake::Task["release"].invoke
system("git push --follow-tags")
end
end
6 changes: 3 additions & 3 deletions alchemy_cms.gemspec
Original file line number Diff line number Diff line change
@@ -45,10 +45,10 @@ Gem::Specification.new do |gem|
gem.add_runtime_dependency "dragonfly", ["~> 1.4"]
gem.add_runtime_dependency "dragonfly_svg", ["~> 0.0.4"]
gem.add_runtime_dependency "gutentag", ["~> 2.2", ">= 2.2.1"]
gem.add_runtime_dependency "importmap-rails", ["~> 1.2", ">= 1.2.1"]
gem.add_runtime_dependency "importmap-rails", ["~> 2.0"]
gem.add_runtime_dependency "kaminari", ["~> 1.1"]
gem.add_runtime_dependency "originator", ["~> 3.1"]
gem.add_runtime_dependency "ransack", ["~> 4.2", "< 5.0"]
gem.add_runtime_dependency "ransack", [">= 1.8", "< 5.0"]
gem.add_runtime_dependency "simple_form", [">= 4.0", "< 6"]
gem.add_runtime_dependency "turbo-rails", [">= 1.4", "< 2.1"]
gem.add_runtime_dependency "view_component", ["~> 3.0"]
@@ -60,7 +60,7 @@ Gem::Specification.new do |gem|
gem.add_development_dependency "puma", ["~> 6.0"]
gem.add_development_dependency "rails-controller-testing", ["~> 1.0"]
gem.add_development_dependency "rspec-activemodel-mocks", ["~> 1.0"]
gem.add_development_dependency "rspec-rails", ["~> 7.0"]
gem.add_development_dependency "rspec-rails", ["~> 7.1"]
gem.add_development_dependency "simplecov", ["~> 0.20"]
gem.add_development_dependency "selenium-webdriver", ["~> 4.10"]
gem.add_development_dependency "webmock", ["~> 3.3"]
2 changes: 1 addition & 1 deletion app/assets/builds/alchemy/admin.css

Large diffs are not rendered by default.

Loading