M-o-a-T / moat-mqtt

An async MQTT broker and client, plus DistKV integration
MIT License
21 stars 9 forks source link

Cannot install v0.40 because of dependency solution failure #19

Closed hongquan closed 7 months ago

hongquan commented 7 months ago

The versions of moat-mqtt and anyio dependencies don't match.

lulingar commented 7 months ago

I also saw that. It looks to me like the issue is caused by moat-util:

$ pip install moat-mqtt==0.40.1
...
ERROR: Cannot install moat-mqtt and moat-mqtt==0.40.1 because these package versions have conflicting dependencies.

The conflict is caused by:
    moat-mqtt 0.40.1 depends on anyio~=4.0
    asyncscope 0.6.0 depends on anyio>=3
    asyncwebsockets 0.9.3 depends on anyio>=3.0
    moat-util 0.35.0 depends on anyio~=3.0

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts
smurfix commented 7 months ago

@lulingar These dependencies should not block updating anyio to 4.2 AFAICT.

moat-util isn't the culprit, it is at version 0.43.2 and requires anyio >= 4.2.

Please try updating anyio and moat-util manually, and file a bug to the package that prevents this.

I'm closing this issue because it's not a problem with moat-mqtt.

NB, I have updated asyncscope. It now also depends on anyio 4.

lulingar commented 7 months ago

Surely this could be worked around by manually updating the dependencies to the more recent versions, however the issue is that it isn't working on a clean virtualenv, i.e. "out of the box", which is what the log excerpt I posted shows. As you can see, moat-util seems to be pinned at 0.35.0.

smurfix commented 7 months ago

The question is, where does the pin come from? I'm 99% sure that some interaction between dependencies does the pinning, which is why I asked for trying to manually upgrade these packages, which should result in a more descriptive error message.

lulingar commented 6 months ago

Hi @smurfix, please forgive my forgetting to get back to you. I have attempted the upgrades as you suggested, but the result is the same. I'm attaching the terminal scrollback dump for you to see all of the details. attempt-with-upgrade.log

smurfix commented 6 months ago

Thanks for the log. moat-mqtt 0.40.2 pushed.