Skip to content

The workspace_root should be part of the source build path at this point: StripPrefixError(()) #5125

@glemaitre

Description

@glemaitre

Checks

  • I have checked that this issue has not already been reported.

  • I have confirmed this bug exists on the latest version of pixi, using pixi --version.

Reproducible example

Commands I ran and their output:

pixi shell -e dev

pixi.toml/pyproject.toml file that reproduces my issue:

[workspace]
preview = ["pixi-build"]
channels = ["https://prefix.dev/conda-forge"]
platforms = ["osx-arm64"]

[package]
name = "imbalanced-learn"
version = "0.14.0.dev0"

[package.build.backend]
name = "pixi-build-python"
version = "*"

[package.build.config]
noarch = true

[package.build.source]
path = "imbalanced-learn"

[package.build-dependencies]
python = "~=3.13.0"

[package.host-dependencies]
uv = "*"
python = "~=3.13.0"
setuptools = "*"

[package.run-dependencies]
python = "~=3.13.0"
numpy = ">=1.25.2,<3"
scipy = ">=1.11.4,<2"
joblib = ">=1.2.0,<2"
threadpoolctl = ">=3.1.0,<4"
scikit-learn = { path = "../scikit-learn" }

[feature.source.dependencies]
ninja = "*"
scikit-learn = { path = "../scikit-learn" }
imbalanced-learn = { path = "." }

[feature.dev.dependencies]
ipykernel = "*"
ipython = "*"
jupyterlab = "*"
twine = "*"

[feature.docs.dependencies]
matplotlib = ">=3.7.3,<4"
seaborn = ">=0.12.2,<1"
memory_profiler = ">=0.61.0,<1"
numpydoc = ">=1.5.0,<2"
sphinx = ">=8.0.2,<9"
sphinx-gallery = ">=0.13.0,<1"
sphinxcontrib-bibtex = ">=2.4.1,<3"
sphinx-copybutton = ">=0.5.2,<1"
pydata-sphinx-theme = ">=0.15.4,<1"
sphinx-design = ">=0.6.1,<1"

[feature.optional.dependencies]
pandas = ">=2.0.3,<3"

[feature.keras.dependencies]
keras = ">=3.3.3,<4"

[feature.tests.dependencies]
packaging = ">=23.2,<25"
pytest = ">=7.2.2,<9"
pytest-cov = ">=4.1.0,<6"
pytest-xdist = ">=3.5.0,<4"

[feature.docs.tasks]
build-docs = { cmd = "make html", cwd = "imbalanced-learn/doc" }
clean-docs = { cmd = "rm -rf _build/ && rm -rf auto_examples/ && rm -rf reference/generated/", cwd = "imbalanced-learn/doc" }

[feature.lint.tasks]
lint = { cmd = "pre-commit install && pre-commit run -v --all-files --show-diff-on-failure", cwd = "imbalanced-learn" }

[feature.tests.tasks]
tests = { cmd = "pytest -vsl --cov=imblearn --cov-report=xml imblearn", cwd = "imbalanced-learn" }

[environments]
dev = { features = ["source", "dev", "docs", "lint", "tests", "optional", "keras"], no-default-feature = true }

pixi info output:

System
------------
       Pixi version: 0.61.0
           Platform: osx-arm64
   Virtual packages: __unix=0=0
                   : __osx=15.6.1=0
                   : __archspec=1=m2
          Cache dir: /Users/glemaitre/Library/Caches/rattler/cache
       Auth storage: /Users/glemaitre/.rattler/credentials.json
   Config locations: No config files found

Global
------------
            Bin dir: /Users/glemaitre/.pixi/bin
    Environment dir: /Users/glemaitre/.pixi/envs
       Manifest dir: /Users/glemaitre/.pixi/manifests/pixi-global.toml

Workspace
------------
               Name: imbalanced-learn
      Manifest file: /Users/glemaitre/Documents/packages/python-stack/imbalanced-learn/pixi.toml
       Last updated: 13-12-2025 14:05:50

Environments
------------
        Environment: default
           Features: default
           Channels: https://prefix.dev/conda-forge
   Dependency count: 0
   Target platforms: osx-arm64
    Prefix location: /Users/glemaitre/Documents/packages/python-stack/imbalanced-learn/.pixi/envs/default

        Environment: dev
           Features: source, dev, docs, lint, tests, optional, keras
           Channels: https://prefix.dev/conda-forge
   Dependency count: 23
       Dependencies: ninja, scikit-learn, imbalanced-learn, ipykernel, ipython, jupyterlab, twine, matplotlib, seaborn, memory_profiler, numpydoc, sphinx, sphinx-gallery, sphinxcontrib-bibtex, sphinx-copybutton, pydata-sphinx-theme, sphinx-design, packaging, pytest, pytest-cov, pytest-xdist, pandas, keras
   Target platforms: osx-arm64
    Prefix location: /Users/glemaitre/Documents/packages/python-stack/imbalanced-learn/.pixi/envs/dev
              Tasks: tests, lint, clean-docs, build-docs

Other files (e.g. script files, source files, etc.):

Issue description

I recently upgraded from 0.59 to 0.61 (but the bug appear already in 0.60).

I'm building a workspace where I'm using an out of tree source package while developing for a library (see toml below - developing for imbalanced-learn package using scikit-learn source).

This configuration was working in 0.59 but start to fail in 0.60 when activating the shell with the following traceback:

> RUST_BACKTRACE=full pixi shell -e dev

thread 'main2' panicked at crates/pixi_record/src/pinned_source.rs:266:73:
the workspace_root should be part of the source build path at this point: StripPrefixError(())
stack backtrace:
   0:        0x1044e493c - __mh_execute_header
   1:        0x1033afe50 - __mh_execute_header
   2:        0x1044e306c - __mh_execute_header
   3:        0x1044e47dc - __mh_execute_header
   4:        0x1044e2c00 - __mh_execute_header
   5:        0x104516dcc - __mh_execute_header
   6:        0x104516d3c - __mh_execute_header
   7:        0x10451bd90 - __mh_execute_header
   8:        0x104beeb4c - __mh_execute_header
   9:        0x104beef90 - __mh_execute_header
  10:        0x103def374 - __mh_execute_header
  11:        0x103df98d8 - __mh_execute_header
  12:        0x102f2d470 - __mh_execute_header
  13:        0x102f24b98 - __mh_execute_header
  14:        0x102f12818 - __mh_execute_header
  15:        0x102ed0d94 - __mh_execute_header
  16:        0x102ecf494 - __mh_execute_header
  17:        0x102e17430 - __mh_execute_header
  18:        0x102dd1184 - __mh_execute_header
  19:        0x102cb4d0c - __mh_execute_header
  20:        0x102a79314 - __mh_execute_header
  21:        0x102ac3388 - __mh_execute_header
  22:        0x10451c138 - __mh_execute_header
  23:        0x18e18bc0c - __pthread_cond_wait

thread 'main' panicked at crates/pixi/src/main.rs:49:10:
Tokio executor failed, was there a panic?: Any { .. }
stack backtrace:
   0:        0x1044e493c - __mh_execute_header
   1:        0x1033afe50 - __mh_execute_header
   2:        0x1044e306c - __mh_execute_header
   3:        0x1044e47dc - __mh_execute_header
   4:        0x1044e2c00 - __mh_execute_header
   5:        0x104516dcc - __mh_execute_header
   6:        0x104516d3c - __mh_execute_header
   7:        0x10451bd90 - __mh_execute_header
   8:        0x104beeb4c - __mh_execute_header
   9:        0x104beef90 - __mh_execute_header
  10:        0x102fdf60c - __mh_execute_header
  11:        0x102a7a428 - __mh_execute_header
  12:        0x102fdfc98 - __mh_execute_header

Expected behavior

I would expect no error.

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingneeds-moreNeeds more information from the reporter

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions