Skip to content

Commit 3ad45c5

Browse files
committed
Improve script for listing versions
1 parent 32110d4 commit 3ad45c5

File tree

1 file changed

+21
-10
lines changed

1 file changed

+21
-10
lines changed

versions-strings-for-builder.rb

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,32 @@
22
hash = File.read('ruby-builder-versions.json')
33
versions = JSON.load(hash).transform_keys(&:to_sym)
44

5-
by_minor = versions[:ruby].group_by { |v| v[/^\d\.\d/] }
5+
ONLY_LATEST_PATCH = ENV['ONLY_LATEST_PATCH']
66

7-
by_minor.each_pair do |minor, versions|
8-
puts versions.map { |v| "ruby-#{v}" }.join(', ') if minor
7+
def filter(versions)
8+
versions -= %w[head]
9+
if ONLY_LATEST_PATCH
10+
versions = versions.group_by { |v| v[/^\d+\.\d+/] }.map { _2.last }
11+
end
12+
versions
913
end
1014

11-
puts
12-
puts (versions[:truffleruby] - %w[head]).map { |v| "truffleruby-#{v}" }.join(', ')
15+
if ONLY_LATEST_PATCH
16+
puts filter(versions[:ruby]).map { |v| "ruby-#{v}" }.join(', ')
17+
else
18+
by_minor = versions[:ruby].group_by { |v| v[/^\d+\.\d+/] }
19+
by_minor.each_pair do |minor, versions|
20+
puts versions.map { |v| "ruby-#{v}" }.join(', ') if minor
21+
end
22+
end
1323

1424
puts
15-
puts (versions[:"truffleruby+graalvm"] - %w[head]).map { |v| "truffleruby+graalvm-#{v}" }.join(', ')
25+
puts filter(versions[:truffleruby]).map { |v| "truffleruby-#{v}" }.join(', ')
1626

1727
puts
18-
puts (versions[:jruby] - %w[head]).map { |v| "jruby-#{v}" }.join(', ')
28+
puts filter(versions[:"truffleruby+graalvm"]).map { |v| "truffleruby+graalvm-#{v}" }.join(', ')
1929

20-
(versions[:jruby] - %w[head]).each do |v|
21-
puts "- { os: windows-latest, jruby-version: #{v}, ruby: jruby-#{v} }"
22-
end
30+
puts
31+
puts filter(versions[:jruby]).map { |v| "jruby-#{v}" }.join(', ')
32+
puts "For Windows:"
33+
puts filter(versions[:jruby]).join(', ')

0 commit comments

Comments
 (0)