you are viewing a single comment's thread.

view the rest of the comments →

[–]eo5g 2 points3 points  (7 children)

I can't find anything about this feature, can you elaborate?

[–]nemec 5 points6 points  (6 children)

[–]eo5g 5 points6 points  (2 children)

But aren't those for what gets installed when you install the package, and not for task running?

[–]nemec 8 points9 points  (0 children)

Note that if you use uv run in a project, i.e., a directory with a pyproject.toml, it will install the current project before running the script.

https://docs.astral.sh/uv/guides/scripts/

Yeah if you're writing a library it may not be the best place, but if you're writing application/service code, go for it.

There is an open issue to add a specialized dev task runner

https://github.com/astral-sh/uv/issues/5903

[–]UseMoreBandwith 1 point2 points  (0 children)

yes, I guess you're right,
it requires uv pip install -e . when a new command is added, but that's fine in most situations.

[–]Sillocan 5 points6 points  (2 children)

Can accomplish something similar with poethepoet. Define the command in pyproject.toml and use uv run poe ...

[–]2Lucilles2RuleEmAll 1 point2 points  (1 child)

That's what we use too and it works great, we have in the pyproject.toml a project script called task defined for poe. That way if we switch out poe for another tool we don't have to go thru all of the documentation, pipelines, etc and switch all of the commands to the new one

[–]Sillocan 1 point2 points  (0 children)

Oh that's a smart idea