diff --git a/.github/workflows/bundled_gems.yml b/.github/workflows/bundled_gems.yml index 12fb2b06e5..2a8e6c244c 100644 --- a/.github/workflows/bundled_gems.yml +++ b/.github/workflows/bundled_gems.yml @@ -67,12 +67,14 @@ jobs: [g, v] unless last[g] == v end changed, added = changed.partition {|g, _| last[g]} - news.sub!(/^\*\s+The following #{type} gems? are updated\.(\n\s+\*\s+)\K.*(?:\1.*)*/) do - changed.map {|g, v|"#{g} #{v}"}.join($1) - end or exit - news.sub!(/^\*\s+The following default gems are now bundled.*(\n\s+\*\s+)\K.*(?:\1.*)*/) do - added.map {|g, v|"#{g} #{v}"}.join($1) - end if added + news.sub!(/^\*( +)The following #{type} gems? are updated\.\n\K(?: \1\* .*\n)*/) do + mark = "#{$1} * " + changed.map {|g, v|"#{mark}#{g} #{v}\n"}.join("") + end or next + news.sub!(/^\*( +)The following default gems are now bundled gems\.\n\K(?: \1\* .*\n)*/) do + mark = "#{$1} * " + added.map {|g, v|"#{mark}#{g} #{v}\n"}.join("") + end or next if added File.write("NEWS.md", news) end shell: ruby {0} diff --git a/.github/workflows/check_misc.yml b/.github/workflows/check_misc.yml index 17404746c5..2872c96ffd 100644 --- a/.github/workflows/check_misc.yml +++ b/.github/workflows/check_misc.yml @@ -72,9 +72,10 @@ jobs: g, v = l.split(" ", 3) [g, v] unless last[g] == v end - news.sub!(/^\*\s+The following #{type} gems? are updated\.(\n\s+\*\s+)\K.*(?:\1.*)*/) do - changed.map {|g, v|"#{g} #{v}"}.join($1) - end or exit + news.sub!(/^\*( +)The following #{type} gems? are updated\.\n\K(?: \1\* .*\n)*/) do + mark = "#{$1} * " + changed.map {|g, v|"#{mark}#{g} #{v}\n"}.join("") + end or next File.write("NEWS.md", news) end shell: ruby {0}