conda-forge / conda-forge/conda-forge.github.io

ENH: Structured approach to test lower bounds of package metadata

Open
#2,921 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
170
Forks
320
Avg merge
2d 10h
Merged PRs (30d)
5

Description

> Just stumbled over this [introduction](https://www.youtube.com/watch?v=-69br52PyQ4) by @ruben-arts to pixi's (probably rather: resolvo's) dependency solving strategies. Using `solve-strategy = "lowest"` would actually be an amazing generalization of the discussion here. 🤩
>
> So often we end up carrying around stale dependency metadata on the lower end, because the solver will always try to prioritize the higher end (which still has stale data occasionally, but gets discovered much more quickly). Doing this in a systematic way for v1 recipes during testing would be amazing (should stay opt-in obviously, but libraries with a wide range of supported versions for their dependencies may really benefit from actual testing on the lower bound).

_Originally posted by @h-vetinari in [#2617](https://github.com/conda-forge/conda-forge.github.io/issues/2617#issuecomment-3900916584)_

Additional comment by @bollwyvl:
> A `tests/*/solve-strategy` would be a very nice v1 addition.
>
> As for the cost/benefit: In `pixi` projects, I've found `solve-strategy = "lowest"` finds _too_ many things, and I generally end up using `lowest-direct`. However, solveability (and in the `tests/*/python` case) doesn't always mean its right, so it would take some "big rocks" adding these things.
>
> While it would be _nice_ to upstream these findings, I'd be tempted to add novel findings as `run_constraints` so that there is more of an explicit record.

Contributor guide

Open the contributing guide

Research direction

Start by reading the proposed tests/*/solve-strategy addition and the existing tests/*/python approach. Compare the stated lowest and lowest-direct strategies, including their opt-in behavior and how findings might be recorded as run_constraints. Done means a concrete v1 recipe testing approach is agreed and documented or implemented.

Written by the indexing model from the issue text.

Assessment

Domain
testing-qa, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.