rails version check for gems

I'm seeing a handful of gem bugs on rails3 that are going unresolved because the fix breaks the gem on rails2.

What is the preferred way to add rails version conditions to a gem?

Is checking the Rails::VERSION::STRING what folks should be doing?

if Rails::VERSION::STRING.start_with?("3") do rails 3 stuff else do what u were doing end

Seems like that would break something once Rails 4 comes out. :wink:

Pointers to best practices appreciated. Thanks Tony Primerano

Couldn't you do this?

if Rails::VERSION::STRING.to_i >= 3   puts "at least rails 3" else   puts "rails 2 or lower" end

yeah that works better. :slight_smile:

How other gems are handling this.

It looks like acts_as_ferret is only supporting Rails3 in > 0.5 so no need for version checks there (unfortunately it isn't quite rails 3 ready yet).