# Script/plugin discover errors

**URL:** <https://www.ruby-forum.com/t/script-plugin-discover-errors/96067>\
**Category:** Engines\
**Created:** [June 24, 2006, 7:57pm UTC](https://www.ruby-forum.com/t/script-plugin-discover-errors/96067 "2006-06-24T19:57:16Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![sthorpe](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e36b37/32.png) [@sthorpe](https://www.ruby-forum.com/u/sthorpe)\
**Post date:** [June 24, 2006, 7:57pm UTC](https://www.ruby-forum.com/t/script-plugin-discover-errors/96067/1 "2006-06-24T19:57:16Z")

</div>

I would like to install The Ruby Engines plugin. So, I followed the  
directions at:  
[http://www.rails-engines.org/download](http://www.rails-engines.org/download)

When I run script/plugin discover, I get the following:

Add [http://svn.northpub.com/plugins/](http://svn.northpub.com/plugins/)? [Y/n]  
(eval):3:in `each': undefined method `[]’ for nil:NilClass  
(NoMethodError)  
from  
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/commands/plugin.rb:6  
58:in `scrape' from c:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/commands/plugin.rb:6 32:in `parse!’  
from  
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/commands/plugin.rb:6  
31:in `parse!' from c:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/commands/plugin.rb:4 47:in `parse!’  
from  
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/commands/plugin.rb:4  
63:in `parse!' from c:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/commands/plugin.rb:8 71 from c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `re  
quire’  
from  
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active\_suppo  
rt/dependencies.rb:147:in `require’  
from script/plugin:3

Am I missing something obvious? Does someone know how to get around  
this?

I am running on Windows XP, wiht Subversion installed, with Ruby 1.8.4  
and Rails 1.1.2.

Thanks in advance,

Scott T.

---

<div class="post-metadata">

**Author:** ![sthorpe](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e36b37/32.png) [@sthorpe](https://www.ruby-forum.com/u/sthorpe)\
**Post date:** [June 24, 2006, 9:20pm UTC](https://www.ruby-forum.com/t/script-plugin-discover-errors/96067/2 "2006-06-24T21:20:10Z")

</div>

Someone appears to have put some junk on the wiki page that  
script/plugin uses. You can install from the direct URL anyway:

script/plugin install [http://svn.rails-engines.org/plugins/engines](http://svn.rails-engines.org/plugins/engines)

- james

---

<div class="post-metadata">

**Author:** ![sthorpe](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/e36b37/32.png) [@sthorpe](https://www.ruby-forum.com/u/sthorpe)\
**Post date:** [November 12, 2006, 10:57pm UTC](https://www.ruby-forum.com/t/script-plugin-discover-errors/96067/3 "2006-11-12T22:57:06Z")

</div>

The bottom of the WIKI [http://wiki.rubyonrails.org/rails/pages/Plugins](http://wiki.rubyonrails.org/rails/pages/Plugins)  
has a link ‘Edit’ that is defined as: [Edit](https://www.ruby-forum.com/rails/pages/plugins/versions/new)

The method scrape at line 654 of file  
…\ruby\lib\ruby\gems\1.8\gems\rails-1.1.6\lib\commands\plugin.rb  
detects this and passes “/rails/pages/plugins/versions/new” to the  
method below:

def extract\_repository\_uri(uri)  
uri.match(/(svn|https?):.\*/plugins//i)[0]  
end

But “/rails/pages/plugins/versions/new” does not start with svn or http,  
so there is no match and [0] has only nil to work with.

Changing line 659 to the following line factors in the http part and  
eliminates the problem.

if line =~ /\<a[^\>]_href='"['"]/ or line =~  
/(svn://[^\<|\n]_)/

Of course the href gets expanded by a browser to  
[http://wiki.rubyonrails.org/rails/pages/plugins/versions/new](http://wiki.rubyonrails.org/rails/pages/plugins/versions/new), but in  
this case we would the wiki problems by trying to edit the page. The fix  
above seems to be a better solution to me.
