Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes to the new solver & VersionOrder #2036

Merged
merged 4 commits into from
Feb 8, 2016
Merged

Fixes to the new solver & VersionOrder #2036

merged 4 commits into from
Feb 8, 2016

Conversation

mcg1969
Copy link
Contributor

@mcg1969 mcg1969 commented Feb 7, 2016

Fixes motivated by several issues reported by testers: #2033, #1912, #1476, #1334, etc.

The key problem with regards to features was that the pruning pass was eliminating features from consideration prematurely. We've moved the elimination pass until after the first scan to make sure to catch all of the track_features entries that would be caught by the specs.

I've also adjusted the optimization passes so that they proceed in the following order:

  1. Choose the latest possible versions of the explicitly requested packages. In this pass, we don't try to break ties with build numbers or build strings.
  2. Minimize the number of track_features selected to achieve 'conda update anaconda' should fail when no internet is available #1. This won't touch track_features that are embedded in installed metapackages or packages like python that always have them. But it will ensure that no additional, unnecessary track_feature values are added to the mix.
  3. Now choose the latest possible versions of all explicitly requested packages and their dependencies. At this stage, we do break ties between packages as follows:
    • Packages with more valid features are preferred over packages with fewer.
    • If that doesn't break a tie, then packages with a larger build number are preferred over packages with a smaller build number.

If anyone is nerdy enough (like me) to parse this and consider its consequences, please do, and let me know if you have any concerns.

mcg1969 added a commit that referenced this pull request Feb 8, 2016
Fixes to the new solver & VersionOrder
@mcg1969 mcg1969 merged commit 2ba04a6 into master Feb 8, 2016
@kalefranz kalefranz added this to the 4.0 milestone Feb 18, 2016
@kalefranz kalefranz deleted the mgrant-fix branch February 25, 2016 18:10
@github-actions
Copy link

github-actions bot commented Oct 6, 2021

Hi there, thank you for your contribution to Conda!

This pull request has been automatically locked since it has not had recent activity after it was closed.

Please open a new issue or pull request if needed.

@github-actions github-actions bot added the locked [bot] locked due to inactivity label Oct 6, 2021
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 6, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
locked [bot] locked due to inactivity
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants