-
Notifications
You must be signed in to change notification settings - Fork 275
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot make install #2107
Comments
See #2091 |
Thanks for the response. Do you happen to know what was the last working version? I only need wampcra, not doing any of this bitcoin stuff. I tried 23.1.1 as well and that had the same problem. Also I tried 22.6.1 which is the next version down and also in pypi. The pip install worked but I get this error on a config.json that works on the crossbar docker image:
This error happens even when running crossbar with no parameters. I guess I will keep trying lower versions. I'm on the verge of using this in a commercial product so very interested in getting it going. UPDATE: I tried pip install of the latest of every major version back to 17.12.1. Unfortunately it looks like autobahn.wamp.cryptosign lost the class SigningKey at some point and it seems to be pulling in the new cryptosign instead of the one that worked with that version so it is erring on not being able to find that for a long way back. |
In case anyone needs a database back end for their workers, the mysql proper and the mysql-connector-python package which is pure python works on the crossbar container. Unfortunately the standard and recommended mysqlclient and psycopg2 (for postgresql) won't work on the crossbar container because it is built with pypy and modules with C extensions need to be completely recompiled for pypy as far as I understand. Since the mysql driver won't work with mariadb then mariadb is out as an option as well. |
The issue is that Autobahn has been updated with the new eth_abi 4.0.0 version and Crossbar hasn't. This means none of the current Crossbar versions will install/work as they still require the old eth_abi 4.0.0b2 version.
|
So I install crossbar and then I do this? |
This is to install Crossbar. With this version of Crossbar it shouldn't clash with autobahn |
Thank you very much for your help. This is what I got:
I think updating_dependencies is supposed to be a tag right? I don't see it in the pulldown. |
Just a quick note seeing this flying by: I hope the Ethereum world - dependencies and all that - is finally stabilizing=) It's not quite yet perfect in Crossbar.io, I mean all the build integration and test automation .. but it is on the right track and making progress over time. In my eyes.
I've had success in the past using https://pypi.org/project/psycopg2cffi/ This is a proper library for PG which uses CFFI and thus works great on PyPy. I am not currently using PG together with Python a lot, but there also is https://www.psycopg.org/psycopg3/ and of course the general question has been asked before;) https://stackoverflow.com/questions/9350422/how-do-you-get-pypy-django-and-postgresql-to-work-together |
Sorry, got the command wrong. Try this:
I've actually run it myself this time (like I should have done before 🙂 ) and it installs |
First of all, thanks everyone for providing input and being so helpful. About psycopg2cffi, thanks for the recommendation. I do remember seeing some stuff on that and I will try it, but it doesn't seem to be very popular and there wasn't a lot on it that I found. Even the link you gave questions in a comment how well supported psycopg2cffi is. |
So I tried the pip install into a venv and it seems to install fine but when I enter crossbar start I get the following error:
This was a fresh docker image built from python:3.9.12-slim. I also tried python:latest with the same result. |
I don't know .. I am usually using CPython built from raw vanilla upstream sources .. which works
|
I did pip install psycopg2cffi but it still doesn't work. I think I would need to recompile it. |
whether it is worth the work getting PyPy and PostgreSQL, plus your own Python code work, of course is sth for you to decide! but what I will say is: I have used Autobahn/Crossbario on PyPy and PostgreSQL before - and it is a perfect choice and very hard to beat in various dimensions. At least my experience in real world "big enterprise applications" ... maybe I should add, there are different ways of integration ... including stuff like writing PL/pgSQL stored procedures and register them as WAMP procedures, or publish WAMP events right from PL/pgSQL procedural code .. all using native database types ... all of them=) it is pretty powerful, but yeah, I am a big PostgreSQL fan .. |
Well then I would like to know how to get it to work. I did setup.py install for psycopg2cffi and that didn't work either. I'm intending to use the Django ORM so I can't use raw commands. |
so one way to approach seems like: reuse the official Docker image for PyPy3.9
and then once you have that, you might archive your build image as a Docker file that derives from above PyPy image, and then may or may not also bundle your actual application code ... just my 2cts. |
I tried this. I made a docker file based on pypy as you recommended. I did pip install Django and pip install psycopg2cffi. Still get the same error:
I found a comment for some code to add to the settings.py to be compatible with psycopg2 and psycopg2cffi:
But then I get this error:
It still doesn't look to me like psycopg2cffi is up to date. |
Can you post your Dockerfile? Maybe I see the issue .. |
Thanks for sticking with this. I haven't had a lot of time in the last bit. Note that I wasn't doing pip install with the Dockerfile but rather I was signing into the container and running it manually for the sake of investigation, but it should be all the same. Here is my Dockerfile (paraphrased a bit):
I also tried pip install psycopg2-binary. Not sure if that is needed with psycopg2cffi or not, but neither works anyway. |
In install version 22.6.1 2 files hava a error in imports. site-packages/crossbar/common/checkconfig.py and site-packages/crossbar/router/auth/cryptosign.py have identity_realm_name_category change to identify_realm_name_category and run correct crossbar |
Not install in docker image. Install in debian 11 with command pip install crossbar. I had to change the two files to get it to start. |
I just noticed that there is some of the dockerfile missing in that screenshot. I tried to look for the dockerfile in 'crossbar-binaries/docker' but I could not find it. Please, where do I find the dockerfile? |
I tried to use this Dockerfile but I couldn't get it to work either. Specifically, curl --proto '=https' --tls1.2 -sSf https://sh.rustup.rs | sh -s -- -y did not create rustc so the rustc command fails. I'm also not sure what rust has to do with crossbar or autobahn. I don't use it at all. Here is my Dockerfile so far:
I had alittle luck with this dockerfile:
But it gets stuck inside the sh.rustup.rs script with the following message:
Thank you if anyone can help. Preferably I would just like a Dockerfile that works. I'm trying to do good things with WAMP here. |
Hi there, when I try to make install crossbar I get the following error:
UPDATE: At first I thought the answer was to change the line in requirements-latest.txt for eth-abi from 4.0.0-beta.2 to 4.0.0 but then I get the following error:
I tried to remove references to eth_typing from the rest of the code but it seems fairly pervasive.
The text was updated successfully, but these errors were encountered: