flask-cognito-integration icon indicating copy to clipboard operation
flask-cognito-integration copied to clipboard

import error

Open pbarone opened this issue 1 year ago • 1 comments

When I try importing the flask_awscognito library in my init.py module I get the below error. Any ideas what I am doing wrong?

from flask_awscognito import AWSCognitoAuthentication

def create_app():
    app = Flask(__name__)
    app.config['SECRET_KEY'] = 'xxxxx'
    app.config['SQLALCHEMY_DATABASE_URI'] = f'sqlite:///{DB_NAME}'
    db.init_app(app)


    from .views import views


    #cognito auth
    app.config['AWS_DEFAULT_REGION'] = 'us-east-1'
    app.config['AWS_COGNITO_DOMAIN'] = 'cognitodomain.com'
    app.config['AWS_COGNITO_USER_POOL_ID'] = 'us-east-1_XXXXXX'
    app.config['AWS_COGNITO_USER_POOL_CLIENT_ID'] = 'YYYYYYYY'
    app.config['AWS_COGNITO_USER_POOL_CLIENT_SECRET'] = 'ZZZZZZZZZ'
    app.config['AWS_COGNITO_REDIRECT_URL'] = 'http://localhost:5000/aws_cognito_redirect'
    aws_auth = AWSCognitoAuthentication(app)




Error: While importing 'main', an ImportError was raised:

Traceback (most recent call last):
  File "/home/pbarone/docker/myflaskapp/.venv/lib/python3.10/site-packages/flask/cli.py", line 219, in locate_app
    __import__(module_name)
  File "/home/pbarone/docker/myflaskapp/main.py", line 1, in <module>
    from website import create_app
  File "/home/pbarone/docker/myflaskapp/website/__init__.py", line 5, in <module>
    from flask_awscognito import AWSCognitoAuthentication
  File "/home/pbarone/docker/myflaskapp/.venv/lib/python3.10/site-packages/flask_awscognito/__init__.py", line 1, in <module>
    from flask_awscognito.plugin import AWSCognitoAuthentication
  File "/home/pbarone/docker/myflaskapp/.venv/lib/python3.10/site-packages/flask_awscognito/plugin.py", line 3, in <module>
    from flask import _app_ctx_stack, abort, request, make_response, jsonify, g
ImportError: cannot import name '_app_ctx_stack' from 'flask' (/home/pbarone/docker/myflaskapp/.venv/lib/python3.10/site-packages/flask/__init__.py)

pbarone avatar Jan 02 '24 22:01 pbarone

The code is now around four years old, and it's not something I've looked into in a while. My guess would be in that time it looks like these libraries have changed, and the example code probably needs a little massaging to work in 2024.

CloudySnake avatar Jan 03 '24 07:01 CloudySnake