Yeah… no, that’s not going to work. The solution pre uv launcher was for users to manually create a virtual environment and install spacy and relevant models, which was way too cumbersome.
Add-ons don’t choose the Python runtime they run in, so expecting each add-on to bundle and maintain its own package-management tooling is asking too much, imo. It’s not something I’m willing to do, at least.
For most add-ons, bundling dependencies at build time and modifying sys.path is enough (I have done that for dozens of add-ons), though that’s not practical for packages such as spacy.
It’s possible for Anki to bundle uv/pip with the new packaging tool, but dependencies have to be installed separately from Anki’s own dependencies, which are stored in a folder like site-packages but no full Python environment listing pinned dependencies, so we don’t get conflict resolution for free. Related: [Wiki] Bundling Python modules with add-ons - #4 by dae