Skip to content
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

Notes for running with Python 3.11 #3

Open
williamcpierce opened this issue Feb 13, 2023 · 1 comment
Open

Notes for running with Python 3.11 #3

williamcpierce opened this issue Feb 13, 2023 · 1 comment

Comments

@williamcpierce
Copy link

williamcpierce commented Feb 13, 2023

I've been working to get this running with Python 3.11, mostly to check if EsiPy is still functional after recent ESI changes.

I'm creating this issue to leave some notes on what I ran into, to possibly fix with a PR later (if I get it fully working).

  1. PySwagger is incompatible with Python>=3.10 due to an issue with collections.MutableMapping. This small change will resolve that issue: https://github.com/fboerman/pyswagger/commit/52019f41678d3f91f7f8dfc06387e0afd328ae38
    as described here: https://github.com/Kyria/EsiPy/issues/64

  2. The database file, app.db, seems to be created in the top level project directory when running flask db upgrade. However, the Flask app is looking for the db in instance/app.db, leading to the following error:
    sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such table: user
    Moving the created app.db file to the instance directory fixes this.

  3. The login button image link is broken, and can be updated to: https://web.ccpgamescdn.com/eveonlineassets/developers/eve-sso-login-white-small.png

At this point, I'm able to successfully authenticate with the SSO and retrieve my wallet balance, but I get the below error. That's the correct wallet balance, so I'm stopping at this point for now.
esipy.exceptions.APIException: HTTP Error 200: b'2113860735.69'

@Rallick-Jex
Copy link

Rallick-Jex commented Oct 19, 2023

I got it to work today, you have to drill down to pyswagger/io.py and add the same .abc to both instances of collections on line 391. After I got it to work though, I tried adding another scope (covered by my app through the developer website) and it broke. It goes into the current_user.is_authenticated, so the authentication works, but when it tries to make the actual request, the response is only: b'{"error":"authentication failure"}'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants