cavi-au / Consent-O-Matic

Browser extension that automatically fills out cookie popups based on your preferences
Other
2.53k stars 123 forks source link

URGENT: iOS app stopped working altogether #461

Open plasmidone opened 1 week ago

plasmidone commented 1 week ago

The iOS app simply stopped working for no reason. I'm not the only one, multiple reviews saying the same thing in the AppStore. It's been like that for over a week yet there's no mention of this sudden major dysfunction in this GitHub "Issues" page... Please someone look into this and help fix it. Thanks! IMG_8077

Tumleren commented 1 week ago

Same experience for me - after the latest update, the app has mostly or completely stopped working. iOS 17.5.1, app v. 1.1.0

svnhub commented 1 week ago

after the latest update

Latest update of iOS or latest update of Consent-o-matic? It seems they fixed something in 17.6 Beta that could be related to CoM, so maybe a bug was introduced in 17.5.1...

svnhub commented 1 week ago

Just re-tested it on an iPad with iOS 17.5.1 where it works fine - so this may specifically be a mobile-only bug? Are you all experiencing this on mobile?

plasmidone commented 1 week ago

I think the issue comes from Consent-o-matic. I had not updated iOS for a while when it stopped working and the timing of it not working anymore coincides with the update released 2 weeks ago in the App Store (version 1.1.0). I have since updated iOS to the latest update but that did not help.

Tumleren commented 1 week ago

Just re-tested it on an iPad with iOS 17.5.1 where it works fine - so this may specifically be a mobile-only bug? Are you all experiencing this on mobile?

Yes, I forgot to include in the comment. iPhone 12, iOS 17.5.1, no other Safari extensions besides CoM v1.1.0. Worked fine prior to the 1.1.0 update

svnhub commented 1 week ago

I have managed to reproduce this error on iPad and it is also present in iOS 17.6. It is related to fetching/updating rules from Github.

A mobile that already has fetched the rules works fine.

svnhub commented 1 week ago

The extension consists of two parts - the frontend/page part that runs whenever you visit a page and the background script (or service-worker) which is responsible for utility functions like fetching updates to rules etc. It looks like something is basically terminating the background script after a little while on iOS and then never starting it up again even when we try to send messages to it.

Gathering some resources from other people with similar issues:

We just tested on iOS 17.6 and iPadOS 17.6 and it still gets killed on both of those and doesn't start back up when navigating.

svnhub commented 1 week ago

Even if subscribing to other events that will restart the service worker (such as tabs changing), it still doesn't allow the content script to get answers to sendMessage calls. This makes it extremely hard to work-around this bug in any way.

plasmidone commented 1 week ago

Just to clarify in case it helps, if I disable the extension in the Safari settings of iOS and re-enable it, it works again temporarily for a very short time (possibly for one tab only). It then stops completely and never comes back unless the extension is disabled and re-enabled.

A mobile that already has fetched the rules works fine.

My iPhone had fetched the rules from the extension and was previously working fine with those rules for months. I'm not sure I fully understand how the fetching of the rules works though. Does the whole rules dataset get erased periodically and my extension currently doesn't have any rules anymore since the 1.1.0 update 2 weeks ago?

svnhub commented 6 days ago

There is no fix yet but we may have stumbled upon a temporary hack that is being pushed into testing right now, it is ugly but if it works it is better than nothing. It will require upgrading our build system to handle multiple manifest files.

Also opened a thread about the issue on Apple's support forum: https://forums.developer.apple.com/forums/thread/758346

plasmidone commented 6 days ago

Is it not possible to roll back the previous iOS version of consent-o-matic which seemed to be working ok? At least until the bug is fixed and a new update is released?

svnhub commented 6 days ago

Please try out version 1.1.1 that was released about 47 minutes ago on the app-store

Tumleren commented 5 days ago

Having tried about a dozen different sites over maybe 15 minutes, v1.1.1 so far seems to be working, and faster than before. iPhone 12, iOS 17.5.1