Hi
I got the latest svn revision for ironruby (r. 182).

I tried upgrading rubygems to version 1.3.1 (rails 2.2.2 needs it)
And it has a similar problem with the path name.
it fails with a directory not found exception

because it created a folder structure like this for generating the bin
folder
C:\External\languages\ruby\ruby-1.8.6\lib\ironruby\s\1.8\s\rubys-update-1.3.1

While the correct path should be.
C:\External\languages\ruby\ruby-1.8.6\lib\ironruby\gems\1.8\gems\rubygems-update-1.3.1

Below you can find what I submitted as a bug report to install the rails
gem.

+ C:\tools\ironruby
» igem install rake --verbose --debug
HEAD 200 OK: http://gems.rubyforge.org/latest_specs.4.8
GET 200 OK:
http://gems.rubyforge.org/quick/Marshal.4.8/rake-0.8.3.gemspec.rz
ERROR:  While executing gem ... (TypeError)
    allocator undefined for Zlib::Inflate
        c:\tools\ironruby\src\IronRuby.Libraries\zlib\zlib.cs:517:in
`inflate'
        rubygems.rb:395:in `inflate'
        spec_fetcher.rb:77:in `fetch_spec'
        spec_fetcher.rb:64:in `fetch'

 c:\tools\ironruby\src\IronRuby.Libraries\Extensions\IListOps.cs:700:in
`each'

 c:\tools\ironruby\src\IronRuby.Libraries\Builtins\Enumerable.cs:88:in `map'
        spec_fetcher.rb:61:in `fetch'
        dependency_installer.rb:75:in `find_gems_with_sources'
        dependency_installer.rb:162:in `find_spec_by_name_and_version'
        dependency_installer.rb:206:in `install'
        install_command.rb:70:in `execute'

 c:\tools\ironruby\src\IronRuby.Libraries\Extensions\IListOps.cs:700:in
`each'
        install_command.rb:45:in `execute'
        command.rb:129:in `invoke'
        command_manager.rb:86:in `process_args'
        command_manager.rb:74:in `run'
        gem_runner.rb:25:in `run'
        :0

When I try to install rake remotely obviously it fails.
But I then took the .gem files for rake and rails and proceeded with: igem
install --debug --local rails-2.2.2.gem
When they mean verbose they actually mean it ;)

The first time I executed the command it wasn't happy halfway through the
install process of rake; failing with a DirectoryNotFound exception. It
fails because it is looking for a bin folder that should have been created
in gems/rake-0.8.3/ folder but instead it gets created in a gems/-0.8.3
folder. Somehow it forgets which gem it is installing when it is creating
the folder.

The error
» igem install --debug --local --verbose rails-2.2.2.gem
Installing gem rake-0.8.3
Using local gem
C:/tools/ironruby/lib/IronRuby/../../../../External/languages/ruby/ruby-1.8.6//lib/ironruby/gems/1.8/cache/rake-0.8.3.gem
C:/External/languages/ruby/ruby-1.8.6/lib/ironruby/gems/1.8/gems/rake-0.8.3/install.rb
C:/External/languages/ruby/ruby-1.8.6/lib/ironruby/gems/1.8/gems/rake-0.8.3/CHANGES
C:/External/languages/ruby/ruby-1.8.6/lib/ironruby/gems/1.8/gems/rake-0.8.3/MIT-LICENSE
C:/External/languages/ruby/ruby-1.8.6/lib/ironruby/gems/1.8/gems/rake-0.8.3/Rakefile
C:/External/languages/ruby/ruby-1.8.6/lib/ironruby/gems/1.8/gems/rake-0.8.3/README
C:/External/languages/ruby/ruby-1.8.6/lib/ironruby/gems/1.8/gems/rake-0.8.3/TODO
ERROR:  While executing gem ... (System::IO::DirectoryNotFoundException)
    Could not find a part of the path
'C:\External\languages\ruby\ruby-1.8.6\lib\ironruby\gems\1.8\gems\rake-0.8.3\bin\rake'.
        mscorlib:0:in `WinIOError'
        mscorlib:0:in `Init'
        mscorlib:0:in `.ctor'
        c:\tools\ironruby\src\IronRuby.Libraries\Builtins\FileOps.cs:402:in
`open'
        installer.rb:443:in `extract_files'

 c:\tools\ironruby\src\IronRuby.Libraries\Extensions\IListOps.cs:700:in
`each'
        installer.rb:438:in `extract_files'
        installer.rb:104:in `install'
        dependency_installer.rb:217:in `install'

 c:\tools\ironruby\src\IronRuby.Libraries\Extensions\IListOps.cs:700:in
`each'
        dependency_installer.rb:206:in `install'
        install_command.rb:70:in `execute'

 c:\tools\ironruby\src\IronRuby.Libraries\Extensions\IListOps.cs:700:in
`each'
        install_command.rb:45:in `execute'
        command.rb:129:in `invoke'
        command_manager.rb:86:in `process_args'
        command_manager.rb:74:in `run'
        gem_runner.rb:25:in `run'
        :0

This is fine.. I create a bin folder in the rake-0.8.3 folder and proceed
with: igem install --debug --local rake-0.8.3.gem
That actually installs the gem but fails during the rdoc generation.

ERROR:  While executing gem ... (TypeError)
    can't convert Array into String
        c:\tools\ironruby\src\IronRuby.Libraries\Builtins\FileOps.cs:288:in
`join'
        html_generator.rb:612:in `http_url'
        html_generator.rb:590:in `initialize'
        html_generator.rb:1264:in `build_class_list'
        html_generator.rb:1259:in `build_indices'

 c:\tools\ironruby\src\IronRuby.Libraries\Extensions\IListOps.cs:700:in
`each'
        html_generator.rb:1253:in `build_indices'
        html_generator.rb:1189:in `generate'
        rdoc.rb:249:in `document'
        doc_manager.rb:99:in `run_rdoc'
        doc_manager.rb:81:in `install_rdoc'
        doc_manager.rb:50:in `generate_rdoc'
        install_command.rb:112:in `execute'

 c:\tools\ironruby\src\IronRuby.Libraries\Extensions\IListOps.cs:700:in
`each'
        install_command.rb:45:in `execute'
        command.rb:129:in `invoke'
        command_manager.rb:86:in `process_args'
        command_manager.rb:74:in `run'
        gem_runner.rb:25:in `run'
        :0

Ok back to rails :)  igem install --debug --local --verbose rails-2.2.2.gem

so far so good rails seems to install. at least it's generating docs for
everything

next trying to run the irails -v command that fails initially because it
can't find a file gems/-2.2.2/lib/ruby_version_check
So I proceeed with copying the contents of rails-2.2.2 to -2.2.2 hoping that
that will fix my issue.

success
» irails -v
Rails 2.2.2

ok now for it to generate a rails application that fails again.

» irails ironruby-test
tried to create Proc object without a block

Cheers
Ivan
_______________________________________________
Ironruby-core mailing list
Ironruby-core@rubyforge.org
http://rubyforge.org/mailman/listinfo/ironruby-core

Reply via email to