[Rubygems-developers] [CruiseControl] RubyGemsGitHub build 16a5429 failed

devnull+rubygems-ci at pivotallabs.com devnull+rubygems-ci at pivotallabs.com
Sat Nov 13 17:41:52 EST 2010


The build failed.

CHANGES
-------
Revision ...16a5429e533402bd11049c900a4bfc7ad6cb0085 committed by John Barnette <jbarnette at gmail.com> on 2010-11-13 22:36:36

    Land Aman's perf. improvements and Dependency#matches_spec? addition. Fixes #28716.
Revision ...602cd00f1804505dffdd2080d9b4bbd09cd38c3c committed by Aman Gupta <aman at tmm1.net> on 2010-11-13 21:53:40

    Add Gem::Dependency#matches_spec? to match directly against a Gem::Specification object.

 lib/rubygems/dependency.rb |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
Revision ...d5731757ad9fd0b9f98232eb8c1890cf54359848 committed by Aman Gupta <aman at tmm1.net> on 2010-11-13 21:51:33

    Improve performance of Gem::Version#<=> on 1.9 (slightly slower on 1.8)
    require "benchmark"
    require "rubygems"
    module Gem
    class NewVersion < Version # (Version here is from master before this commit)
    def <=> other
    return   1 unless other # HACK: comparable with nil? why?
    return nil unless self.class === other
    return   0     if version == other.version
    lhsegments = segments
    rhsegments = other.segments
    lhsize = lhsegments.size
    rhsize = rhsegments.size
    limit  = (lhsize > rhsize ? lhsize : rhsize) - 1
    i = 0
    while i <= limit
    lhs, rhs = lhsegments[i] || 0, rhsegments[i] || 0
    i += 1
    next               if lhs == rhs
    return  -1         if String  === lhs && Numeric === rhs
    return   1         if Numeric === lhs && String  === rhs
    return lhs <=> rhs
    end
    return 0
    end
    end
    end
    ver1 = Gem::Version.new('1.0.2.0.1')
    ver2 = Gem::Version.new('1.0.2.1.1')
    ver3 = Gem::NewVersion.new('1.0.2.0.1')
    ver4 = Gem::NewVersion.new('1.0.2.1.1')
    Benchmark.bmbm do |x|
    x.report("old <=>") do
    500_000.times { ver1 <=> ver2 }
    end
    x.report("new <=>") do
    500_000.times { ver3 <=> ver4 }
    end
    end
    __END__
    == ruby 1.8
    Rehearsal -------------------------------------------
    old <=>   6.130000   0.000000   6.130000 (  6.191443)
    new <=>   7.030000   0.010000   7.040000 (  7.095676)
    --------------------------------- total: 13.170000sec
    user     system      total        real
    old <=>   7.000000   0.010000   7.010000 (  7.110908)
    new <=>   7.310000   0.030000   7.340000 (  7.439800)
    == ruby 1.9
    Rehearsal -------------------------------------------
    old <=>   4.470000   0.020000   4.490000 (  4.524602)
    new <=>   3.660000   0.010000   3.670000 (  3.679220)
    ---------------------------------- total: 8.160000sec
    user     system      total        real
    old <=>   5.020000   0.010000   5.030000 (  5.096828)
    new <=>   3.930000   0.010000   3.940000 (  3.993851)

 lib/rubygems/version.rb |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
Revision ...e0ae997e6d9d3fd3d619796df02da2f9dccdc321 committed by Aman Gupta <aman at tmm1.net> on 2010-11-13 21:28:14

    Improve performance of Gem::Version#prerelease?
    require "benchmark"
    require "rubygems"
    module Gem
    class NewVersion < Version
    def prerelease?
    @prerelease ||= @version =~ /[a-zA-Z]/
    end
    end
    end
    ver1 = Gem::Version.new('1.0.2.0.1')
    ver2 = Gem::Version.new('1.0.2.beta.1')
    ver3 = Gem::NewVersion.new('1.0.2.0.1')
    ver4 = Gem::NewVersion.new('1.0.2.beta.1')
    Benchmark.bmbm do |x|
    x.report("old prerelease") do
    200_000.times { ver1.prerelease?; ver2.prerelease? }
    end
    x.report("new prerelease") do
    200_000.times { ver3.prerelease?; ver4.prerelease? }
    end
    end
    __END__
    Rehearsal --------------------------------------------------
    old prerelease   1.080000   0.000000   1.080000 (  1.097570)
    new prerelease   0.330000   0.000000   0.330000 (  0.340355)
    ----------------------------------------- total: 1.410000sec
    user     system      total        real
    old prerelease   1.050000   0.010000   1.060000 (  1.071727)
    new prerelease   0.330000   0.000000   0.330000 (  0.341441)

 lib/rubygems/version.rb |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)



TEST FAILURES AND ERRORS
-----------------------
Name: test_self_find_files(TestGem)
Type: Failure
Message: Expected ["/home/pivotal/.cruise/projects/RubyGemsGitHub/work/test/foo/discover.rb",
 "/tmp/test_rubygems_11951/gemhome/gems/foo-2/lib/foo/discover.rb",
 "/tmp/test_rubygems_11951/gemhome/gems/foo-1/lib/foo/discover.rb"], not ["/home/pivotal/.cruise/projects/RubyGemsGitHub/work/test/foo/discover.rb",
 "/tmp/test_rubygems_11951/gemhome/gems/foo-1/lib/foo/discover.rb",
 "/tmp/test_rubygems_11951/gemhome/gems/foo-2/lib/foo/discover.rb"].

./test/test_gem.rb:303




See http://ci.pivotallabs.com:3333/builds/RubyGemsGitHub/16a5429e533402bd11049c900a4bfc7ad6cb0085 for details.


More information about the Rubygems-developers mailing list