diff --git a/lib/bundler/resolver.rb b/lib/bundler/resolver.rb index 052d7761837..f8cb1a34c3d 100644 --- a/lib/bundler/resolver.rb +++ b/lib/bundler/resolver.rb @@ -179,10 +179,6 @@ def name_for_locking_dependency_source def requirement_satisfied_by?(requirement, activated, spec) return false unless requirement.matches_spec?(spec) || spec.source.is_a?(Source::Gemspec) - if spec.version.prerelease? && !requirement.prerelease? && search_for(requirement).any? {|sg| !sg.version.prerelease? } - vertex = activated.vertex_named(spec.name) - return false if vertex.requirements.none?(&:prerelease?) - end spec.activate_platform!(requirement.__platform) if !@platforms || @platforms.include?(requirement.__platform) true end diff --git a/spec/resolver/basic_spec.rb b/spec/resolver/basic_spec.rb index 623d092644b..0577a718b98 100644 --- a/spec/resolver/basic_spec.rb +++ b/spec/resolver/basic_spec.rb @@ -80,6 +80,13 @@ should_resolve_as %w[need-pre-1.0.0 activesupport-3.0.0.beta1] end + it "selects a pre-release if it's specified in the Gemfile" do + dep "activesupport", "= 3.0.0.beta" + dep "actionpack" + + should_resolve_as %w[activesupport-3.0.0.beta actionpack-3.0.0.beta rack-1.1 rack-mount-0.6] + end + it "raises an exception if a child dependency is not resolved" do @index = a_unresovable_child_index dep "chef_app_error"