Внешний проект не соответствует никакому стандарту проекта Python, не подлежит установке и имеет только файл require.txt, описывающий его зависимости.
Вопрос : Какой подход для этого подойдет?
Что я пробовал до сих пор:
Добавление зависимость в качестве члена рабочей области
(ссылка: https://docs.astral.sh/uv/concepts/workspaces/)
Я создал pyproject.toml внутри папки внешнего репозитория
Код: Выделить всё
[build-system]
requires = ["hatchling", "hatch-vcs"]
build-backend = "hatchling.build"
[project]
name = "other-repo"
version = "0.0.0"
requires-python = ">=3.7"
dynamic = ["dependencies"]
readme = "README.md"
[tool.uv]
package = true
dependencies = {file = ["requirements.txt"]}
[tool.hatch.build.targets.wheel]
packages = ["folder-with-code"]
Код: Выделить всё
[project]
dependencies = [ ... , "other-repo" ]
...
[tool.uv.workspace]
members = ["external/other-repo"]
[tool.uv.sources]
other-repo = { workspace = true }
Добавление зависимости как зависимости от пути
(ссылка: https://docs.astral.sh/uv/concepts/work ... workspaces)
В моем pyproject.toml проекта, я добавил
Код: Выделить всё
[project]
dependencies = [ ... , "other-repo" ]
...
[tool.uv.sources]
other-repo = { path = "external/other-repo" }
Подробнее здесь: https://stackoverflow.com/questions/791 ... ct-with-uv