Skip to content
This repository was archived by the owner on Feb 2, 2026. It is now read-only.

Commit cf17276

Browse files
authored
Merge pull request #67 from regro/update-deps
chore: update requirements
2 parents e68fd01 + 3fd2c07 commit cf17276

File tree

9 files changed

+42
-18
lines changed

9 files changed

+42
-18
lines changed

.github/workflows/tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ jobs:
3333
- name: configure conda and install code
3434
shell: bash -el {0}
3535
run: |
36-
mamba install --yes --file=requirements.txt
37-
mamba install --yes pytest flaky pip python-build setuptools_scm>=7 setuptools>=45 toml
36+
conda install --yes --file=requirements.txt
37+
conda install --yes pytest flaky pip python-build setuptools_scm>=7 setuptools>=45 toml
3838
pip install -e .
3939
4040
- name: test versions

.github/workflows/tests_mamba.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,9 @@ jobs:
3333
- name: configure conda and install code
3434
shell: bash -el {0}
3535
run: |
36-
mamba install --yes --file=requirements.txt
37-
mamba install --yes pytest flaky pip python-build setuptools_scm>=7 setuptools>=45 toml
36+
conda install --yes --file=requirements.txt
37+
conda install --yes --file=requirements-mamba.txt
38+
conda install --yes pytest flaky pip python-build setuptools_scm>=7 setuptools>=45 toml
3839
pip install -e .
3940
4041
- name: test versions
Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
# flake8: noqa
22
from ._version import __version__
33
from .check_solvable import is_recipe_solvable
4-
from .mamba_solver import MambaSolver

conda_forge_feedstock_check_solvable/check_solvable.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
from ruamel.yaml import YAML
1010

1111
import conda_forge_feedstock_check_solvable.utils
12-
from conda_forge_feedstock_check_solvable.mamba_solver import mamba_solver_factory
1312
from conda_forge_feedstock_check_solvable.rattler_build import invoke_rattler_build
1413
from conda_forge_feedstock_check_solvable.rattler_solver import rattler_solver_factory
1514
from conda_forge_feedstock_check_solvable.utils import (
@@ -106,7 +105,7 @@ def _is_recipe_solvable(
106105
additional_channels=(),
107106
build_platform=None,
108107
verbosity=1,
109-
solver="mamba",
108+
solver="rattler",
110109
timeout_timer=None,
111110
fail_fast=False,
112111
) -> Tuple[bool, List[str], Dict[str, bool]]:
@@ -199,7 +198,7 @@ def _is_recipe_solvable_on_platform(
199198
arch,
200199
build_platform_arch=None,
201200
additional_channels=(),
202-
solver_backend="mamba",
201+
solver_backend="rattler",
203202
timeout_timer=None,
204203
fail_fast=False,
205204
):
@@ -308,6 +307,10 @@ def _is_recipe_solvable_on_platform(
308307
if solver_backend == "rattler":
309308
solver_factory = rattler_solver_factory
310309
elif solver_backend == "mamba":
310+
from conda_forge_feedstock_check_solvable.mamba_solver import (
311+
mamba_solver_factory,
312+
)
313+
311314
solver_factory = mamba_solver_factory
312315
else:
313316
raise ValueError(f"Unknown solver backend {solver_backend}")

pyproject.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ authors = [
1212
{name = "conda-forge-tick development team", email = "condaforge@gmail.com"},
1313
]
1414
description = "A mamba-based package to check if a conda-forge feedstock is solvable."
15-
dynamic = ["version", "dependencies"]
15+
dynamic = ["version", "dependencies", "optional-dependencies"]
1616
license = {file = "LICENSE"}
1717
readme = "README.md"
1818

@@ -21,6 +21,7 @@ home = "https://github.com/regro/conda-forge-feedstock-check-solvable"
2121

2222
[tool.setuptools.dynamic]
2323
dependencies = {file = ["requirements.txt"]}
24+
optional-dependencies.mamba = { file = ["requirements-mamba.txt"] }
2425

2526
[tool.setuptools.packages.find]
2627
exclude = ['tests*']

requirements-mamba.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
libmambapy>=1.5.1,<2.0a0

requirements.txt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,10 @@ conda
55
conda-package-handling
66
conda-smithy
77
conda-build
8-
libmambapy>=1.5.1,<2.0a0
98
ruamel.yaml.jinja2
10-
conda-forge-metadata>=0.2.0
9+
conda-forge-metadata>=0.11.0
1110
wurlitzer
1211
requests
1312
zstandard
1413
boltons>=23.0.0
15-
py-rattler>=0.6.2,<0.7a0
14+
py-rattler>=0.9.0,<0.10a0

tests/conftest.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,19 @@
44

55
import pytest
66

7-
from conda_forge_feedstock_check_solvable.mamba_solver import mamba_solver_factory
87
from conda_forge_feedstock_check_solvable.rattler_solver import rattler_solver_factory
98

9+
try:
10+
from conda_forge_feedstock_check_solvable.mamba_solver import (
11+
mamba_solver_factory,
12+
)
13+
except Exception:
14+
mamba_solver_factory = None
15+
1016
FEEDSTOCK_DIR = os.path.join(os.path.dirname(__file__), "test_feedstock")
11-
ALL_SOLVERS = ["rattler", "mamba"]
17+
ALL_SOLVERS = ["rattler"]
18+
if mamba_solver_factory is not None:
19+
ALL_SOLVERS.append("mamba")
1220

1321

1422
def pytest_addoption(parser):

tests/test_solvers.py

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,14 @@
44
import pytest
55
from flaky import flaky
66

7-
from conda_forge_feedstock_check_solvable.mamba_solver import (
8-
MambaSolver,
9-
mamba_solver_factory,
10-
)
7+
try:
8+
from conda_forge_feedstock_check_solvable.mamba_solver import (
9+
MambaSolver,
10+
mamba_solver_factory,
11+
)
12+
except Exception:
13+
MambaSolver = mamba_solver_factory = None
14+
1115
from conda_forge_feedstock_check_solvable.rattler_solver import (
1216
RattlerSolver,
1317
rattler_solver_factory,
@@ -227,6 +231,10 @@ def test_solvers_hang(solver_factory):
227231
assert res[0]
228232

229233

234+
@pytest.mark.skipif(
235+
MambaSolver is None or mamba_solver_factory is None,
236+
reason="mamba not available",
237+
)
230238
@pytest.mark.parametrize("mamba_factory", [MambaSolver, mamba_solver_factory])
231239
@pytest.mark.parametrize("rattler_factory", [RattlerSolver, rattler_solver_factory])
232240
def test_solvers_compare_output(mamba_factory, rattler_factory):
@@ -373,6 +381,10 @@ def test_solvers_compare_output(mamba_factory, rattler_factory):
373381
}
374382

375383

384+
@pytest.mark.skipif(
385+
MambaSolver is None or mamba_solver_factory is None,
386+
reason="mamba not available",
387+
)
376388
@pytest.mark.parametrize("mamba_factory", [MambaSolver, mamba_solver_factory])
377389
@pytest.mark.parametrize("rattler_factory", [RattlerSolver, rattler_solver_factory])
378390
def test_solvers_python(mamba_factory, rattler_factory):

0 commit comments

Comments
 (0)