Skip to content

Commit e335de2

Browse files
authored
Merge pull request #3340 from projectblacklight/rails8
Test on Rails 8
2 parents 2e95685 + d2c2dc0 commit e335de2

File tree

5 files changed

+37
-18
lines changed

5 files changed

+37
-18
lines changed

.github/workflows/ruby.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ jobs:
4343
additional_engine_cart_rails_options: [""]
4444
additional_name: [""]
4545
include:
46+
- ruby: "3.3"
47+
rails_version: "8.0.0.beta1"
48+
additional_engine_cart_rails_options: --css=bootstrap
4649
- ruby: "3.2"
4750
rails_version: "7.0.8.4"
4851
- ruby: "3.2"
@@ -66,7 +69,7 @@ jobs:
6669
VIEW_COMPONENT_VERSION: ${{ matrix.view_component_version }}
6770
BOOTSTRAP_VERSION: ${{ matrix.bootstrap_version }}
6871
BLACKLIGHT_API_TEST: ${{ matrix.api }}
69-
ENGINE_CART_RAILS_OPTIONS: "--skip-git --skip-listen --skip-spring --skip-keeps --skip-coffee --skip-test ${{ matrix.additional_engine_cart_rails_options }}"
72+
ENGINE_CART_RAILS_OPTIONS: "--skip-git --skip-listen --skip-spring --skip-keeps --skip-kamal --skip-solid --skip-coffee --skip-test ${{ matrix.additional_engine_cart_rails_options }}"
7073
steps:
7174
- uses: actions/checkout@v4
7275
- name: Set up Ruby

blacklight.gemspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Gem::Specification.new do |s|
2525

2626
s.required_ruby_version = '>= 2.7'
2727

28-
s.add_dependency "rails", '>= 7.0', '< 8'
28+
s.add_dependency "rails", '>= 7.0', '< 9'
2929
s.add_dependency "globalid"
3030
s.add_dependency "jbuilder", '~> 2.7'
3131
s.add_dependency "kaminari", ">= 0.15" # the pagination (page 1,2,3, etc..) of our search results

lib/generators/blacklight/assets/importmap_generator.rb

Lines changed: 29 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ def import_javascript_assets
1919
CONTENT
2020
end
2121

22+
return unless defined?(Sprockets)
23+
2224
append_to_file 'app/assets/config/manifest.js' do
2325
<<~CONTENT
2426
//= link blacklight/manifest.js
@@ -27,23 +29,43 @@ def import_javascript_assets
2729
end
2830

2931
def append_blacklight_javascript
32+
# This may already be present if rails new was invoked with `--css bootstrap'
33+
append_to_file 'app/javascript/application.js' do
34+
<<~CONTENT
35+
import * as bootstrap from "bootstrap"
36+
CONTENT
37+
end
38+
3039
append_to_file 'app/javascript/application.js' do
3140
<<~CONTENT
32-
import bootstrap from "bootstrap"
3341
import githubAutoCompleteElement from "@github/auto-complete-element"
3442
import Blacklight from "blacklight"
3543
CONTENT
3644
end
3745
end
3846

3947
def add_stylesheet
40-
gem "sassc-rails", "~> 2.1"
48+
if File.exist? 'app/assets/stylesheets/application.bootstrap.scss'
49+
if ENV['CI']
50+
run "yarn add file:#{Blacklight::Engine.root}"
51+
else
52+
run "yarn add blacklight-frontend@#{Blacklight::VERSION}"
53+
end
4154

42-
create_file 'app/assets/stylesheets/blacklight.scss' do
43-
<<~CONTENT
44-
@import 'bootstrap';
45-
@import 'blacklight/blacklight';
46-
CONTENT
55+
append_to_file 'app/assets/stylesheets/application.bootstrap.scss' do
56+
<<~CONTENT
57+
@import "blacklight-frontend/app/assets/stylesheets/blacklight/blacklight";
58+
CONTENT
59+
end
60+
else
61+
gem "sassc-rails", "~> 2.1"
62+
63+
create_file 'app/assets/stylesheets/blacklight.scss' do
64+
<<~CONTENT
65+
@import 'bootstrap';
66+
@import 'blacklight/blacklight';
67+
CONTENT
68+
end
4769
end
4870
end
4971
end

lib/generators/blacklight/assets_generator.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ class AssetsGenerator < Rails::Generators::Base
77
def run_asset_pipeline_specific_generator
88
generated_options = "--bootstrap-version='#{options[:'bootstrap-version']}'" if options[:'bootstrap-version']
99

10-
generator = if defined?(Propshaft)
11-
'blacklight:assets:propshaft'
12-
elsif defined?(Importmap)
10+
generator = if defined?(Importmap)
1311
'blacklight:assets:importmap'
12+
elsif defined?(Propshaft)
13+
'blacklight:assets:propshaft'
1414
elsif defined?(Sprockets)
1515
'blacklight:assets:sprockets'
1616
end

spec/test_app_templates/lib/generators/test_app_generator.rb

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,6 @@ def run_test_support_generator
2929
generate(:'blacklight:test_support')
3030
end
3131

32-
def add_local_assets_for_propshaft
33-
return unless defined?(Propshaft)
34-
35-
run "yarn add #{Blacklight::Engine.root}"
36-
end
37-
3832
def add_component_template_override
3933
src_template = File.join(Blacklight::Engine.root, 'app', 'components', 'blacklight', 'top_navbar_component.html.erb')
4034
target_template = File.join('app', 'components', 'blacklight', 'top_navbar_component.html.erb')

0 commit comments

Comments
 (0)