I'm trying to unpack hpricot to my vendor/gems direcotry.
i have config.gem "hpricot" in my environment.rb file
but when i run "rake gems:unpack" it dosn't do anything. Is there any
special mesures thats needs to be done.
I running Vista with rails 2.2.2 and have hpricot gem (0.6.164).
I've successfully unpacked several other gems with this method.
Any suggestions would be very welcome
Thanks
/Mikael
--
Posted via http://www.ruby-forum.com/.
However when i start the server it errors out because it doesn't seem to
be able to handle the gem naming conventions on win32
c:/prog/rubyl/lib/ruby/site_ruby/1.8/rubygems/version.rb:53:in
`initialize': Malformed version number string mswin32 (ArgumentError)
from
c:/prog/rubyl/lib/ruby/gems/1.8/gems/rails-2.2.2/lib/rails/vendor_gem_source_index.rb:105:in
`new'
from
c:/prog/rubyl/lib/ruby/gems/1.8/gems/rails-2.2.2/lib/rails/vendor_gem_source_index.rb:105:in
`version_for_dir'
from
c:/prog/rubyl/lib/ruby/gems/1.8/gems/rails-2.2.2/lib/rails/vendor_gem_source_index.rb:47:in
`refresh!'
....
When i look at the code it seems to be parsing for the version number of
the gem "hpricot-0.6.164-x86-mswin32"
Is this an known issue ?
from
def version_for_dir(d)
matches = /-([^-]+)$/.match(d)
matches.to_a.each { | x | puts "Match {#{x}}" }
Gem::Version.new(matches[1]) if matches
end
to
def version_for_dir(d)
matches = /-(\d+\.\d+\.\d+)/.match(d)
matches.to_a.each { | x | puts "Match {#{x}}" }
Gem::Version.new(matches[1]) if matches
end
Seems to load the gems fine now. However having very limited skill in
crafting regexp I don't know if this will work in all cases so if anyone
have a better one i'm all ears :)