1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

[DOC] Exclude non-updated stdlibs since the previous release

This commit is contained in:
Nobuyoshi Nakada 2021-12-17 02:36:09 +09:00
parent b746b713e5
commit 693a561cfa
No known key found for this signature in database
GPG key ID: 7CD2805BFA3770C6

View file

@ -22,19 +22,48 @@ jobs:
git grep -l -F -e $header -e HAVE_`echo $header | tr a-z./ A-Z__` -- . > /dev/null || echo $header
done | grep -F .
working-directory: include
- name: Maintain updated default gem list
- name: Download default gems list
run: |
news = File.read("NEWS.md")
curl -O https://stdgems.org/default_gems.json
- name: Make default gems list
run: |
require 'rubygems'
$:.unshift "lib"
gems = Dir.glob("{ext,lib}/**/*.gemspec").map {|f|
rgver = File.foreach("lib/rubygems.rb") do |line|
break $1 if /^\s*VERSION\s*=\s*"([^"]+)"/ =~ line
end
gems = Dir.glob("{ext,lib}/**/*.gemspec").map do |f|
spec = Gem::Specification.load(f)
[spec.name, spec.version]
}.sort
news.sub!(/^\*\s+The following default gem are updated\.\K(\n\s+\*\s+)((?i:RubyGems))(?:\1.*)*/) do
["", $2, gems.map {|*spec| spec.join(" ")}].join($1)
"#{spec.name} #{spec.version}"
end.sort
File.open("stdlibs", "w") do |f|
f.puts "RubyGems #{rgver}"
f.puts gems
end
shell: ruby --disable=gems {0}
- name: Maintain updated default gems list in NEWS
run: |
require 'json'
news = File.read("NEWS.md")
prev = news[/since the \*+(\d+\.\d+\.\d+)\*+/, 1]
prevs = [prev, prev.sub(/\.\d+\z/, '')]
last = JSON.parse(File.read("default_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
new = File.readlines('stdlibs', chomp: true).grep_v(/^#/)
gems = new - last
news.sub!(/^\*\s+The following default gems? are updated\.\K(\n\s+\*\s+).*(?:\1.*)*/) do
["", gems].join($1)
end or exit
File.write("NEWS.md", news)
shell: ruby {0}
- name: Check diffs
id: diff
run: |