Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
192 changes: 192 additions & 0 deletions conda-solver-tests/basic.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1249,6 +1249,198 @@ tests:
link_precs:
- channel-4/${{ arch }}::flask-0.12.2-py36hb24657c_0

- name: test_freeze_deps_1_1
id: B046
provenance: tests/core/test_solve.py::test_freeze_deps_1::1
kind: solve
description: "Installs six=1.7 into an empty env. This establishes the baseline prefix (final_state_1) used by all subsequent steps."
input:
channels: channel-2
specs_to_add: six=1.7
output:
final_state:
- channel-2/${{ arch }}::openssl-1.0.2l-0
- channel-2/${{ arch }}::readline-6.2-2
- channel-2/${{ arch }}::sqlite-3.13.0-0
- channel-2/${{ arch }}::tk-8.5.18-0
- channel-2/${{ arch }}::xz-5.2.3-0
- channel-2/${{ arch }}::zlib-1.2.11-0
- channel-2/${{ arch }}::python-3.4.5-0
- channel-2/${{ arch }}::six-1.7.3-py34_0

- name: test_freeze_deps_1_2
id: B047
provenance: tests/core/test_solve.py::test_freeze_deps_1::2
kind: solve_for_diff
description: "Adds bokeh to the prefix. six stays at 1.7 because it's pinned by the history spec. Python stays at 3.4, so we get bokeh 0.12.4 (not 0.12.5)."
input:
channels: channel-2
specs_to_add: bokeh
prefix:
- channel-2/${{ arch }}::openssl-1.0.2l-0
- channel-2/${{ arch }}::readline-6.2-2
- channel-2/${{ arch }}::sqlite-3.13.0-0
- channel-2/${{ arch }}::tk-8.5.18-0
- channel-2/${{ arch }}::xz-5.2.3-0
- channel-2/${{ arch }}::zlib-1.2.11-0
- channel-2/${{ arch }}::python-3.4.5-0
- channel-2/${{ arch }}::six-1.7.3-py34_0
history_specs: six=1.7
output:
unlink_precs: []
link_precs:
- channel-2/${{ arch }}::mkl-2017.0.3-0
- channel-2/${{ arch }}::yaml-0.1.6-0
- channel-2/${{ arch }}::backports_abc-0.5-py34_0
- channel-2/${{ arch }}::markupsafe-1.0-py34_0
- channel-2/${{ arch }}::numpy-1.13.0-py34_0
- channel-2/${{ arch }}::pyyaml-3.12-py34_0
- channel-2/${{ arch }}::requests-2.14.2-py34_0
- channel-2/${{ arch }}::setuptools-27.2.0-py34_0
- channel-2/${{ arch }}::jinja2-2.9.6-py34_0
- channel-2/${{ arch }}::python-dateutil-2.6.1-py34_0
- channel-2/${{ arch }}::tornado-4.4.2-py34_0
- channel-2/${{ arch }}::bokeh-0.12.4-py34_0

- name: test_freeze_deps_1_3
id: B048
provenance: tests/core/test_solve.py::test_freeze_deps_1::3
kind: solve_for_diff
description: "Here we get bokeh=0.12.4 instead of 0.12.5 because we have python=3.4"
input:
channels: channel-2
specs_to_add: bokeh
prefix:
- channel-2/${{ arch }}::openssl-1.0.2l-0
- channel-2/${{ arch }}::readline-6.2-2
- channel-2/${{ arch }}::sqlite-3.13.0-0
- channel-2/${{ arch }}::tk-8.5.18-0
- channel-2/${{ arch }}::xz-5.2.3-0
- channel-2/${{ arch }}::zlib-1.2.11-0
- channel-2/${{ arch }}::python-3.4.5-0
- channel-2/${{ arch }}::six-1.7.3-py34_0
history_specs:
- six=1.7
- python=3.4
output:
unlink_precs: []
link_precs:
- channel-2/${{ arch }}::mkl-2017.0.3-0
- channel-2/${{ arch }}::yaml-0.1.6-0
- channel-2/${{ arch }}::backports_abc-0.5-py34_0
- channel-2/${{ arch }}::markupsafe-1.0-py34_0
- channel-2/${{ arch }}::numpy-1.13.0-py34_0
- channel-2/${{ arch }}::pyyaml-3.12-py34_0
- channel-2/${{ arch }}::requests-2.14.2-py34_0
- channel-2/${{ arch }}::setuptools-27.2.0-py34_0
- channel-2/${{ arch }}::jinja2-2.9.6-py34_0
- channel-2/${{ arch }}::python-dateutil-2.6.1-py34_0
- channel-2/${{ arch }}::tornado-4.4.2-py34_0
- channel-2/${{ arch }}::bokeh-0.12.4-py34_0

- name: test_freeze_deps_1_4
id: B049
provenance: tests/core/test_solve.py::test_freeze_deps_1::4
kind: unsatisfiable
description: "Here we get unsatisfiability because bokeh=0.12.5 is not compatible with python=3.4"
input:
channels: channel-2
specs_to_add: bokeh=0.12.5
prefix:
- channel-2/${{ arch }}::openssl-1.0.2l-0
- channel-2/${{ arch }}::readline-6.2-2
- channel-2/${{ arch }}::sqlite-3.13.0-0
- channel-2/${{ arch }}::tk-8.5.18-0
- channel-2/${{ arch }}::xz-5.2.3-0
- channel-2/${{ arch }}::zlib-1.2.11-0
- channel-2/${{ arch }}::python-3.4.5-0
- channel-2/${{ arch }}::six-1.7.3-py34_0
history_specs:
- six=1.7
- python=3.4
error:
exception: UnsatisfiableError
entries: []

- name: test_freeze_deps_1_5
id: B050
provenance: tests/core/test_solve.py::test_freeze_deps_1::5
kind: solve_for_diff
description: |
Now adding the explicit python spec allows conda to change the python version. One possible outcome
is that this updates to python 3.6. That is not desirable because of the explicit "six=1.7" request
in the history. It should only neuter that spec if there's no way to solve it with that spec.
input:
channels: channel-2
specs_to_add:
- bokeh=0.12.5
- python
prefix:
- channel-2/${{ arch }}::openssl-1.0.2l-0
- channel-2/${{ arch }}::readline-6.2-2
- channel-2/${{ arch }}::sqlite-3.13.0-0
- channel-2/${{ arch }}::tk-8.5.18-0
- channel-2/${{ arch }}::xz-5.2.3-0
- channel-2/${{ arch }}::zlib-1.2.11-0
- channel-2/${{ arch }}::python-3.4.5-0
- channel-2/${{ arch }}::six-1.7.3-py34_0
history_specs:
- six=1.7
- python=3.4
output:
unlink_precs:
- channel-2/${{ arch }}::six-1.7.3-py34_0
- channel-2/${{ arch }}::python-3.4.5-0
- channel-2/${{ arch }}::xz-5.2.3-0
link_precs:
- channel-2/${{ arch }}::mkl-2017.0.3-0
- channel-2/${{ arch }}::yaml-0.1.6-0
- channel-2/${{ arch }}::python-2.7.13-0
- channel-2/${{ arch }}::backports-1.0-py27_0
- channel-2/${{ arch }}::backports_abc-0.5-py27_0
- channel-2/${{ arch }}::certifi-2016.2.28-py27_0
- channel-2/${{ arch }}::futures-3.1.1-py27_0
- channel-2/${{ arch }}::markupsafe-1.0-py27_0
- channel-2/${{ arch }}::numpy-1.13.1-py27_0
- channel-2/${{ arch }}::pyyaml-3.12-py27_0
- channel-2/${{ arch }}::requests-2.14.2-py27_0
- channel-2/${{ arch }}::six-1.7.3-py27_0
- channel-2/${{ arch }}::python-dateutil-2.6.1-py27_0
- channel-2/${{ arch }}::setuptools-36.4.0-py27_1
- channel-2/${{ arch }}::singledispatch-3.4.0.3-py27_0
- channel-2/${{ arch }}::ssl_match_hostname-3.5.0.1-py27_0
- channel-2/${{ arch }}::jinja2-2.9.6-py27_0
- channel-2/${{ arch }}::tornado-4.5.2-py27_0
- channel-2/${{ arch }}::bokeh-0.12.5-py27_1

- name: test_freeze_deps_1_6
id: B051
provenance: tests/core/test_solve.py::test_freeze_deps_1::6
kind: unsatisfiable
description: >-
Same as B049 but with update_modifier set to freeze_installed. With frozen
installed packages, conda cannot downgrade python from 3.4 to 2.7, so
bokeh=0.12.5 (which requires python<3.0) is unsatisfiable.
input:
channels: channel-2
specs_to_add: bokeh=0.12.5
prefix:
- channel-2/${{ arch }}::openssl-1.0.2l-0
- channel-2/${{ arch }}::readline-6.2-2
- channel-2/${{ arch }}::sqlite-3.13.0-0
- channel-2/${{ arch }}::tk-8.5.18-0
- channel-2/${{ arch }}::xz-5.2.3-0
- channel-2/${{ arch }}::zlib-1.2.11-0
- channel-2/${{ arch }}::python-3.4.5-0
- channel-2/${{ arch }}::six-1.7.3-py34_0
history_specs:
- six=1.7
- python=3.4
update_modifier: freeze_installed
error:
exception: UnsatisfiableError
entries: []

- name: test_update_deps_2_3
id: B035
provenance: tests/core/test_solve.py::test_update_deps_2::3
Expand Down