-
Notifications
You must be signed in to change notification settings - Fork 22
Expand file tree
/
Copy pathAppraisals
More file actions
50 lines (42 loc) · 1.67 KB
/
Appraisals
File metadata and controls
50 lines (42 loc) · 1.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
def version_to_label(version)
version.scan(/\d/).join
end
def add_appraise_for(activerecord_version:, pg_version:)
appraise "activerecord_#{version_to_label(activerecord_version)}_pg_#{version_to_label(pg_version)}" do
gem "activerecord", activerecord_version, require: "active_record"
gem "pg", pg_version
# The following used to be default gems and ceased to be in recent Ruby versions.
# There is no harm in requiring them regardless of Ruby version.
gem "base64"
gem "benchmark"
gem "bigdecimal"
gem "logger"
gem "mutex_m"
end
end
SUPPORTED_PG_VERSIONS = ["~> 1.0", "~> 1.1", "~> 1.2", "~> 1.3", "~> 1.4", "~> 1.5"]
if Gem::Version.new(RUBY_VERSION) <= Gem::Version.new("3.0")
SUPPORTED_PG_VERSIONS.map do |pg_version|
add_appraise_for(activerecord_version: "~> 5.2", pg_version: pg_version)
end
end
SUPPORTED_PG_VERSIONS.map do |pg_version|
add_appraise_for(activerecord_version: "~> 6.0", pg_version: pg_version)
add_appraise_for(activerecord_version: "~> 6.1", pg_version: pg_version)
end
if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("2.7")
SUPPORTED_PG_VERSIONS.map do |pg_version|
add_appraise_for(activerecord_version: "~> 7.0", pg_version: pg_version)
add_appraise_for(activerecord_version: "~> 7.1", pg_version: pg_version)
end
end
if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("3.1")
SUPPORTED_PG_VERSIONS.map do |pg_version|
add_appraise_for(activerecord_version: "~> 7.2", pg_version: pg_version)
end
end
if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("3.2")
SUPPORTED_PG_VERSIONS.map do |pg_version|
add_appraise_for(activerecord_version: "~> 8.0", pg_version: pg_version)
end
end