mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
make-snapshot: fix stable snapshot
* tool/make-snapshot (package): VCS#branch_list expects glob a pattern string but not a regexp. based on the patch by Vit Ondruch. in [ruby-core:67064]. [Bug #10636] * tool/vcs.rb (VCS::SVN#branch_list): strip newlines. * tool/vcs.rb (VCS::GIT.get_revisions): retrieve modified time from toplevel log too. * tool/vcs.rb (VCS::GIT#branch_list): yield for each lines. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
b1186bf39f
commit
730c941728
3 changed files with 24 additions and 4 deletions
13
ChangeLog
13
ChangeLog
|
@ -1,3 +1,16 @@
|
|||
Wed Dec 24 02:12:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* tool/make-snapshot (package): VCS#branch_list expects glob a
|
||||
pattern string but not a regexp. based on the patch by Vit
|
||||
Ondruch. in [ruby-core:67064]. [Bug #10636]
|
||||
|
||||
* tool/vcs.rb (VCS::SVN#branch_list): strip newlines.
|
||||
|
||||
* tool/vcs.rb (VCS::GIT.get_revisions): retrieve modified time
|
||||
from toplevel log too.
|
||||
|
||||
* tool/vcs.rb (VCS::GIT#branch_list): yield for each lines.
|
||||
|
||||
Wed Dec 24 00:23:13 2014 NAKAMURA Usaku <usa@ruby-lang.org>
|
||||
|
||||
* tool/extlibs.rb (do_extract): the pipe should be binmode.
|
||||
|
|
|
@ -139,7 +139,7 @@ def package(vcs, rev, destdir, tmp = nil)
|
|||
when /\Atags\//
|
||||
url = vcs.tag($')
|
||||
when /\Astable\z/
|
||||
vcs.branch_list(/ruby_[0-9]*/) {|n| url = /\Aruby_\d+_\d+\z/ =~ n}
|
||||
vcs.branch_list("ruby_[0-9]*") {|n| url = n[/\Aruby_\d+_\d+\z/]}
|
||||
url &&= vcs.branch(url)
|
||||
when /\A(.*)\.(.*)\.(.*)-(preview|rc)(\d+)/
|
||||
prerelease = true
|
||||
|
|
13
tool/vcs.rb
13
tool/vcs.rb
|
@ -161,6 +161,7 @@ class VCS
|
|||
def branch_list(pat)
|
||||
IO.popen(%W"svn ls #{branch('')}") do |f|
|
||||
f.each do |line|
|
||||
line.chomp!
|
||||
line.chomp!('/')
|
||||
yield(line) if File.fnmatch?(pat, line)
|
||||
end
|
||||
|
@ -195,7 +196,8 @@ class VCS
|
|||
logcmd[1, 0] = ["-C", srcdir] if srcdir
|
||||
logcmd << "--grep=^ *git-svn-id: .*@[0-9][0-9]*"
|
||||
idpat = /git-svn-id: .*?@(\d+) \S+\Z/
|
||||
last = IO.pread(logcmd)[idpat, 1]
|
||||
log = IO.pread(logcmd)
|
||||
last = log[idpat, 1]
|
||||
if path
|
||||
log = IO.pread(logcmd + [path])
|
||||
changed = log[idpat, 1]
|
||||
|
@ -222,10 +224,15 @@ class VCS
|
|||
branch(IO.pread(cmd)[/.*^(ruby_\d+_\d+)$/m, 1])
|
||||
end
|
||||
|
||||
def branch_list(pat, &block)
|
||||
def branch_list(pat)
|
||||
cmd = %W"git for-each-ref --format=\%(refname:short) refs/heads/#{pat}"
|
||||
cmd[1, 0] = ["-C", @srcdir] if @srcdir
|
||||
IO.popen(cmd, &block)
|
||||
IO.popen(cmd) {|f|
|
||||
f.each {|line|
|
||||
line.chomp!
|
||||
yield line
|
||||
}
|
||||
}
|
||||
end
|
||||
|
||||
def grep(pat, tag, *files, &block)
|
||||
|
|
Loading…
Reference in a new issue