Ability to remotely disable broken features
See original GitHub issueCrazy idea, but occasionally we have very breaking bugs that cause frustration: https://github.com/sindresorhus/refined-github/issues/3527 https://github.com/sindresorhus/refined-github/issues/2357 https://github.com/sindresorhus/refined-github/issues/1805 https://github.com/sindresorhus/refined-github/pull/1148 https://github.com/sindresorhus/refined-github/issues/2700 etc
These are often fixed quickly, but users have to suffer it until the browser updates the extension, which could be a day later.
We could have a mechanism that pings this repo to check whether a feature should be temporarily disabled. For example inside globalReady
const options = await optionsStorage.getAll();
const hotfix = await cache.get('hotfix');
fetchHotfixesAsynchronously(); // `cache.function` to be run up to ~4 times a day?
Object.assign(options, hotfix);
fetchHotfixesAsynchronously
could fetch the content of a dedicated, locked issue with a content like:
false
or
{"cleanup-repo-filelist-actions": false, "unaffected": "20.9.4"}
fetchHotfixesAsynchronously
would use looseVersionCompare
to compare unaffected
with the current version and either store {'cleanup-repo-filelist-actions': false}
or {}
accordingly.
Notes
Performance: up to 4 fetches a day should make it lightweight enough
Privacy: it would only fetch public content on GitHub, only if you open GitHub
Security: it would only GET
JSON content from api.github.com, it doesn’t POST
anything
Issue Analytics
- State:
- Created 3 years ago
- Reactions:6
- Comments:16 (16 by maintainers)
Top GitHub Comments
I have not developed on a WebExtension before, but I’m willing to try. Is this ‘good-first’ enough for a person like me?
Sorry about that! It’s my own module and I even forgot how I named it 😅
Everything else is about right. I wrote that code in the comment box to explain clearly what I had in mind; expect typos and subtle exceptions because I didn’t run it.