Support The following bundled gems are added.

This commit is contained in:
Kazuhiro NISHIYAMA 2024-10-09 12:55:28 +09:00
parent ed11a244dd
commit bd85e88d31
No known key found for this signature in database
GPG Key ID: 262ED8DBB4222F7A
2 changed files with 18 additions and 6 deletions

View File

@ -46,10 +46,11 @@ jobs:
- name: Download previous gems list
run: |
data=bundled_gems.json
mkdir -p .downloaded-cache
ln -s .downloaded-cache/$data .
curl -O -R -z ./$data https://stdgems.org/$data
for data in bundled_gems.json default_gems.json; do
ln -s .downloaded-cache/$data .
curl -O -R -z ./$data https://stdgems.org/$data
done
- name: Update bundled gems list
id: bundled_gems

View File

@ -15,13 +15,18 @@ update = ->(list, type, desc = "updated") do
item[$1 || "* "]
end
end
ARGV.each do |type|
last = JSON.parse(File.read("#{type}_gems.json"))['gems'].filter_map do |g|
load_gems_json = ->(type) do
JSON.parse(File.read("#{type}_gems.json"))['gems'].filter_map do |g|
v = g['versions'].values_at(*prevs).compact.first
g = g['gem']
g = 'RubyGems' if g == 'rubygems'
[g, v] if v
end.to_h
end
ARGV.each do |type|
last = load_gems_json[type]
changed = File.foreach("gems/#{type}_gems").filter_map do |l|
next if l.start_with?("#")
g, v = l.split(" ", 3)
@ -32,7 +37,13 @@ ARGV.each do |type|
update[changed, type] or next
if added and !added.empty?
if type == 'bundled'
update[added, type, 'promoted from default gems'] or next
default_gems = load_gems_json['default']
promoted = {}
added.delete_if do |k, v|
default_gems.key?(k) && promoted[k] = v
end
update[added, type, 'added']
update[promoted, type, 'promoted from default gems'] or next
else
update[added, type, 'added'] or next
end