Skip to content

Support uv instead of CondaPkg #665

Description

@clouds56

Now uv is more and more popular to manage python environment, shall we support using uv add packages instead of CondaPkg, which should make add a python package much more faster.

Activity

  1. cjdoris commented on Sep 11, 2025

    @cjdoris
    Member

    I don't think I'm going to add another backend to PythonCall because this will just fragment things.

    However CondaPkg by default does now use Pixi which in turn uses uv to install any PyPI packages. It's pretty fast already.

    I've also considered adding a uv backend to CondaPkg directly. However it's complicated by the fact that CondaPkg files contain a mix of Conda and PyPI packages and uv can only install the PyPI ones. And we'd still need to install python itself, although uv can also do this for us nowadays. So it's doable but personally I think the Pixi backend is plenty fast enough.

  2. clouds56 commented on Sep 15, 2025

    @clouds56
    Author

    it's complicated by the fact that CondaPkg files contain a mix of Conda and PyPI packages and uv can only install the PyPI ones

    I don't think it's a issue. Project initialized with uv would never have deps of conda packages, and Project initialized with conda should be expected to not work well with uv.

  3. cjdoris commented on Sep 15, 2025

    @cjdoris
    Member

    The problem is that even if your project only has python dependencies, some package that you use might have conda dependencies. CondaPkg collects these all together and installs them all. So this is best handled as a uv backend in CondaPkg which will know what to do.

    If you want to manage the venv yourself then #668 is a nice idea.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions