Failed to collect UV build info when pyproject.toml uses dynamic = ["version"]
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 595
- Forks
- 307
- Avg merge
- 4d 17h
- Merged PRs (30d)
- 17
Description
Describe the bug
jfrog-cli emits a misleading warning when publishing a Python package with uv and a pyproject.toml that uses a dynamically resolved version (dynamic = ["version"] via hatch-vcs). Although the package is successfully published, jfrog-cli fails to collect build info.
The project follows a valid PEP 621 pattern where the version is intentionally not statically defined under [project.version] and is instead resolved dynamically by the build backend.
The warning suggests that JFrog CLI only looks for project.version and does not recognize project.dynamic = ["version"] or versions provided by build systems such as hatch-vcs.
Current behavior
on jf uv publish
15:07:09 [Warn] Failed to collect UV build info: failed to create UV FlexPack collector: failed to load pyproject.toml: project version not found in pyproject.toml (checked [project.version])
Reproduction steps
- make sure to be inside a git repository
- use the uv test project in
testdata/uv/uvproject/pyproject.tomlbut replace
with[project] version = "0.1.0" [build-system] requires = ["flit_core>=3.2"] build-backend = "flit_core.buildapi"[project] dynamic = ["version"] [build-system] requires = ["hatchling","hatch-vcs"] build-backend = "hatchling.build" [tool.hatch.version] source = "vcs" [tool.hatch.version.raw-options] search_parent_directories = true - run
jf uv ...commands to build and publish
Expected behavior
Build info are published without errors using jf uv publish, if pyproject.toml follow a valid PEP 621 pattern
JFrog CLI version
2.116.0
Operating system type and version
Linux
JFrog Artifactory version
No response
JFrog Xray version
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with testdata/uv/uvproject/pyproject.toml and reproduce the warning using the documented jf uv build and publish commands. Trace the UV build-info collection path that reads the project version, then verify the dynamic = ["version"] and hatch-vcs configuration is accepted. Done means jf uv publish produces build info without the misleading warning.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, python
- Domain
- build-system, cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100