Intro
RedCloth 4.2.6 is broken on Mac OS X. It appears to be related to the case sensitive require fix. These steps expose and fix the problem on my machine.
Software versions
$ ruby -v
ruby 1.8.7 (2009-12-24 patchlevel 248) [i686-darwin10.3.0], MBARI 0x6770, Ruby Enterprise Edition 2010.01
$ gem -v
1.3.7
Create a folder for our test
$ cd ~
$ mkdir tmp-redcloth-test
$ cd tmp-redcloth-test
Use Bundler to install RedCloth 4.2.6
$ cat > Gemfile
source :rubygems
gem 'RedCloth', '4.2.6'
<ctrl-d>
$ bundle install --path gems
Test requiring RedCloth
$ ruby -e"require 'rubygems'; require 'bundler/setup'; require 'RedCloth'"
-e:1:in `require': no such file to load -- RedCloth (LoadError)
from -e:1
Update the gemspec
$ REDCLOTH_PATH=`bundle show RedCloth` \
ruby -e "\
gemspec_file = File.join(ENV['REDCLOTH_PATH'], 'redcloth.gemspec')
gemspec = File.read(gemspec_file)
r = /s\.require_path.*/
gemspec = gemspec.sub(r, 's.require_paths = [\'lib\', \'lib/case_sensitive_require\', \'lib/lib/case_sensitive_require\']')
File.open(gemspec_file, 'w') { |f| f.puts(gemspec) }"
Tell Bundler to use our custom version of RedCloth
$ REDCLOTH_PATH=`bundle show RedCloth` \
ruby -e "\
gemfile_path = 'Gemfile'
gemfile = File.read(gemfile_path)
r = /'4\.2\.6'/
gemfile = gemfile.sub(r, ':path => \'' + ENV['REDCLOTH_PATH'] + '\'')
File.open(gemfile_path, 'w') { |f| f.puts(gemfile) }"
$ bundle install
Test requiring RedCloth
$ ruby -e"require 'rubygems'; require 'bundler/setup'; require 'RedCloth'"
I have installed Bundler, but at the step "Use Bundler to install RedCloth," it fails for me. I get