Skip to content
This repository has been archived by the owner on Apr 14, 2021. It is now read-only.

Resolver bug fixes and improvements #3278

Merged
merged 9 commits into from
Dec 8, 2014
Merged

Resolver bug fixes and improvements #3278

merged 9 commits into from
Dec 8, 2014

Conversation

Who828
Copy link
Contributor

@Who828 Who828 commented Nov 26, 2014

This PR fixes most (all?) of the open resolver issues on Github.

Currently Bundler is aggressive to try different
versions of exsiting gem parents before
exhausting different versions of parents of
current conflicting gem.

By making sure we travase the current conflicting
dependency tree before trying to make use of exsiting
(activated) gem dependency tree, we reduce the number of
conflicts and activation of gems older then the latest
compitable version.

However, a long term solution would be to make the resolver smarter
by making it understand if current requirement conflict is caused by
either by it's parent or existing gem parent by looking at each of their
dependency requirements.
Currently Bundler tries different versions
of current gem and than it's parents and finally
existing gems.

However, when trying different versions of current gem
will cause it to conflict with existing gem version and
sometimes it will be unable to resolve the dependency tree
correctly.

Now, we will try to resolve current gems parent first then
current gem and then finally the exisiting gems.
@indirect
Copy link
Member

@Who828 there is a failing test! can you check it out?

@indirect
Copy link
Member

@Who828 ping for you to check out the failing test when you have a minute. I would love to release 1.7.8 with these fixes soon.

@indirect indirect merged commit 2781226 into 1-7-stable Dec 8, 2014
indirect added a commit that referenced this pull request Dec 8, 2014
Resolver bug fixes and improvements

Conflicts:
	CHANGELOG.md
@Who828 Who828 deleted the resolver_bug_fix branch December 8, 2014 07:15
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants