Compatibility with Briefcase Projects: Support for New Configuration File
Title: Compatibility with Briefcase Projects: Support for New Configuration File
Issue Description:
I am working on a project using Briefcase and encountered compatibility issues when trying to integrate uv. The main problem arises from the different configurations expected by uv and Briefcase, specifically in the pyproject.toml file.
Problem Description
-
Project Structure: Briefcase projects have a specific structure where the
pyproject.tomlfile is located in the root directory. Here's a simplified version of the structure:. ├── pyproject.toml ├── src │ └── project_name │ ├── __init__.py │ ├── app.py │ └── ... └── tests -
Configuration Differences:
-
Briefcase uses a
[tool.briefcase]section in thepyproject.tomlfile. -
uv expects a
[project]section and a[tool.uv]section for dependencies.
-
Briefcase uses a
Steps to Reproduce
- Create a Briefcase project with the structure mentioned above.
- Navigate to the project directory and try to run a
uvcommand, e.g.,uv add ruff. - Observe the error indicating that the
pyproject.tomlfile does not have the expected[project]table.
Error Messages
When running uv add ruff in the project root:
error: No `pyproject.toml` found in current directory or any parent directory
When running uv add ruff in the project_name subdirectory:
error: No `project` table found in: `/path/to/project/pyproject.toml`
Proposed Solution
To resolve this compatibility issue, I propose the following:
-
Introduce a New Configuration File: Allow
uvto recognize a new configuration file in the base folder that can be used to specify the[project]and[tool.uv]sections. This file could be nameduv.tomlor similar. -
Configuration Flexibility: Provide an option to configure the location and name of this file, so it can coexist with the Briefcase
pyproject.tomlwithout conflicts.
Additional Information
-
Command Used:
uv add ruff - uv Platform: macOS
- uv Version: 0.3.3 (deea6025a 2024-08-23)
- macOS Version: [Please specify your macOS version, e.g., macOS Sonoma 14.6.1]
Thank you for considering this feature request. This enhancement would greatly improve the integration of uv with projects managed by Briefcase, allowing for more seamless development workflows.