Rails 2.0: selenium-on-rails routes.rb fix
When I updated a few projects to Rails 2.0 last year, selenium-on-rails stopped working … some issue with routing and the lame way selenium-on-rails adds its routes. I didn’t spend the time to figure out exactly what the routing problem was, but did manage to hack a quick fix into routes.rb. This feels like the Wrong Way for an ultimate fix but it at least solves the immediate problem. Shove these rules into your routes.rb and the /selenium path should start resolving again…
Tags: fix, rails, ror, ruby, selenium, selenium-on-rails, testing
RailsConf 2008 Registration Now Open
Register here. Fresh from my inbox…
New OpenRain Homepage / IE Woes
We never spent a ton of time on the OpenRain homepage, so we decided to shake it up today in response to user feedback. I wanted to make our proposition clearer while keeping the existing brief one-page style, and add some awesome sauce yet stay business friendly. Check it.
As usual, a significant percentage of the development time was spent figuring out a combination of hacks to make IE6/7 render as close to “normal” as possible. Below is a screenshot of how FireFox, Safari and IE6 (from left to right) lay out the floating divs and images after a couple hours of IE-specific work. Three stupidity points are awarded to IE for the following reasons..
- The scrolling film strip at the top is completely disabled for IE because IE6 insists on reloading a CSS background-image if you change its background-position programmatically in JavaScript.
- IE also has issues determining float positioning, so the sticky note has a few IE-specific lines to keep it from shooting through the top of the body.
- Transparent PNGs have never worked correctly in IE6, and the hack to “fix” the issue severely distorts affected images.

Tags: css, ie, news, openrain, rails
Rails 2.0: Gmail SMTP With ActionMailer
Marc just checked in a nifty little Rails 2.0 plugin to the OpenRain public subversion repository which encapsulates the voodoo required to use a Gmail SMTP server with an otherwise ordinary ActionMailer configuration. Gmail requires TLS security, which is why this is useful. Grab the plugin for your Gmail-mooching Rails 2.0 site, here.
Note: I previously wrote about how to do this for Rails 1.2.x here.
Update (2008.06.25): Broken download link fixed!
Tags: gmail, marc chung, news, openrain, philanthropy, picture, rails, ruby
Ruby Troubleshooting: Hpricot On OS X Leopard
If you upgraded to Leopard, you may be getting this nasty error when trying to install Hpricot, which is required by other popular gems such as mechanize..
preston$ sudo gem install mechanize
Password: ********
Bulk updating Gem source index for: http://gems.rubyforge.org
Install required dependency hpricot? [Yn]
Select which gem to install for your platform (i686-darwin8.10.3)
1. hpricot 0.6 (mswin32)
2. hpricot 0.6 (jruby)
3. hpricot 0.6 (ruby)
4. hpricot 0.5 (ruby)
5. hpricot 0.5 (mswin32)
6. Skip this gem
7. Cancel installation
> 3
Building native extensions. This could take a while…
ERROR: While executing gem … (Gem::Installer::ExtensionBuildError)
ERROR: Failed to build gem native extension.ruby extconf.rb install mechanize
checking for main() in -lc… no
creating Makefilemake
gcc -I. -I. -I/opt/local/lib/ruby/1.8/i686-darwin8.10.3 -I. -I/opt/local/include -fno-common -O2 -fno-common -pipe -fno-common -c hpricot_scan.c
cc -dynamic -bundle -undefined suppress -flat_namespace -L/opt/local/lib -L”/opt/local/lib” -o hpricot_scan.bundle hpricot_scan.o -lruby -lpthread -ldl -lobjc
/usr/bin/ld: /usr/lib/gcc/i686-apple-darwin8/4.0.1/../../../libpthread.dylib unknown flags (type) of section 6 (__TEXT,__dof_plockstat) in load command 0
/usr/bin/ld: /usr/lib/gcc/i686-apple-darwin8/4.0.1/../../../libdl.dylib unknown flags (type) of section 6 (__TEXT,__dof_plockstat) in load command 0
/usr/bin/ld: /usr/lib/gcc/i686-apple-darwin8/4.0.1/../../../libobjc.dylib load command 9 unknown cmd field
/usr/bin/ld: /usr/lib/gcc/i686-apple-darwin8/4.0.1/../../../libSystem.dylib unknown flags (type) of section 6 (__TEXT,__dof_plockstat) in load command 0
/usr/bin/ld: /usr/lib/libSystem.B.dylib unknown flags (type) of section 6 (__TEXT,__dof_plockstat) in load command 0
collect2: ld returned 1 exit status
make: *** [hpricot_scan.bundle] Error 1Gem files will remain installed in /opt/local/lib/ruby/gems/1.8/gems/hpricot-0.6 for inspection.
Results logged to /opt/local/lib/ruby/gems/1.8/gems/hpricot-0.6/ext/hpricot_scan/gem_make.out
The issue is that Xcode 3 must be upgraded as well; Hpricot’s native components cannot be built with the older Tiger development tools on Leopard. After installing Xcode 3 from either your Leopard DVD or Apple Developer Connection, run the install again…
preston$ sudo gem install mechanize
Install required dependency hpricot? [Yn] Y
Select which gem to install for your platform (i686-darwin8.10.3)
1. hpricot 0.6 (mswin32)
2. hpricot 0.6 (jruby)
3. hpricot 0.6 (ruby)
4. hpricot 0.5 (ruby)
5. hpricot 0.5 (mswin32)
6. Skip this gem
7. Cancel installation
> 3
Building native extensions. This could take a while…
Successfully installed mechanize-0.6.11
Successfully installed hpricot-0.6
Installing ri documentation for mechanize-0.6.11…
Installing ri documentation for hpricot-0.6…
Installing RDoc documentation for mechanize-0.6.11…
Installing RDoc documentation for hpricot-0.6…
Success!
Tags: hpricot, osx, rails, ruby, troubleshooting


