Support
Feel free to report bugs, submit patches and request features using the tracker. A mailing list is also available to discuss RubyOSA, so you can also send your feedback there.
Make sure your problem is not already described in the troubleshooting information below posting it.
Troubleshooting
irb -r rbosa crashes
IRB may fail to require RubyOSA and crash in a BUS error.
$ irb -r rubygems -r rbosa /usr/local/lib/ruby/gems/1.8/gems/rubyosa-0.1.0/lib/osa.bundle: [BUG] Bus Error
with a backtrace similar to:
0 com.apple.CoreFoundation 0x90840231 __CFInitialize + 607 1 com.apple.CoreFoundation 0x90881849 __CFSetupFoundationBridging + 43 2 com.apple.Foundation 0x9268cc43 _NSToDoAtProcessStart + 1397 3 com.apple.Foundation 0x925d93d9 _NSInitializePlatform + 371 4 libobjc.A.dylib 0x90a52f06 _objc_notify_images + 4259 5 dyld 0x8fe0e3c8 ImageLoaderMachO::doNotification(dyld_image_mode, unsigned, dyld_image_infoconst*) + 70 6 dyld 0x8fe05255 dyld::notifyAdding(std::vector<ImageLoader*, std::allocator<ImageLoader*>>&) + 201 7 dyld 0x8fe0cbcd ImageLoader::link(ImageLoader::LinkContext const&, ImageLoader::BindingLaziness, ImageLoader::InitializerRunning, unsigned) + 331 8 dyld 0x8fe03982 dyld::link(ImageLoader*, ImageLoader::BindingLaziness, ImageLoader::InitializerRunning) + 160 9 dyld 0x8fe08721 NSLinkModule + 157 10 libSystem.B.dylib 0x90025335 NSLinkModule + 85 11 ruby 0x000a5367 dln_load + 219 12 ruby 0x00013507 rb_require_safe + 634 [...]
This seems to be a bug in Ruby 1.8.4, and it has been fixed in 1.8.5. So you are encouraged to upgrade Ruby to the latest stable version available.
If you want to know more about this bug, please read [ruby-dev:29261] and [ruby-dev:29264] (in Japanese).
RubyOSA doesn’t seem to use libxml and is slow, but libxml is installed
Note: this problem is now fixed since libxml-ruby 0.3.8.2.
If you installed libxml-ruby via RubyGems, it may not have properly
installed its C extension binary, libxml_so.bundle.
You can check this by running:
$ irb -r rubygems -r xml/libxml .../rubygems/custom_require.rb:29: in `gem_original_require': no such file to load -- xml/libxml_so (LoadError) [...]
The solution is to install libxml-ruby manually (not via RubyGems), or to patch the libxml-ruby source tree with this patch and re-generate the gem file.
RubyOSA still works even if libxml is not properly installed, because it falls-back on using REXML. But it becomes slower, as REXML is a pure Ruby library.
