[Ironruby-core] rake mspec:... broken in r127

Jim Deville jdeville at microsoft.com
Mon Jul 28 13:57:18 EDT 2008


Looks like I've been using it wrong. Sorry about that.

JD
________________________________________
From: ironruby-core-bounces at rubyforge.org [ironruby-core-bounces at rubyforge.org] On Behalf Of Peter Bacon Darwin [bacondarwin at googlemail.com]
Sent: Monday, July 28, 2008 9:48 AM
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] rake mspec:... broken in r127

I don't think it does (r127):

    unless defined?(UserEnvironment::MRI)
      ruby_exe_paths = UserEnvironment.find_executable 'ruby.exe'
      if ruby_exe_paths.length == 1
        UserEnvironment.const_set(:MRI, Pathname.new(ruby_exe_paths.first +
'\..\\'))
      else
        raise ArgumentError.new("Found more than one version of ruby.exe on
your path #{ruby_exe_paths.join(', ')}")
      end
    end

...

  def self.find_executable(executable)
    executable.downcase!
    result = []
    search_path = ENV['PATH'].split(';')
    search_path.each do |dir|
      path = dir.gsub '\\', '/'
      Dir[path + '/*.exe'].each do |file|
        file_path = Pathname.new(file)
        result << file_path.dirname if file_path.basename.downcase ==
executable
      end
    end
    result
  end

-----Original Message-----
From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Jim Deville
Sent: Monday,28 July 28, 2008 15:44
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] rake mspec:... broken in r127

If you look at how UserEnvironment sets up the MRI constant (if it's
missing) you'll see that it should point to the binary. We should update the
default .irconfig.rb, and change the comment instead.

JD
________________________________________
From: ironruby-core-bounces at rubyforge.org
[ironruby-core-bounces at rubyforge.org] On Behalf Of Peter Bacon Darwin
[bacondarwin at googlemail.com]
Sent: Sunday, July 27, 2008 10:59 PM
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] rake mspec:... broken in r127

I think I have solved the problem.  See the attached patch.  There are two
issues in the Rakefile:

1)      UserEnvironment::MRI just holds the path two the base of MRI not the
path to the binary.  I have added a new constant MRI_BINARY and modified the
places where this is used.

2)      The -B option on mspec takes a path to the config file.  On my
machine this is in "C:\Documents and Settings\pete\default.mspec".  Since
this has spaces in it you have to put quotes round the path.  I have added
this but I am not sure what effect this would have on Unix based systems and
also whether it ought to be done for all the path parameters.
Cheers,
Pete

From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of John Lam
(IRONRUBY)
Sent: Sunday,27 July 27, 2008 19:36
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] rake mspec:... broken in r127

Thanks for the bug report. Let me investigate - likely will be tomorrow
since I am catching up on family stuff after 2 weeks on the road.

Thanks,
-John

From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Peter Bacon Darwin
Sent: Sunday, July 27, 2008 10:58 AM
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] rake mspec:... broken in r127

Further to this.  The problem seems to have been introduced between r121 and
r122.
Pete

From: Peter Bacon Darwin [mailto:bacondarwin at googlemail.com]
Sent: Sunday,27 July 27, 2008 15:48
To: 'ironruby-core at rubyforge.org'
Subject: rake mspec:... broken in r127

After shifting up to 127 I can't get run the rubyspecs any more.
I fixed up the .irconfig.rb and default.mspec files correctly (by the way I
had to explicitly specify the MRI binary file in .irconfig.rb since it
didn't seem to be able to find it any more).
I have also pulled the latest mspec, rubyspec and ironruby-tags from jflam's
GitHub account.  (I also tried pulling in Jim Deville's versions too).

Now when I run a rubyspec I get:

D:\dev\ruby\ironruby\r127>rake mspec:core Fixnum
(in D:/dev/ruby/ironruby/r127)
d:\dev\ruby\ironruby\r127\src\microsoft.scripting.core\actions\callsite.cs:2
88:in `UpdateAndExecute': No such file or directory - No such file or
directory - d:/dev/ruby/ironruby/r127/tests/ironruby/u
til/and (Errno::ENOENT)
        from
d:\dev\ruby\ironruby\r127\src\microsoft.scripting.core\actions\updatedelegat
es.generated.cs:34:in `Update2'
        from
d:\dev\ruby\ironruby\r127\src\microsoft.scripting.core\runtime\ScriptCode.cs
:79:in `Run'
        from
d:\dev\ruby\ironruby\r127\src\microsoft.scripting.core\sourceunit.cs:246:in
`ExecuteProgram'
rake aborted!
Command failed with status (1): [d:/ruby/bin/ruby.exe
d:/dev/ruby/ironruby/...]
D:/dev/ruby/ironruby/r127/rakefile:409:in `invoke_mspec'
(See full trace by running task with --trace)

I guess there is something inside Rakefile or nearby that is breaking this?
Unfortunately I can't get onto the SVN repository to search the log history
to see what changed (Bring on Git, I say).

Any ideas?
Cheers
Pete
_______________________________________________
Ironruby-core mailing list
Ironruby-core at rubyforge.org
http://rubyforge.org/mailman/listinfo/ironruby-core

_______________________________________________
Ironruby-core mailing list
Ironruby-core at rubyforge.org
http://rubyforge.org/mailman/listinfo/ironruby-core



More information about the Ironruby-core mailing list