uv
uv copied to clipboard
Workspace exclusion does not work
uv platform: Fedora 40
uv version: uv 0.4.5
Hello,
First of all, thanks a lot for uv
, it's an awesome tool!
I'm trying to migrate my current project from poetry
to uv
by leveraging the workspace functionality. I have the following projects structure:
.
├── projects
│ ├── a
│ │ ├── hello.py
│ │ ├── pyproject.toml
│ │ └── README.md
│ ├── b
│ │ ├── ba
│ │ │ ├── hello.py
│ │ │ ├── pyproject.toml
│ │ │ └── README.md
│ │ └── bb
│ │ ├── hello.py
│ │ ├── pyproject.toml
│ │ └── README.md
│ └── c
│ ├── hello.py
│ ├── pyproject.toml
│ └── README.md
├── pyproject.toml
The root pyproject.toml
, the workspace root, is defined as:
[project]
name = "project"
version = "0.1.0"
description = "Add your description here"
requires-python = ">=3.12"
dependencies = []
[tool.uv]
package = false
[tool.uv.workspace]
members = ["projects/*", "projects/b/*"]
exclude = ["projects/b"]
However, uv lock
(or basically any uv
command) fails this the following error message:
❯ uv lock
error: Workspace member `/home/sbrochet/uv-test/workspace/projects/b` is missing a `pyproject.toml` (matches: `projects/*`)
even if projects/b
is explicitly excluded.
I've also tried to remove the members entry projects/b/*
, but it fails with the same error message.
Thanks a lot again!