Open novski opened 8 months ago
found some more hints:
poetry 1.6 has a bug that didn't got fixed with its pullrequest to 1.6.1: https://github.com/python-poetry/poetry/pull/8336
so to get over the atomic_open import fail which is because requests <2.26 I reinstalled it with:
pip install --force-reinstall -v "requests==2.31"`
and got this funny warning:
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
poetry 1.6.1 requires platformdirs<4.0.0,>=3.0.0, but you have platformdirs 2.4.0 which is incompatible.
then did: pip install --force-reinstall -v "platformdirs==3.11.0"
& pip install --force-reinstall -v "filelock==3.12.4"
as it showed the same error...
I don't know if the pip installation has something to do with the poetry installation, but I leave it up to you to take that in to account...
I'm having the same problem installing on a Raspberry Pi 4 B with the latest Raspberry Pi OS (64 bit). I've only tried installing via pip3 install mqtt-io
I'm having a similar issue RPi 3B+ PRETTY_NAME="Debian GNU/Linux 11 (bullseye)" NAME="Debian GNU/Linux" VERSION_ID="11" VERSION="11 (bullseye)" VERSION_CODENAME=bullseye ID=debian HOME_URL="https://www.debian.org/" SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/"
Python 3.11.4 pip 23.3.1
Also ended here with the same Problem
Raspberry Pi 2 Model B Rev 1.1 PRETTY_NAME="Raspbian GNU/Linux 12 (bookworm)" Python 3.11.2 pip 23.3.1
So I believe I found a workaround. Something to do with PyYAML not having a maximum working version of Cython specified, and Cython 3.0 broke something.
Thanks to the "Inline Constraint" on this page.
Follow that link for more details, but here's the short version of what I did:
# create a constraint file that limits the Cython version to one that should work
echo 'Cython < 3.0' > /tmp/constraint.txt
# install PyYAML itself (or other packages that need it); any package requiring Cython will be constrained to `Cython < 3.0`
PIP_CONSTRAINT=/tmp/constraint.txt pip install 'PyYAML==5.4.1'
# install mqtt-io, now that we have a working version of pyyaml
pip install mqtt-io
Many thanks to nitzmahone for the workaround.
I orderd an Pi Zero 2 W to test if it does not fail on more recent architecture (ARMv8) and OS (Raspberrypi OS lite 64bit):
$dmesg
...
[ 0.000000] Linux version 6.1.0-rpi4-rpi-v8 (debian-kernel@lists.debian.org) (gcc-12 (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT Debian 1:6.1.54-1+rpt2 (2023-10-05)
[ 0.000000] random: crng init done
[ 0.000000] Machine model: Raspberry Pi Zero 2 W Rev 1.0
...
That fails as well with the same reasons, but works with the Workaround above Just to let anybody know, that you don't have to order different hardware...
Workaround works for me, too!
I am on DietPi with Debian Bookworm (Python 3.11).
THis seems to be fixed in latest mqtt-io 2.3.0?
Describe the bug Installation on raspberry pi zero w fails with pip and poetry.
Expected behavior pip should install mqtt-io.
Error messages and traceback
Then found similar: https://github.com/flyte/mqtt-io/issues/324 and related comments here: https://stackoverflow.com/questions/76708329/docker-compose-no-longer-building-image-attributeerror-cython-sources
definition of pyyaml seams ok: https://github.com/flyte/mqtt-io/blob/2bb2f945ea47ed87f99ab4fc966d2dbbd47fc7c7/pyproject.toml#L12
So I downloaded the source and installed with poetry:
where wrapt fails... Installing as recomended with
pip wheel --use-pep517 "wrapt (==1.13.3)"
works fine but reinitializing~/mqtt-io $ poetry install
Throws this:where a reinstallation of
pip install utils
does not help and throws the exact same as above again.Here i got stuck...
Config
Hardware
Additional context Add any other context about the problem here.