getslash / backslash

Centralized test reporting and monitoring service
Other
16 stars 12 forks source link

Use Flask-Security-too instead of Flask-Security which is no longer maintained #639

Open klimburg opened 3 years ago

klimburg commented 3 years ago

Email-validator module is missing It can be set as an extra for Flask-WTF which is brought in by Flask-security. Flask-security is no longer maintained though and the readme suggests using Flask-Security-too

$ pipenv run manage db upgrade
Courtesy Notice: Pipenv found itself running within a virtual environment, so it will automatically use that environment, instead of creating its own for any project. You can set PIPENV_IGNORE_VIRTUALENVS=1 to force pipenv to ignore that environment and create its own instead. You can set PIPENV_VERBOSITY=-1 to suppress this warning.
Traceback (most recent call last):
  File "manage.py", line 211, in <module>
    cli()
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/home/kevin/Code/backslash/_lib/db.py", line 116, in upgrade
    with _migrate_context() as migrate:
  File "/usr/local/lib/python3.6/contextlib.py", line 81, in __enter__
    return next(self.gen)
  File "/home/kevin/Code/backslash/_lib/db.py", line 133, in _migrate_context
    from flask_app.app import create_app
  File "/home/kevin/Code/backslash/flask_app/app.py", line 4, in <module>
    from flask_security import Security
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/flask_security/__init__.py", line 13, in <module>
    from .core import Security, RoleMixin, UserMixin, AnonymousUser, current_user
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/flask_security/core.py", line 28, in <module>
    from .forms import ChangePasswordForm, ConfirmRegisterForm, \
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/flask_security/forms.py", line 69, in <module>
    email_validator = Email(message='INVALID_EMAIL_ADDRESS')
  File "/home/kevin/.local/share/virtualenvs/backslash-nWUv8qm3/lib/python3.6/site-packages/wtforms/validators.py", line 332, in __init__
    raise Exception("Install 'email_validator' for email validation support.")
Exception: Install 'email_validator' for email validation support.
klimburg commented 3 years ago

Alternative solution is to just add email_validator to the Pipfile