astral-sh/uv

Improve UX when `uv add` or `uv sync` are run in a directory with no `pyproject.toml`

Open

#12,988 opened on Apr 20, 2025

View on GitHub
 (1 comment) (1 reaction) (0 assignees)Rust (84,934 stars) (3,111 forks)batch import
enhancementerror messageshelp wanted

Description

Summary

Currently if uv add or uv sync are run in a directory with no pyproject.toml, the resultant error message is:

$ mkdir testcase-uv && cd $_
$ uv add urllib3
error: No `pyproject.toml` found in current directory or any parent directory
$ uv sync
error: No `pyproject.toml` found in current directory or any parent directory

To improve the UX for users migrating from pip (or uv's uv pip interface), it would help if this error message hinted that the user should probably run uv init or else see the uv getting started docs.

Example

Perhaps something roughly like this?

$ uv add urllib3
error: No `pyproject.toml` found in current directory or any parent directory.
To create one run `uv init`, or see: https://docs.astral.sh/uv/guides/projects/

Contributor guide

Improve UX when `uv add` or `uv sync` are run in a directory with no `pyproject.toml` · astral-sh/uv#12988 | Good First Issue