You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Should reqstool add a reqstool-python-uv-plugin, and is reqstool-python-poetry-plugin
still worth maintaining? Opened to record findings, not to propose a concrete build — the
evidence below points at "not yet" for the first and "needs real usage data" for the
second.
A uv plugin isn't buildable the way hatch's and poetry's are — yet
reqstool-python-hatch-plugin and reqstool-python-poetry-plugin both work the same way:
a custom build-time hook, registered through the backend's plugin system, that scans source
for decorators during hatch build / poetry build and writes annotations.yml.
uv is two different things, and only one of them is relevant here:
uv as package/dependency manager (uv add, uv sync, uv build) — this is
orthogonal to which build backend a project declares. A project can use uv for
everything and still declare build-backend = "hatchling.build" in pyproject.toml.
In that case uv build just invokes hatchling under PEP 517, and reqstool-python-hatch-plugin already works, unmodified, for uv users today. No new
plugin needed for this case.
uv_build, uv's own build backend — this is what a reqstool-python-uv-plugin would
actually need to hook into, and it currently has no build-hook or plugin mechanism at all. astral-sh/uv#14561 is the open upstream
request for one. uv-dynamic-versioning, the closest existing analog, states outright
that it "doesn't work with the uv build backend right now" for the same reason.
So: nothing to build until uv#14561 (or equivalent) lands upstream. Worth revisiting when it
does, but starting now would mean building against a backend with no extension point.
Is poetry still needed?
Signal, not a conclusion — I don't have download or dependent-repo data to settle this:
reqstool-python-poetry-plugin's own README carries > [!WARNING] Poetry plugin support is currently untested. Functionality may be broken. Contributions welcome. — written by
the project itself, not inferred.
Its commit history has no feature or fix commits since early on; the only recent activity
is the same automated CI/dependency-bump/migration commits every repo got.
Its issue history is entirely closed maintenance issues (Renovate config, docs, dynamic
versioning investigation) — nothing recent asking for it to work.
reqstool-python-hatch-plugin by contrast has no such warning and is the same age.
I couldn't get PyPI download stats for either package to compare actual usage — pypistats.org
wasn't reachable from here. That's the number I'd want before deciding to deprecate: whether
anyone downloads the poetry plugin at all, versus whether it's simply never been fixed
because no one asked.
Before any decision on poetry: pull download counts for reqstool-python-poetry-plugin vs reqstool-python-hatch-plugin from pypistats.org (or
PyPI's BigQuery dataset) to see whether "untested, may be broken" has actually cost anyone
anything.
Summary
Should reqstool add a
reqstool-python-uv-plugin, and isreqstool-python-poetry-pluginstill worth maintaining? Opened to record findings, not to propose a concrete build — the
evidence below points at "not yet" for the first and "needs real usage data" for the
second.
A uv plugin isn't buildable the way hatch's and poetry's are — yet
reqstool-python-hatch-pluginandreqstool-python-poetry-pluginboth work the same way:a custom build-time hook, registered through the backend's plugin system, that scans source
for decorators during
hatch build/poetry buildand writesannotations.yml.uvis two different things, and only one of them is relevant here:uvas package/dependency manager (uv add,uv sync,uv build) — this isorthogonal to which build backend a project declares. A project can use
uvforeverything and still declare
build-backend = "hatchling.build"inpyproject.toml.In that case
uv buildjust invokes hatchling under PEP 517, andreqstool-python-hatch-pluginalready works, unmodified, for uv users today. No newplugin needed for this case.
uv_build, uv's own build backend — this is what areqstool-python-uv-pluginwouldactually need to hook into, and it currently has no build-hook or plugin mechanism at all.
astral-sh/uv#14561 is the open upstream
request for one.
uv-dynamic-versioning, the closest existing analog, states outrightthat it "doesn't work with the uv build backend right now" for the same reason.
So: nothing to build until uv#14561 (or equivalent) lands upstream. Worth revisiting when it
does, but starting now would mean building against a backend with no extension point.
Is poetry still needed?
Signal, not a conclusion — I don't have download or dependent-repo data to settle this:
reqstool-python-poetry-plugin's own README carries> [!WARNING] Poetry plugin support is currently untested. Functionality may be broken. Contributions welcome.— written bythe project itself, not inferred.
is the same automated CI/dependency-bump/migration commits every repo got.
versioning investigation) — nothing recent asking for it to work.
reqstool-python-hatch-pluginby contrast has no such warning and is the same age.I couldn't get PyPI download stats for either package to compare actual usage — pypistats.org
wasn't reachable from here. That's the number I'd want before deciding to deprecate: whether
anyone downloads the poetry plugin at all, versus whether it's simply never been fixed
because no one asked.
Suggested next steps
Build/Metadata Hook astral-sh/uv#14561.
reqstool-python-poetry-pluginvsreqstool-python-hatch-pluginfrom pypistats.org (orPyPI's BigQuery dataset) to see whether "untested, may be broken" has actually cost anyone
anything.