casualsnek / onthespot

qt based music downloader written in python
GNU General Public License v2.0
741 stars 53 forks source link

Login problem on reopening #68

Open FGAC1226 opened 1 year ago

FGAC1226 commented 1 year ago

When closing the program and reopening it, it doesn't login again, it shows an "unexpected error occured". It is not such a problem, since manually login in again works as expected.

casualsnek commented 1 year ago

Do you have logs and any screenshots ?

FGAC1226 commented 1 year ago

The complete log from starting the program:

OTS Version : 0.5 Config version: 0.5 FFMPEG found in package ! Using ffmpeg binary at: /tmp/_MEIh6toCF/onthespot/bin/ffmpeg/ffmpeg [2023-05-29 22:46:34,835 :: init :: init.py -> 11: main() :: INFO] -> Starting application in 3 2 1 Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway. [2023-05-29 22:46:35,111 :: gui.main_ui :: gui/mainui.py -> 86: init() :: INFO] -> Initialising main window, logging session : e3d7ec91-77ec-4b97-9a8c-356f31102ae3 [2023-05-29 22:46:35,141 :: gui.main_ui :: gui/mainui.py -> 102: init() :: INFO] -> Loading configurations.. [2023-05-29 22:46:35,142 :: gui.main_ui :: gui/mainui.py -> 192: m3u_maker_set() :: INFO] -> Playlist generator watcher set clicked [2023-05-29 22:46:35,143 :: gui.main_ui :: gui/mainui.py -> 195: __m3u_maker_set() :: INFO] -> Starting media watcher thread, no active watcher [2023-05-29 22:46:35,143 :: gui.main_ui :: gui/mainui.py -> 205: m3u_maker_set() :: INFO] -> Playlist thread started [2023-05-29 22:46:35,143 :: worker.utility :: worker/utility.py -> 22: run() :: INFO] -> Playlist m3u8 builder is running.... [2023-05-29 22:46:35,144 :: gui.main_ui :: gui/mainui.py -> 474: fill_configs() :: INFO] -> Config filled to UI [2023-05-29 22:46:35,144 :: gui.main_ui :: gui/mainui.py -> 114: init__() :: INFO] -> Preparing session loader [2023-05-29 22:46:35,145 :: gui.main_ui :: gui/mainui.py -> 126: init() :: INFO] -> Preparing parsing queue processor [2023-05-29 22:46:35,145 :: worker.session :: worker/session.py -> 17: run() :: INFO] -> Session loader has started ! [2023-05-29 22:46:35,145 :: worker.session :: worker/session.py -> 23: run() :: INFO] -> Trying to create session for fgeo [2023-05-29 22:46:35,145 :: gui.main_ui :: gui/mainui.py -> 170: set_table_props() :: INFO] -> Setting table item properties [2023-05-29 22:46:35,146 :: worker.utility :: worker/utility.py -> 90: run() :: INFO] -> Parsing queue processor is active ! [2023-05-29 22:46:35,146 :: worker.utility :: worker/utility.py -> 92: run() :: INFO] -> Waiting for new item to parse [2023-05-29 22:46:35,146 :: gui.main_ui :: gui/mainui.py -> 141: init() :: INFO] -> Main window init completed ! Gtk-Message: 22:46:35.229: Failed to load module "canberra-gtk-module" Gtk-Message: 22:46:35.229: Failed to load module "pk-gtk-module" [2023-05-29 22:46:35,346 :: utils :: utils/utils.py -> 50: login_user() :: INFO] -> logging in user 'fgeo@.*' [2023-05-29 22:46:35,347 :: utils :: utils/utils.py -> 56: login_user() :: INFO] -> Session file exists for user, attempting to use it 'fgeo@.*' [2023-05-29 22:46:35,414 :: utils :: utils/utils.py -> 72: login_user() :: ERROR] -> Failed logging in user 'fgeo@.***', unexpected error ! [2023-05-29 22:46:35,417 :: gui.main_ui :: gui/mainui.py -> 399:__generate_users_table() :: INFO] -> Accounts table was populated !

And I don't know how to add images here, but the user tables shows "LoginERROR" on the "Account type" column

casualsnek commented 1 year ago

The complete log from starting the program:

OTS Version : 0.5 Config version: 0.5 FFMPEG found in package ! Using ffmpeg binary at: /tmp/_MEIh6toCF/onthespot/bin/ffmpeg/ffmpeg [2023-05-29 22:46:34,835 :: init :: init.py -> 11: main() :: INFO] -> Starting application in 3 2 1 Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway. [2023-05-29 22:46:35,111 :: gui.main_ui :: gui/mainui.py -> 86: init() :: INFO] -> Initialising main window, logging session : e3d7ec91-77ec-4b97-9a8c-356f31102ae3 [2023-05-29 22:46:35,141 :: gui.main_ui :: gui/mainui.py -> 102: init() :: INFO] -> Loading configurations.. [2023-05-29 22:46:35,142 :: gui.main_ui :: gui/mainui.py -> 192: m3u_maker_set() :: INFO] -> Playlist generator watcher set clicked [2023-05-29 22:46:35,143 :: gui.main_ui :: gui/mainui.py -> 195: __m3u_maker_set() :: INFO] -> Starting media watcher thread, no active watcher [2023-05-29 22:46:35,143 :: gui.main_ui :: gui/mainui.py -> 205: m3u_maker_set() :: INFO] -> Playlist thread started [2023-05-29 22:46:35,143 :: worker.utility :: worker/utility.py -> 22: run() :: INFO] -> Playlist m3u8 builder is running.... [2023-05-29 22:46:35,144 :: gui.main_ui :: gui/mainui.py -> 474: fill_configs() :: INFO] -> Config filled to UI [2023-05-29 22:46:35,144 :: gui.main_ui :: gui/mainui.py -> 114: init() :: INFO] -> Preparing session loader [2023-05-29 22:46:35,145 :: gui.main_ui :: gui/mainui.py -> 126: init() :: INFO] -> Preparing parsing queue processor [2023-05-29 22:46:35,145 :: worker.session :: worker/session.py -> 17: run() :: INFO] -> Session loader has started ! [2023-05-29 22:46:35,145 :: worker.session :: worker/session.py -> 23: run() :: INFO] -> Trying to create session for fgeo [2023-05-29 22:46:35,145 :: gui.main_ui :: gui/mainui.py -> 170: set_table_props() :: INFO] -> Setting table item properties [2023-05-29 22:46:35,146 :: worker.utility :: worker/utility.py -> 90: run() :: INFO] -> Parsing queue processor is active ! [2023-05-29 22:46:35,146 :: worker.utility :: worker/utility.py -> 92: run() :: INFO] -> Waiting for new item to parse [2023-05-29 22:46:35,146 :: gui.main_ui :: gui/mainui.py -> 141: init() :: INFO] -> Main window init completed ! Gtk-Message: 22:46:35.229: Failed to load module "canberra-gtk-module" Gtk-Message: 22:46:35.229: Failed to load module "pk-gtk-module" [2023-05-29 22:46:35,346 :: utils :: utils/utils.py -> 50: login_user() :: INFO] -> logging in user 'fgeo****@._' [2023-05-29 22:46:35,347 :: utils :: utils/utils.py -> 56: loginuser() :: INFO] -> Session file exists for user, attempting to use it 'fgeo@_.' [2023-05-29 22:46:35,414 :: utils :: utils/utils.py -> 72: loginuser() :: ERROR] -> Failed logging in user 'fgeo@*.', unexpected error ! [2023-05-29 22:46:35,417 :: gui.main_ui :: gui/mainui.py -> 399:__generate_users_table() :: INFO] -> Accounts table was populated !

And I don't know how to add images here, but the user tables shows "LoginERROR" on the "Account type" column

Can you try deleting your existing config, login again and see if the issue persists ?

FGAC1226 commented 1 year ago

I don't know exactly what you mean by deleting my config, as far as I know the only config options are on the app itself, and I've changed none. I tried to remove the user from the list and add it back again, but the issue is the same. For context, it's my first time using this, the problem occured on the first try. Also, I'm on Fedora 38 if that helps, using the ffm version.

casualsnek commented 1 year ago

I don't know exactly what you mean by deleting my config, as far as I know the only config options are on the app itself, and I've changed none. I tried to remove the user from the list and add it back again, but the issue is the same. For context, it's my first time using this, the problem occured on the first try. Also, I'm on Fedora 38 if that helps, using the ffm version.

https://drive.google.com/drive/folders/1H0DAzJQY8wHpKpmEms9bjs824OJdaGiR

Can you try the binaries from the link ! It wont't fix the issue right now but will provide better logs if the login fails according to which i can work on a fix !

Georgiou1226 commented 1 year ago

From executing "2023.6.4.03.25.onthespot_linux_ffm":

OTS Version : 0.5 Config version: 0.5 FFMPEG found in package ! Using ffmpeg binary at: /tmp/_MEItswjnN/onthespot/bin/ffmpeg/ffmpeg [2023-06-28 22:23:05,487 :: init :: init.py -> 11: main() :: INFO] -> Starting application in 3 2 1 Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway. [2023-06-28 22:23:05,702 :: gui.main_ui :: gui/mainui.py -> 86: init() :: INFO] -> Initialising main window, logging session : 68d295e4-0f80-4d10-98a7-87f1c13e2fd5 [2023-06-28 22:23:05,722 :: gui.main_ui :: gui/mainui.py -> 102: init() :: INFO] -> Loading configurations.. [2023-06-28 22:23:05,723 :: gui.main_ui :: gui/mainui.py -> 192: m3u_maker_set() :: INFO] -> Playlist generator watcher set clicked [2023-06-28 22:23:05,723 :: gui.main_ui :: gui/mainui.py -> 195: __m3u_maker_set() :: INFO] -> Starting media watcher thread, no active watcher [2023-06-28 22:23:05,723 :: gui.main_ui :: gui/mainui.py -> 205: m3u_maker_set() :: INFO] -> Playlist thread started [2023-06-28 22:23:05,723 :: gui.main_ui :: gui/mainui.py -> 474: fill_configs() :: INFO] -> Config filled to UI [2023-06-28 22:23:05,724 :: gui.main_ui :: gui/mainui.py -> 114: init() :: INFO] -> Preparing session loader [2023-06-28 22:23:05,724 :: worker.utility :: worker/utility.py -> 22: run() :: INFO] -> Playlist m3u8 builder is running.... [2023-06-28 22:23:05,724 :: gui.main_ui :: gui/mainui.py -> 126: init() :: INFO] -> Preparing parsing queue processor [2023-06-28 22:23:05,724 :: worker.session :: worker/session.py -> 17: run() :: INFO] -> Session loader has started ! [2023-06-28 22:23:05,724 :: worker.session :: worker/session.py -> 23: run() :: INFO] -> Trying to create session for fgeo [2023-06-28 22:23:05,725 :: gui.main_ui :: gui/mainui.py -> 170: set_table_props() :: INFO] -> Setting table item properties [2023-06-28 22:23:05,725 :: worker.utility :: worker/utility.py -> 90: run() :: INFO] -> Parsing queue processor is active ! [2023-06-28 22:23:05,725 :: gui.main_ui :: gui/mainui.py -> 141: init() :: INFO] -> Main window init completed ! [2023-06-28 22:23:05,725 :: worker.utility :: worker/utility.py -> 92: run() :: INFO] -> Waiting for new item to parse Gtk-Message: 22:23:05.775: Failed to load module "canberra-gtk-module" [2023-06-28 22:23:05,925 :: utils :: utils/utils.py -> 51: login_user() :: INFO] -> logging in user 'fgeo@.*' [2023-06-28 22:23:05,925 :: utils :: utils/utils.py -> 57: login_user() :: INFO] -> Session file exists for user, attempting to use it 'fgeo@.*' [2023-06-28 22:23:06,028 :: utils :: utils/utils.py -> 73: login_user() :: ERROR] -> Failed logging in user 'fgeo@.***', unexpected error ! : HTTPSConnectionPool(host='apresolve.spotify.com', port=443): Max retries exceeded with url: /?type=accesspoint (Caused by SSLError(SSLError(0, 'unknown error (_ssl.c:3093)'))); Traceback (most recent call last): File "urllib3/connectionpool.py", line 467, in _make_request File "urllib3/connectionpool.py", line 1092, in _validate_conn File "urllib3/connection.py", line 635, in connect File "urllib3/connection.py", line 728, in _ssl_wrap_socket_and_matchhostname File "urllib3/util/ssl.py", line 277, in create_urllib3_context File "ssl.py", line 500, in new__ ssl.SSLError: unknown error (_ssl.c:3093)

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "urllib3/connectionpool.py", line 790, in urlopen File "urllib3/connectionpool.py", line 491, in _make_request urllib3.exceptions.SSLError: unknown error (_ssl.c:3093)

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "requests/adapters.py", line 486, in send File "urllib3/connectionpool.py", line 844, in urlopen File "urllib3/util/retry.py", line 515, in increment urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='apresolve.spotify.com', port=443): Max retries exceeded with url: /?type=accesspoint (Caused by SSLError(SSLError(0, 'unknown error (_ssl.c:3093)')))

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "utils/utils.py", line 65, in login_user File "librespot/core.py", line 1284, in create File "librespot/core.py", line 277, in get_random_accesspoint File "librespot/core.py", line 246, in get_random_of File "librespot/core.py", line 233, in request File "requests/api.py", line 73, in get File "requests/api.py", line 59, in request File "requests/sessions.py", line 587, in request File "requests/sessions.py", line 701, in send File "requests/adapters.py", line 517, in send requests.exceptions.SSLError: HTTPSConnectionPool(host='apresolve.spotify.com', port=443): Max retries exceeded with url: /?type=accesspoint (Caused by SSLError(SSLError(0, 'unknown error (_ssl.c:3093)')))

[2023-06-28 22:23:06,029 :: gui.main_ui :: gui/mainui.py -> 399:__generate_users_table() :: INFO] -> Accounts table was populated !

Georgiou1226 commented 1 year ago

And sorry for the wait. On an unrelated note, do you have plans to "port" this to Gtk? I was interested in learning development in that toolkit, and would probably be able to help (as soon as I learn how, at least)

casualsnek commented 1 year ago

And sorry for the wait. On an unrelated note, do you have plans to "port" this to Gtk? I was interested in learning development in that toolkit, and would probably be able to help (as soon as I learn how, at least)

Do you have any VPN or proxy active ? Seems like some SSL related error !

For the GTK port, i am working on some rewrite to the onthespot. It will allow easy development of other frontends more easily ( I will mainly work on commandline and qt frontends ). After the rewrite is complete you can try writing a GTK based frontend for it ;)

Georgiou1226 commented 1 year ago

Since I am using fedora silverblue, and it doesn't come with openssl out of the box, i installed it with rpm-ostree install openssl and that's probably the source of the issue. However, login in every time isn't such a big problem, so I don't think I will be looking much more into it.

On another note, this problem doesn't happen when i use a version i built using the build_for_linux.sh file (found out when i was testing to add a feature [it's on a pull request now]).

casualsnek commented 12 months ago

On another note, this problem doesn't happen when i use a version i built using the build_for_linux.sh file (found out when i was testing to add a feature [it's on a pull request now]).

Maybe that was due to some libraries from by build being incompatible with your system libraries ? Considering the build from me are done on latest archlinux system !