pvrs12 / Anesidora

Anesidora - Pandora extension for Firefox
Other
31 stars 8 forks source link

Unresponsive in Chrome #68

Closed gjanes closed 3 years ago

gjanes commented 3 years ago

I went to use the Chrome plugin today, like I do many days, and it was unresponsive. I noticed it mentioned it was the 2.0 version of the plugin, which I hadn't noticed before. Nothing would respond, player controls, or after closing the player, then the player wouldn't even open/close from the plugin icon in the plugin bar. I tried removing the plugin to clear data and install it again, but now cannot locate the plugin in the Chrome store either. Has this plugin been abandoned?

pvrs12 commented 3 years ago

It’s not longer listed on the chrome store due to a DMCA takedown request from Pandora. You can still use it locally by loading the extension manually into chrome


From: gjanes @.> Sent: Thursday, May 13, 2021 12:49:48 PM To: pvrs12/Anesidora @.> Cc: Subscribed @.***> Subject: [pvrs12/Anesidora] Unresponsive in Chrome (#68)

I went to use the Chrome plugin today, like I do many days, and it was unresponsive. I noticed it mentioned it was the 2.0 version of the plugin, which I hadn't noticed before. Nothing would respond, player controls, or after closing the player, then the player wouldn't even open/close from the plugin icon in the plugin bar. I tried removing the plugin to clear data and install it again, but now cannot locate the plugin in the Chrome store either. Has this plugin been abandoned?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/pvrs12/Anesidora/issues/68, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABVCK4OFUXULIH7G6FOKGFTTNP7KZANCNFSM4424FPMA.

DarkAlchy commented 3 years ago

Something just broke in the last few days and the program just will not work now in Chrome.

https://user-images.githubusercontent.com/10561690/118917308-2b214b80-b8f6-11eb-9466-62c9087b8242.png

pvrs12 commented 3 years ago

67

pvrs12 commented 3 years ago

Looks like this is a separate issue from the other, or at least has a different fix. I'll put some time into this tomorrow likely

hucario commented 3 years ago

Something just broke in the last few days and the program just will not work now in Chrome.

https://user-images.githubusercontent.com/10561690/118917308-2b214b80-b8f6-11eb-9466-62c9087b8242.png

That error isn't relevant- it's just a warning about jQuery using xmlhttprequest. I don't know about anything else, but that error is standard.

DarkAlchy commented 3 years ago

Seems a bit odd that it isn't relevant, but is this being used xmlhttprequest in the addon, or is this error within the jQuery itself meaning Chrome needs an update? Seems Chrome is telling me the addon is the culprit (but it could be that the addon calls that jQuery which is the broken culrit from Google).

hucario commented 3 years ago

It's not even really an error- it's a warning saying "Hey, this'll be an issue in the future. You may want to switch away from this." Chrome doesn't need an update.

DarkAlchy commented 3 years ago

I am old school, and damn anal, about warnings as I consider a warning to actually be an error...if not right this second give it a minute then hell breaks loose.

I didn't mean Chrome needed to be updated I mean't the error/warning is in their browser, right? I take it that the deprecation is of that command so in a minute that command could be, or will be, removed then the addon will no longer work?

pvrs12 commented 3 years ago

@DarkAlchy The warning you posted is present within Anesidora (and JQuery), but there are 2 things which have prevented me from attempting to fix it:

  1. It requires a pretty big code restructuring. While "fixing" the error is a single line (https://github.com/pvrs12/Anesidora/blob/master/common/js/anesidora.js#L86), in order to avoid race conditions.
  2. It's pretty unlikely for Chrome to "remove" the deprecated functionality since it will undoubtedly break a number of older sites and extensions.

All that being said, as @hucario mentioned, this is not related to the issue at hand.

Based on what I learned from #67, this is related to the User-Agent header being passed to the API. Prior to version 2.0.1, the User-Agent being sent was the browser's default. Pandora apparently started blocking access to this API (the JSON API) when requested from a browser's User-Agent. In order to fix on Firefox this I was able to change the header (https://github.com/pvrs12/Anesidora/blob/master/common/js/anesidora.js#L93). Unfortunately this fix doesn't work on Chrome (https://github.com/pvrs12/Anesidora/issues/67#issuecomment-845519684).

Right now we're trying to come up with some solutions for Chrome.

pvrs12 commented 3 years ago

One option seems to be hooking onBeforeSendHeaders() for Chrome https://developer.chrome.com/docs/extensions/reference/webRequest/

hucario commented 3 years ago

Yep, I'm using Brave too. Looking into hooking onBeforeSendHeaders()

DarkAlchy commented 3 years ago

Never underestimate Google to not care and break everything on a whim.

I will say this I am not using Chrome I am using Brave which is a Chromium based browser, so this change has "infected" even Chromium.

I left Mozilla because they removed De-mainstream the add-on. The author told me they broke it then would not allow it to work even if I "side loaded" it. I had enough as the Mozilla I had used since Netscape passed in 2005 was dead (I knew it had died when they went after Dissenter the Gab addon for free speech), but now it would seem that they (they as in all browsers) are all breaking stuff to stuff us all in a box. Play by their rules or simply don't play.

lovelydumpling commented 3 years ago

Version 2.1.2 working in Brave! Thanks a billion~

Edit: Whoops, nevermind. As of this morning it won't play music anymore. Just in Chrome, Firefox (v2.1) still working fine.

Edit 2: Firefox also broke. It seems after an hour or two, both will stop playing songs. Restarting the browser will allow them to play songs again.

hucario commented 3 years ago

That's very odd.

Well, I guess it's time for me to listen to anesidora for two hours to try to reproduce this. What a shame, I hate listening to music 😤

lovelydumpling commented 3 years ago

Sorry, I tend to listen to music for all-nighters due to my sleep habits, or occasionally when reading books/comics/manga. I've only produced it twice, once each. One with Brave overnight, the other with Firefox while reading manga. It seems at least if I'm not listening through such a long stretch, I can stop and start it up just fine. Makes me wonder if Pandora's original "Are you still listening?" behavior has anything to do with it.

Er, anyway, I'm off to bed again so I'll reply or edit this post in the morning whether it happened again on Brave.

EDIT: Yep sure enough as of this morning its broken again. So it does seem to be reproduceable on my end.

hucario commented 3 years ago

The only thing I can think of is the callback arrays being a memory leak (whenever you re/open a popup, it adds a function to each array and if you open and close it a bunch it could be a leak? Maybe?) which would lag the player a ton. How does it stop working? Does it hang or crash?

Lyude7 commented 3 years ago

Hi - I am new to manually adding an extension to Chrome...but I really like this extension and want to keep using it. I downloaded the code for the Chrome version, and loaded it unpacked but it still had errors, am I going about this wrong?

hucario commented 3 years ago

Probably. You want to download this file: https://github.com/pvrs12/Anesidora/releases/download/v2.1.2/anesidora__chrome.zip and without unzipping it, drag it onto about:extensions.

Video (might look a different, as I'm using a slightly different version of Chrome):

https://user-images.githubusercontent.com/50851047/119736031-02d3a880-be32-11eb-8f94-c435f1a39cfe.mp4

pvrs12 commented 3 years ago

Thanks everyone for your reports and patience trough this. It looks like the reported issue here has been fixed in the most recent version and the only outstanding issue is #76.

I'm going to close this down to prevent it from going off-topic.

If anyone has any other issues feel free to open a new one

Lyude7 commented 3 years ago

Probably. You want to download this file: https://github.com/pvrs12/Anesidora/releases/download/v2.1.2/anesidora__chrome.zip and without unzipping it, drag it onto about:extensions.

Video (might look a different, as I'm using a slightly different version of Chrome):

2021-05-26.14-51-37.mp4

Thanks so much, worked like a charm! : )