Skip to content

PythonCall + CondaPkg depends on order for correct package loading #188

@icweaver

Description

@icweaver

Following up on a discussion with @cjdoris's on slack, I'm recording an issue I happened to run into when working with PythonCall/CondaPkg in some of our CI tests:

Edge case: The order of using PythonCall and using Conda can lead to downloaded python packages being looked for in the wrong place, based on platform and python package manager

Summary from brief tests used on a sample Julia package:

  1. Using pixi with PythonCall loaded before CondaPkg: fails on macos
ENV["JULIA_CONDAPKG_BACKEND"] = "Pixi"

using PythonCall
using CondaPkg
CondaPkg.add("numpy")

... <importing numpy not found>
  1. Using micromamba with PythonCall loaded before CondaPkg: fails on windows
ENV["JULIA_CONDAPKG_BACKEND"] = "MicroMamba"

using PythonCall
using CondaPkg
CondaPkg.add("numpy")

... <hits permissions issue>

maybe related to mamba-org/mamba#2705?

  1. Using either pixi or micromamba with PythonCall loaded AFTER CondaPkg: passes on all platforms ✅ Thanks @cjdoris!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions