newfolder0 / chrome-clacks

Chrome extension to show "X-Clacks-Overhead" http response headers if present.
MIT License
47 stars 15 forks source link

This extension may soon no longer be supported because it doesn't follow best practices for Chrome extensions. #14

Closed Grumtastic closed 1 week ago

Grumtastic commented 1 month ago

I've just seen this message: This extension may soon no longer be supported because it doesn't follow best practices for Chrome extensions.

Will the extension be updated to reflect the new terms, or is this a dead extension?

newfolder0 commented 1 month ago

Depends. I haven't written software for many years and this is the only browser extension I ever made, so it would take me some time to even read up on the current best practice before implementing it.

If you or anyone else is willing to make the required changes and submit a pull request, I'll absolutely make time to review it and respond (hopefully accept it) within a few days or maybe a week.

Otherwise, I would love to find time for this and I would not rule it out... but currently my priority list is quite full ;).

newfolder0 commented 1 month ago

But in any case, thanks for the heads-up - I was not aware of the policy changes and now it's on my radar!

It would be a shame to let this extension die. Even though I don't even use Chrome any more, it holds a warm place in my heart. Just this morning I was listening to an audiobook of Sourcery, Terry's work lives on and it is a pleasure to be part of the Clacks project!

Grumtastic commented 1 month ago

You are welcome. Sorry, I don't have the kind of coding skills to make an extension.. I wouldn't know where to start. Perhaps someone else reading this can step up to the plate?

hmk commented 1 month ago

@Grumtastic - this should fix it. 🤞

Grumtastic commented 1 month ago

I'm still getting the message. How do I install it?

hmk commented 1 month ago

@newfolder0 - mind merging the PR?

@Grumtastic - this needs to be merged so the store can update. If that's not done - at some point I will put up a new version of the extension. But I would prefer to not split from the main repo here if we can avoid it.

newfolder0 commented 1 month ago

I've reopened this because the Chrome Web Store hasn't yet accepted the updated package.

Summary: Google are a pain in the arse.

newfolder0 commented 1 month ago

@Grumtastic, the update process is as follows:

  1. A pull request is made here on github (thank you very much @hmk !).
  2. I review the code and approve the pull request, merging it into the main branch.
  3. I download the code and package it as a .zip.
  4. I log into the Chrome Web Store Developer Dashboard and upload the new .zip.
  5. We wait for Google to review it and publish it to everyone who has installed it in their browsers.

Up until now, there hasn't been any way to automate the connection from github repository to publishing on the Chrome Web Store. This is what I was talking about in point 3 above - anyone who installs it from the web store is trusting me that I am not adding some code to steal your passwords or personal data or whatever after downloading from Github but before uploading to the Chrome Web Store.

If you don't want to wait, it is possible to install the Chrome extension manually by downloading the /src directory from this Github repo, creating a .zip file containing everything in that directory, then dragging the .zip into the chrome://extensions/ configuration page in Chrome. This means you don't have to wait for me to publish it and Google to review it, and it has the security advantage that you know exactly what code you are installing. The downsides are that you will not get automatic updates and you won't be included in the Web Store statistics (user numbers etc).

Grumtastic commented 1 month ago

I want to be counted in the stats as using it as this helps people decide to install it, so I'm happy to wait. Thank you for all your hard work :)

hmk commented 1 month ago

@newfolder0 it looks like there is a way to verify by opening up the installed extension... but what a nightmare. Auto-sync and verify if open source seems like a big win for any web store.

Thanks for the merge and update! May Terry Pratchett's name continue to live on in the Clacks.

newfolder0 commented 3 weeks ago

The Chrome Web Store has asked for justification for the "activeTab" and "tab" permissions. I'll type something now and resubmit, hope it works. If they don't accept my justifications I might ask you to write something more detailed, @hmk ? Sorry, it's been a while so my submission will be slightly vague.

image

newfolder0 commented 3 weeks ago

Rejected by the web store for "tabs" permission in the manifest - seems to be unneeded. I've removed it and re-submitted.

hmk commented 3 weeks ago

Based on here: https://developer.chrome.com/docs/extensions/reference/api/tabs

It does seem we don't need it. Short of wanting to pass info between tabs (to repeat maybe all the things clacking that are open?) I don't think we need it. And I am all for reducing the permissions we need / keeping this as small in scope as possible.

newfolder0 commented 3 weeks ago

Aaaaand rejected again. This is becoming ridiculous. If only they would bloody well tell me everything at the first instance. This time for "SPAM: too many keywords in the description".

image

To be honest this it invalid because there is not any keyword spamming in the store description, but it's Google we're dealing with so there's no right of reply and all we can do is try to bend to fit their rules.

I'll cut it down to bare bones and resubmit. Old description (rejected) was as follows:

NOTE: This extension does not collect any data or send any information anywhere. See paragraph 1 at the bottom of this description regarding required permissions.

To quote the twitter account of the great man himself: "AT LAST, SIR TERRY, WE MUST WALK TOGETHER." Terry took Death's arm and followed him through the doors and on to the black desert under the endless night.

See here: http://www.gnuterrypratchett.com/ Github: https://github.com/newfolder0/chrome-clacks

Contributors: -Peter Bell (original author) -Charlie Wheeler-Robinson (bug hunting, refactoring, improving in early versions) -Jimmy Nyström (code) -Melanie Wilberforce (icons) -Rob Grundy (who made the Firefox extension) for sending me the clacks icons used in the animation -Backspindle Games for producing the clacks icons in the animation -Sap1ens, jwakely, and Amy Atha-Nicholls (generously offering new icons) -yousuf811 on Github (squashing bugs) -Jarek Glowacki for some CSS help -See GitHub issues and pull requests for others

A big thank you to all of the lovely people who sent new icons (listed above)!

The Chrome Developer Dashboard sucks and doesn't notify me of feedback - I try to keep an eye on it but if I don't reply, email me (devpete0@gmail.com). I take no responsibility for any impact on browser performance as a result of this extension, though I believe it should be negligible. I use this extension myself and am completely open to suggestions or improvements.

I don't know anything about licences so I'm including one offered by Github just in case because it seems pretty reasonable. This is a simple extension and a tribute to Terry Pratchett so I'm not really worried what you do with it.

For reference, the old description was as follows:

Note 1: There are people complaining about the permissions required. That's fair enough, I would be too. The latest updates need 'webNavigation' permissions for reading the HTML meta tags (a feature which a lot of people were asking for). That is what requires access to web page content. The original permissions required by older versions were for webRequest, which is necessary for the basic HTTP header interception. As far as I know, there isn't a better way of doing it. If you are still concerned I suggest downloading it directly from Github (link above) so you know exactly what you are getting, you just won't get automatic updates. I wish there was a way to transparently publish directly from the public version on Github but as far as I know, the only way is to upload zip files myself. There is no way I can guarantee I haven't changed anything in between.

hmk commented 3 weeks ago

third(?) time's the charm!

newfolder0 commented 3 weeks ago

Woohoo, looks like we finally have success! It's been accepted and published on the Chrome Web Store.

I've checked on my side and it's been updated automatically, no more warning messages and it seems to work as intended. @hmk and @Grumtastic could you please confirm that it has been updated on your side, then I'll close the ticket?

Thanks again @hmk for your help and everyone else for your patience :).

Grumtastic commented 3 weeks ago

@newfolder0 I Can confirm the extension has been updated and the message has gone! Well done everyone :) and thank you x

hmk commented 3 weeks ago

Amazing!

On Sat, Oct 26 2024 at 7:12 AM, Graham < @.*** > wrote:

@newfolder0 ( https://github.com/newfolder0 ) I Can confirm the extension has been updated and the message has gone! Well done everyone :) and thank you x

— Reply to this email directly, view it on GitHub ( https://github.com/newfolder0/chrome-clacks/issues/14#issuecomment-2439555143 ) , or unsubscribe ( https://github.com/notifications/unsubscribe-auth/AAFYSPNIYI2244L7LWD747TZ5OBJTAVCNFSM6AAAAABO7XE6P2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZZGU2TKMJUGM ). You are receiving this because you were mentioned. Message ID: <newfolder0/chrome-clacks/issues/14/2439555143 @ github. com>