mjennings061 / viking-log-keeper

661 VGS - Collate gliding log sheets into a database and visual dashboard.
https://viking.streamlit.com/
MIT License
5 stars 0 forks source link

Blank username or password throws error #81

Closed mjennings061 closed 1 month ago

mjennings061 commented 1 month ago

As a user, I want a blank username or password to show 'invalid login' rather than crash, so that I do not need to stare at stack traces

pymongo.errors.InvalidURI: This app has encountered an error. The original error message is redacted to prevent data leaks. Full error details have been recorded in the logs (if you're on Streamlit Cloud, click on 'Manage app' in the lower right of your app).

Traceback:

File "/home/adminuser/venv/lib/python3.12/site-packages/streamlit/runtime/scriptrunner/exec_code.py", line 85, in exec_func_with_error_handling result = func() ^^^^^^

File "/home/adminuser/venv/lib/python3.12/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 576, in code_to_exec exec(code, module.__dict__)

File "/mount/src/viking-log-keeper/src/dashboard/main.py", line 342, in <module> main()

File "/mount/src/viking-log-keeper/src/dashboard/main.py", line 321, in main authenticate()

File "/mount/src/viking-log-keeper/src/dashboard/main.py", line 293, in authenticate login(

File "/mount/src/viking-log-keeper/src/dashboard/main.py", line 263, in login client = Client(db_user) ^^^^^^^^^^^^^^^

File "/mount/src/viking-log-keeper/src/log_keeper/get_config.py", line 43, in __init__ super().__init__(

File "/home/adminuser/venv/lib/python3.12/site-packages/pymongo/mongo_client.py", line 774, in __init__ res = uri_parser.parse_uri( ^^^^^^^^^^^^^^^^^^^^^

File "/home/adminuser/venv/lib/python3.12/site-packages/pymongo/uri_parser.py", line 523, in parse_uri user, passwd = parse_userinfo(userinfo) ^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/adminuser/venv/lib/python3.12/site-packages/pymongo/uri_parser.py", line 91, in parse_userinfo raise InvalidURI("The empty string is not valid username.")