Futurescale, Inc. PureMVC Home

The PureMVC Framework Code at the Speed of Thought


Over 10 years of community discussion and knowledge are maintained here as a read-only archive.

New discussions should be taken up in issues on the appropriate projects at https://github.com/PureMVC

Pages: [1]
Print
Author Topic: Linux file name problem in 1.0.0 gem  (Read 7040 times)
davidpeoples
Newbie
*
Posts: 1


View Profile Email
« 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
Logged
Pages: [1]
Print