mirror of
https://github.com/ruby/ruby.git
synced 2025-08-15 05:29:10 +02:00
Handle preperly comments in middle of lines in gems/bundled_gems
This commit is contained in:
parent
428937a536
commit
6b2d9ed2a5
6 changed files with 13 additions and 13 deletions
12
common.mk
12
common.mk
|
@ -1539,12 +1539,14 @@ prepare-gems: $(HAVE_BASERUBY:yes=update-gems) $(HAVE_BASERUBY:yes=extract-gems)
|
|||
extract-gems: $(HAVE_BASERUBY:yes=update-gems) $(HAVE_BASERUBY:yes=outdate-bundled-gems)
|
||||
update-gems: $(HAVE_BASERUBY:yes=outdate-bundled-gems)
|
||||
|
||||
split_option = -F"\s+|\#.*"
|
||||
|
||||
update-gems$(sequential): PHONY
|
||||
$(ECHO) Downloading bundled gem files...
|
||||
$(Q) $(BASERUBY) -C "$(srcdir)" \
|
||||
-I./tool -rdownloader -answ \
|
||||
-I./tool -rdownloader $(split_option) -answ \
|
||||
-e 'gem, ver = *$$F' \
|
||||
-e 'next if !ver or /^#/=~gem' \
|
||||
-e 'next if !ver' \
|
||||
-e 'old = Dir.glob("gems/#{gem}-*.gem")' \
|
||||
-e 'gem = "#{gem}-#{ver}.gem"' \
|
||||
-e 'Downloader::RubyGems.download(gem, "gems", nil) and' \
|
||||
|
@ -1556,10 +1558,10 @@ update-gems$(sequential): PHONY
|
|||
extract-gems$(sequential): PHONY
|
||||
$(ECHO) Extracting bundled gem files...
|
||||
$(Q) $(BASERUBY) -C "$(srcdir)" \
|
||||
-Itool/lib -rfileutils -rbundled_gem -answ \
|
||||
-Itool/lib -rfileutils -rbundled_gem $(split_option) -answ \
|
||||
-e 'BEGIN {d = ".bundle/gems"}' \
|
||||
-e 'gem, ver, _, rev = *$$F' \
|
||||
-e 'next if !ver or /^#/=~gem' \
|
||||
-e 'next if !ver' \
|
||||
-e 'g = "#{gem}-#{ver}"' \
|
||||
-e 'unless File.directory?("#{d}/#{g}")' \
|
||||
-e 'if rev and File.exist?(gs = "gems/src/#{gem}/#{gem}.gemspec")' \
|
||||
|
@ -1623,7 +1625,7 @@ yes-install-for-test-bundled-gems: yes-update-default-gemspecs
|
|||
test-bundled-gems-fetch: yes-test-bundled-gems-fetch
|
||||
yes-test-bundled-gems-fetch: clone-bundled-gems-src
|
||||
clone-bundled-gems-src: PHONY
|
||||
$(Q) $(BASERUBY) -C $(srcdir)/gems ../tool/fetch-bundled_gems.rb BUNDLED_GEMS="$(BUNDLED_GEMS)" src bundled_gems
|
||||
$(Q) $(BASERUBY) -C $(srcdir) tool/fetch-bundled_gems.rb BUNDLED_GEMS="$(BUNDLED_GEMS)" gems/src gems/bundled_gems
|
||||
no-test-bundled-gems-fetch:
|
||||
|
||||
test-bundled-gems-prepare: $(TEST_RUNNABLE)-test-bundled-gems-prepare
|
||||
|
|
|
@ -309,7 +309,7 @@ HELP_EXTRA_TASKS = \
|
|||
# 4. "gem x.y.z URL" -> "gem-x.y.z"
|
||||
bundled-gems := $(shell sed \
|
||||
-e 's/[ ][ ]*/ /g' \
|
||||
-e 's/^ //;/\#/d;s/ *$$//;/^$$/d' \
|
||||
-e 's/^ //;s/\#.*//;s/ *$$//;/^$$/d' \
|
||||
$(if $(filter yes,$(HAVE_GIT)), \
|
||||
-e 's/^\(.*\) \(.*\) \(.*\) \(.*\)/\1|\2|\4|\3/' \
|
||||
) \
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!ruby -an
|
||||
#!ruby -alnF\s+|#.*
|
||||
BEGIN {
|
||||
require 'fileutils'
|
||||
require_relative 'lib/colorize'
|
||||
|
@ -21,7 +21,6 @@ BEGIN {
|
|||
n, v, u, r = $F
|
||||
|
||||
next unless n
|
||||
next if n =~ /^#/
|
||||
next if bundled_gems&.all? {|pat| !File.fnmatch?(pat, n)}
|
||||
|
||||
unless File.exist?("#{n}/.git")
|
||||
|
|
|
@ -115,7 +115,7 @@ srcdir = Removal.new(ARGV.shift)
|
|||
curdir = !srcdir.base || File.identical?(srcdir.base, ".") ? srcdir : Removal.new
|
||||
|
||||
bundled = File.readlines("#{srcdir.base}gems/bundled_gems").
|
||||
grep(/^(\w\S+)\s+\S+(?:\s+\S+\s+(\S+))?/) {$~.captures}.to_h rescue nil
|
||||
grep(/^(\w[^\#\s]+)\s+[^\#\s]+(?:\s+[^\#\s]+\s+([^\#\s]+))?/) {$~.captures}.to_h rescue nil
|
||||
|
||||
srcdir.glob(".bundle/gems/*/") do |dir|
|
||||
base = File.basename(dir)
|
||||
|
|
|
@ -25,8 +25,7 @@ exit_code = 0
|
|||
ruby = ENV['RUBY'] || RbConfig.ruby
|
||||
failed = []
|
||||
File.foreach("#{gem_dir}/bundled_gems") do |line|
|
||||
next if /^\s*(?:#|$)/ =~ line
|
||||
gem = line.split.first
|
||||
next unless gem = line[/^[^\s\#]+/]
|
||||
next unless bundled_gems.empty? || bundled_gems.split(",").include?(gem)
|
||||
next unless File.directory?("#{gem_dir}/src/#{gem}/test")
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!ruby -pla
|
||||
#!ruby -alpF\s+|#.*
|
||||
BEGIN {
|
||||
require 'rubygems'
|
||||
date = nil
|
||||
|
@ -9,7 +9,7 @@ output = STDERR if ARGF.file == STDIN
|
|||
END {
|
||||
output.print date.strftime("latest_date=%F") if date
|
||||
}
|
||||
unless /^[^#]/ !~ (gem = $F[0])
|
||||
if gem = $F[0]
|
||||
ver = Gem::Version.new($F[1])
|
||||
(gem, src), = Gem::SpecFetcher.fetcher.detect(:latest) {|s|
|
||||
s.platform == "ruby" && s.name == gem
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue