Open maartenbreddels opened 6 months ago
Yeah this is a more often requested feature. I though I would be able to link you to that issue but I guess it is lost in conversations.
Having a pixi lock
or something similar would be good indeed
For documentation purposes, there is an requirement for the pypi
solve to have a python
interpreter available which we install in the conda ([dependencies]
table) environment. Thus installing atleast part of the environment is required for the full locking of a pixi project.
For example this would still need to install python to only lock:
[project]
name = "test"
channels = ["conda-forge"]
platforms = ["linux-64"]
[dependencies]
python = ">=3.10"
[pypi-dependencies]
solara = "==1.30.1"
Until there is a solution to this issue https://github.com/prefix-dev/pixi/issues/1130, specifically the wheel
only install.
I have a similar use case, and my workaround is running pixi list
or pixi tree
. These are otherwise diagnostic commands that function like no-ops but still trigger a lockfile check.
The main thing that can be confusing from a UX perspective is that if you haven't installed anything and no lockfile update is needed, then both of those commands succeed without printing anything to console.
Problem description
I'd like to use pixi to give me just the lock file, not install packages, similar to how I can use
pip-compile
oruv pip compile
.However, pixi seems to generate the lock file only after a
pixi add
command. However, if I change the manifest file (e.g. generate), I cannot do apixi compile/solve/lock
orpixi install --dry-run
to obtain a lockfile.Maybe I misunderstood how pixi works, but I expect 3 phases:
pixi seems to run solve and install by default, which is great, and I can skip the install using
--no-install
, which is also great.However, I cannot trigger the solve phase independently.