Skip to content

Commit ebeac11

Browse files
committed
Add a JRuby-specific dependency for activerecord ~> 7.0 (closes #150).
* This is necessary since `activerecord-jdbc-adapter` currently requires `activerecord` ~> 7.1.0. Thus require `activerecord` ~> 7.0 for JRuby, otherwise require `activerecord` ~> 8.0 for CRuby/TruffleRuby.
1 parent 86b8d01 commit ebeac11

File tree

4 files changed

+24
-3
lines changed

4 files changed

+24
-3
lines changed

Gemfile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@ gem 'sqlite3', '~> 2.0', platforms: [:mri, :truffleruby]
88

99
platform :jruby do
1010
gem 'jruby-openssl', '~> 0.7'
11-
gem 'activerecord-jdbcsqlite3-adapter', '~> 70.0'
12-
gem 'activerecord', '< 7.1.0'
11+
gem 'activerecord-jdbcsqlite3-adapter', '~> 71.0'
1312
end
1413

1514
group :development do

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,7 @@ Ronin::DB::Models.connect
170170

171171
* [Ruby] >= 3.2.0
172172
* [activerecord] ~> 8.0
173+
(or ~> 7.0 on JRuby)
173174

174175
## Install
175176

gemspec.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,14 @@ metadata:
2121

2222
required_ruby_version: ">= 3.2.0"
2323

24+
ruby_dependencies:
25+
activerecord: ~> 8.0
26+
27+
jruby_dependencies:
28+
activerecord: ~> 7.0
29+
2430
dependencies:
2531
uri-query_params: ~> 0.6
26-
activerecord: ~> 8.0
2732

2833
development_dependencies:
2934
bundler: ~> 2.0

ronin-db-activerecord.gemspec

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,22 @@ Gem::Specification.new do |gem|
4848

4949
split = ->(string) { string.split(/,\s*/) }
5050

51+
if RUBY_PLATFORM =~ /java/
52+
gem.platform = Gem::Platform.new("java")
53+
54+
if gemspec['jruby_dependencies']
55+
gemspec['jruby_dependencies'].each do |name,versions|
56+
gem.add_dependency(name,split[versions])
57+
end
58+
end
59+
else
60+
if gemspec['ruby_dependencies']
61+
gemspec['ruby_dependencies'].each do |name,versions|
62+
gem.add_dependency(name,split[versions])
63+
end
64+
end
65+
end
66+
5167
if gemspec['dependencies']
5268
gemspec['dependencies'].each do |name,versions|
5369
gem.add_dependency(name,split[versions])

0 commit comments

Comments
 (0)