KevinPayravi / indie-wiki-buddy

Browser extension that automatically notifies and redirects you to independent wikis.
https://getindie.wiki
MIT License
291 stars 79 forks source link

The extension is asking for too many permissions #575

Closed Tiagoquix closed 5 months ago

Tiagoquix commented 8 months ago

Hello.

In Firefox, there are two types of permissions: those required for the extension's core functionality and additional ones for additional features (such as, in the case of this extension, for example, search engine filtering).

The extension, in its current form, requires the same permissions for both "core functionality" and "added functionality", causing an abundance of unnecessary permissions for its normal functioning.

The "core functionality" permissions should only be related to the redirecting itself. I don't know much about extensions, but I believe redirecting doesn't require any permissions whatosever.

I feel that the extension is deviating from its original intention by adding new features unnecessarily and becoming too much bloated.

Some examples of unnecessary things for the extension: https://github.com/KevinPayravi/indie-wiki-buddy/issues/384 (fun stats are completely unnecessary; they can't be used for troubleshooting purposes) https://github.com/KevinPayravi/indie-wiki-buddy/issues/383 (setting a header is unnecessary; besides that, it makes the user more identifiable to the BreezeWiki instance)

I think the extension should focus on minimalism instead of scaring users with new permission requests with each update.

I would like to thank you for this extension because thanks to it I discovered sites that I didn't even know existed. I'm grateful for the help offered by the extension, but here are my criticisms.

Thank you for reading this far.

KevinPayravi commented 8 months ago

Hi @Tiagoquix - I appreciate the concerns.

I believe redirecting doesn't require any permissions whatosever.

Redirecting certainly does require permissions, because redirecting requires Indie Wiki Buddy to know which sites you're visiting. Redirection requires access to the domains that are being redirected (for IWB, that's fandom.com, wiki.fextralife.com, and neoseeker.com). It also requires access to a permission that provides which page the user is on (webRequest, webNavigation, tabs, etc. -- in IWB's case, we use webRequest).

additional features (such as, in the case of this extension, for example, search engine filtering)

Search engine filtering has been in IWB since the beginning and I consider it a core feature. Not just for user experience, but because not filtering search engines can actively harm independent wikis. Without filtering, users will click Fandom/Fextra/Neoseeker results expecting to be redirected, but that sends positive click data to Google, harming the ability of the independent wiki to rank well.

That being said, IWB certainly doesn't need access to all 10 search engines for every user, so I agree that we should make search engines toggleable and opt-in (with perhaps a few of the most popular search engines enabled by default). I've opened a new issue for this: https://github.com/KevinPayravi/indie-wiki-buddy/issues/576

fun stats are completely unnecessary; they can't be used for troubleshooting purposes

Fun stats have also been there since the beginning. They don't require any additional permissions and the numbers are stored in your browser. They're not sent anywhere.

setting a header is unnecessary; besides that, it makes the user more identifiable to the BreezeWiki instance

I heard those concerns and the BreezeWiki header has actually already removed in v3.4.0, see https://github.com/KevinPayravi/indie-wiki-buddy/issues/393#issuecomment-1876744860 for more details.


Regarding the 3.6.0 update that requested new permissions, I can summarize what those accesses were:

Tiagoquix commented 8 months ago

Hello! Thank you so much for your answer.

I'm glad you considered the search engine filter as an opt-in to reduce the number of permissions.

Also thanks for explaining the rest of the things.

Have a great day!

KevinPayravi commented 8 months ago

Sure thing - thanks for sharing your concerns!