Skip to content

uv keeps resyncing yggdrasil-engine on every sync #394

Description

@navinpai

Describe the bug
Normally, if a package is added through uv, it gets installed and fingerprinted, so that it doesn't need to be downloaded everytime (and is also part of uv.lock). With unleashclient, that behaviour is broken and a dependency package gets installed everytime

To Reproduce

navinpai@maerwynn ~ $ mkcd /tmp/ygg
navinpai@maerwynn /tmp/ygg $ uv init
Initialized project `ygg`
navinpai@maerwynn /tmp/ygg $ uv add unleashclient
Using CPython 3.12.0 interpreter at: /Users/navinpai/.asdf/installs/python/3.12.0/bin/python3.12
Creating virtual environment at: .venv
Resolved 20 packages in 115ms
Prepared 3 packages in 56ms
Installed 18 packages in 16ms
 + apscheduler==3.11.2
 + certifi==2026.4.22
 + charset-normalizer==3.4.7
 + fcache==0.6.0
 + idna==3.13
 + importlib-metadata==9.0.0
 + launchdarkly-eventsource==1.5.1
 + mmh3==5.2.1
 + platformdirs==3.11.0
 + python-dateutil==2.9.0.post0
 + requests==2.33.1
 + semver==3.0.4
 + six==1.17.0
 + tzlocal==5.3.1
 + unleashclient==6.7.0
 + urllib3==2.6.3
 + yggdrasil-engine==1.3.0
 + zipp==3.23.1
navinpai@maerwynn /tmp/ygg $ uv sync
Resolved 20 packages in 2ms
Uninstalled 1 package in 0.55ms
Installed 1 package in 1ms
 ~ yggdrasil-engine==1.3.0
navinpai@maerwynn /tmp/ygg $ uv sync
Resolved 20 packages in 3ms
Uninstalled 1 package in 0.97ms
Installed 1 package in 1ms
 ~ yggdrasil-engine==1.3.0
navinpai@maerwynn /tmp/ygg $ uv sync
Resolved 20 packages in 3ms
Uninstalled 1 package in 0.96ms
Installed 1 package in 1ms
 ~ yggdrasil-engine==1.3.0
navinpai@maerwynn /tmp/ygg $ uv sync
Resolved 20 packages in 3ms
Uninstalled 1 package in 0.93ms
Installed 1 package in 1ms
 ~ yggdrasil-engine==1.3.0

Expected behavior
Once installed, uv sync should report back that there are no changes and not reinstall the package everytime.

Additional context

This issue was also reported in the uv Github: astral-sh/uv#16823 but looks like the fix needs to be made on the unleash side of things.

Metadata

Metadata

Assignees

Labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

Status
New

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions