when installing chef gems from a source checkout via `rake install` the optimistic dependencies cause rubygems to install merb-core 1.1.0, which causes ruby gems to fail because of a version conflict later in the install process. For example:
(in /Users/ddeleo/opscode/chef/chef-server-api)
gem install pkg/chef-server-api-0.8.9 --no-rdoc --no-ri
Successfully installed merb-core-1.1.0
Successfully installed chef-server-api-0.8.9
2 gems installed
rake install
(in /Users/ddeleo/opscode/chef/chef-server-webui)
gem install pkg/chef-server-webui-0.8.9 --no-rdoc --no-ri
Successfully installed chef-server-webui-0.8.9
1 gem installed
rake install
(in /Users/ddeleo/opscode/chef/chef-server)
/Users/ddeleo/opscode/chef/chef-server/../chef/lib/chef.rb:30: warning: already initialized constant VERSION
Merb root at: /Users/ddeleo/opscode/chef/chef-server
~ No Gemfile found! If you're generating new app with merb-gen this is fine, otherwise run: bundle init to create Gemfile
Loading init file from ./config/init.rb
DEPRECATED: Use bundler to setup and load dependency merb-slices.
rake aborted!
can't activate merb-core (~> 1.0.15, runtime) for ["merb-slices-1.0.15"], already activated merb-core-1.1.0 for []
/Users/ddeleo/opscode/chef/chef-server/Rakefile:30
(See full trace by running task with --trace)
rake aborted!
Command failed with status (1): [rake install...]
The solution is to use pessimistic version constraints on merb in our gems