davidpeoples
|
 |
« on: March 14, 2009, 12:54:21 » |
|
Linux filesystems are case sensitive. The PureMVC gem (don't know about installing from source tarball) installs the PureMVC_Ruby library as this:
<ruby_gem_repository>/PureMVC_Ruby/puremvc_ruby.rb
The EmployeeAdmin demo start up (init.rb) calls "require 'PureMVC_Ruby'" which fails with this message:
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- PureMVC_Ruby (LoadError)
It is failing because rubygems is looking for 'PureMVC_Ruby.rb' but the file is named 'puremvc_ruby.rb'. There are two possible fixes: 1) Change the init.rb code to say "require 'puremvc_ruby'" 2) Rename the library file to 'PureMVC_Ruby.rb'
Option 1 is easy but would require changing the documentation and any extant and future demo code to reflect this special case for the Ruby port.
Option 2 is also easy, assuming the file name is just an oversight (gem not tested on Linux?) and not something the gem packager is doing behind your back. (I've never made a gem so don't know anything about the packaging process.) Option 2 goes against the Ruby convention for naming libraries with lowercase characters, but is technically allowed.
I'd prefer option 1, but doing option 2 by releasing a v 1.0.1 gem with the filename fixed would also work.
(What's up with the two gems in the rubygems repository: 'PureMVC_Ruby' and 'puremvc-ruby' ? Both have the lowercase file name problem.)
David Peoples
|