Skip to content

fix: Update readme with install change for uv, dev group included by default#12

Closed
wevonosky wants to merge 2 commits intoPymetheus:mainfrom
wevonosky:main
Closed

fix: Update readme with install change for uv, dev group included by default#12
wevonosky wants to merge 2 commits intoPymetheus:mainfrom
wevonosky:main

Conversation

@wevonosky
Copy link

@wevonosky wevonosky commented Feb 4, 2026

Description

The README for the repo includes instructions for uv that explicitly include the dev dependency group. uv includes this group by default when calling sync

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Code refactoring
  • Performance improvement
  • Test addition or update

Changes Made

  • Small change to README

Checklist

  • My code follows the project's style guidelines
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have updated the documentation accordingly
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

@Pymetheus
Copy link
Owner

Thanks for your contribution @wevonosky ! Following the uv documentation your changes are not correct. I've tested both uv sync and uv sync --extra dev before and the former doesn't install the optional dependencies.

Syncing optional dependencies
uv reads optional dependencies from the [project.optional-dependencies] table. These are frequently referred to as "extras".
uv does not sync extras by default. Use the --extra option to include an extra.

@Pymetheus Pymetheus closed this Feb 4, 2026
@wevonosky
Copy link
Author

wevonosky commented Feb 4, 2026

Ah I see, but might that be a regression in the use of uv then? I guess this project is trying to abstract the project management tool used, but as a user of uv, I would always end up fixing this projects template so that I retained the ability to do:

uv add --dev <mydep> and uv sync --no-dev for example. I wonder if pip and poetry work with putting dev dependencies into the [dependency-groups] section of the pyproject.toml? As is I think this project isn't following PEP-735 which users might find surprising.

Edit: Thinking on this more, this is a sort of regression in packaging. If a project using this template is published, I think using the optional dependency group would let people depend on the dev group (not saying anyone would) by doing uv add <my-project>[dev] but the dev group should really be local only?

@Pymetheus
Copy link
Owner

Yes that was a regression, thanks for the heads up! I migrated from using [project.optional-dependencies] to [dependency-groups] and tested it successfully also with pip & poetry. Now the template is following PEP-735 and I merged the corresponding PR #13

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.

2 participants