Skip to content

use uv setup #765

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 9, 2025
Merged

use uv setup #765

merged 1 commit into from
Jul 9, 2025

Conversation

lucemia
Copy link
Contributor

@lucemia lucemia commented Jul 9, 2025

This pull request focuses on simplifying dependency management by transitioning from requirements.txt and requirements.in to using pyproject.toml with uv.lock for dependency tracking. Additionally, it updates CI workflows to use the new dependency installation method and introduces a dedicated development setup section in the README.md.

Dependency Management Updates:

  • Removed requirements.in and its contents, consolidating all dependencies into pyproject.toml under [tool.uv.dev-dependencies]. [1] [2]
  • Updated the MANIFEST.in file to exclude requirements.in and requirements.txt.

CI Workflow Updates:

  • Modified all CI workflows (ci-package-lint.yml, ci-package-test.yml, ci-scripts-docs.yml, ci-scripts-lint.yml, ci-scripts-test.yml, deploy-docs.yml, python-publish-compatible.yml, and python-publish.yml) to replace the dependency installation step with uv pip install --group dev. This eliminates the need for activating virtual environments manually. [1] [2] [3] [4] [5] [6] [7] [8]

Documentation Updates:

  • Added a "Development Setup" section to the README.md, explaining how to install development dependencies using uv pip install --group dev and emphasizing the transition to pyproject.toml and uv.lock for dependency management.

@lucemia lucemia requested a review from Copilot July 9, 2025 04:14
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR migrates dependency management to pyproject.toml with uv.lock, removes legacy requirement files, updates CI workflows to use uv pip install --group dev, and adds a development setup section to the README.

  • Consolidate all dev dependencies under [tool.uv.dev-dependencies] in pyproject.toml and remove requirements.in.
  • Update MANIFEST.in to stop excluding old requirement files and refresh source manifest.
  • Replace uv pip install -r requirements.txt with uv pip install --group dev across all CI workflows.
  • Document the new development setup in README.md.

Reviewed Changes

Copilot reviewed 12 out of 14 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
requirements.in Removed legacy dependency file
pyproject.toml Added [tool.uv.dev-dependencies] block
README.md Introduced "Development Setup" section
MANIFEST.in Removed duplicates of requirements.in exclusion
.github/workflows/python-publish.yml Switched install step to uv pip install --group dev
.github/workflows/python-publish-compatible.yml Switched install step to uv pip install --group dev
.github/workflows/deploy-docs.yml Switched install step to uv pip install --group dev
.github/workflows/ci-scripts-test.yml Switched install step to uv pip install --group dev
.github/workflows/ci-scripts-lint.yml Switched install step to uv pip install --group dev
.github/workflows/ci-scripts-docs.yml Switched install step to uv pip install --group dev
.github/workflows/ci-package-test.yml Switched install step to uv pip install --group dev
.github/workflows/ci-package-lint.yml Switched install step to uv pip install --group dev
Comments suppressed due to low confidence (2)

README.md:177

  • [nitpick] Consider adding a step to create or activate the virtual environment (e.g., uv venv) before installing dev dependencies to avoid confusion for new contributors.
uv pip install --group dev

pyproject.toml:48

  • The dependency "ty" appears unintended or misspelled—remove it or replace it with the correct package name.
    "ty",

@@ -18,8 +18,6 @@ global-exclude blog.md
global-exclude codecov.yml
global-exclude mkdocs.yml
global-exclude pyproject-compatible.toml
global-exclude requirements.in
global-exclude requirements.in
global-exclude tox.ini
Copy link
Preview

Copilot AI Jul 9, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add global-exclude requirements.txt to ensure the old requirements file is not included in source distributions.

Suggested change
global-exclude tox.ini
global-exclude tox.ini
global-exclude requirements.txt

Copilot uses AI. Check for mistakes.

@lucemia lucemia marked this pull request as ready for review July 9, 2025 07:23
@lucemia lucemia merged commit 04480d9 into main Jul 9, 2025
5 checks passed
@lucemia lucemia deleted the use-uv-setup branch July 9, 2025 07:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant