diff options
-rw-r--r-- | README.txt | 8 | ||||
-rw-r--r-- | TODOS.org | 81 | ||||
-rw-r--r-- | manifest.json | 2 |
3 files changed, 8 insertions, 83 deletions
@@ -8,7 +8,7 @@ without executing nonfree software. Currently, the target browsers for this extension are Ungoogled Chromium and various forks of Firefox (version 60+). -This extension is still in an early stage. See TODOS.org. Also see +This extension is still in an early stage. Also see `https://git.koszko.org/browser-extension-doc/' for documentation in development. @@ -25,3 +25,9 @@ All copyright information is gathered in the `copyright' file which follows In general, this entire extension is available under the terms of GPLv3+ with various additional licenses and permissions for particular files. + +## Contributing ## +Get the code from: https://git.koszko.org/browser-extension/ +Come to: https://hachettebugs.koszko.org/projects/hachette + +Optionally, write to $(echo a29zemtvQGtvc3prby5vcmcK | base64 -d) diff --git a/TODOS.org b/TODOS.org deleted file mode 100644 index 3db947a..0000000 --- a/TODOS.org +++ /dev/null @@ -1,81 +0,0 @@ -TODO: -- parallelize fetching of remote scripts -- allow specifying whether a script occurring mutiple times directly - or indirectly in a bag should be included multiple times or once -- make it possible to provide backup urls for remote scripts -- make it possible to cache remote scripts -- optimize url querying -- make it possible to automatically download page's served scripts and save them (of course, this by itself -- CRUCIAL - would give little benefit, but it will make it easy to modify this set of scripts - useful, if some of - those scripts are already free, as is often the case) - - also, find some convenient way to automatically re-add "on" events ("onclick" & friends) -- add some good, sane error handling -- get rid of those warnings and exceptions in console (many are not even related to this extension; - who invented this thing?) (gecko-only) -- make page settings easily and conveniently editable in popup -- CRUCIAL - - in popup make it possible to edit both main frame page's - settings and settings for pages that currently happen to - live in iframes -- add some nice styling to settings page -- make script bag components re-orderable (via drag&drop in options page) -- CRUCIAL -- find some way not to require each chrome user to modify manifest.json -- test with more browser forks (Abrowser, Parabola IceWeasel, LibreWolf) -- make sure page's own csp in <head> doesn't block our scripts -- create a repository to host scripts - - enable the extension to automatically fetch script substitutes from the repo -- make it possible to inject scripts to arbitrary places in DOM - - make script blocking code omit those scripts -- check if prerendering has to be blocked -- CRUCIAL -- block prefetch -- rearrange files in extension -- supplement the build script with a makefile, also produce zipped arifacts -- perform never-ending refactoring of already-written code -- also implement support for whitelisting of non-https urls -- validate data entered in settings -- stop always using the same script nonce on given https(s) site (this - improvement seems to be unachievable in case of other protocols) -- besides blocking scripts through csp, also block connections that needlessly - fetch those scripts -- make extension's all html files proper XHTML -- split options_main.js into several smaller files -- validate settings data on import -- rename the extension to something good - - find some good hatchet icon and rename the extension to "Hachette" - (unless someone suggests another good name before we do so) -- add an option to disable script blocking globally -- Add support to settings_query for non-standard URLs - (e.g. file:// and ftp://) -- Process HTML files in data: URLs instead of just blocking them -- improve CSP injection for pathological cases like <script> before <head> - -DONE: -- Fix FF script whitelisting (FF seems to be by itself repeatedly -- DONE 2021-06-30 - injecting CSP headers that were injected once, this made it impossible to - whielist site that was unwhitelisted before) -- find out if we can successfully use CSP to block file:// under FF -- DONE 2021-06-30 -- come up with own simple DSL to manage imports/exports -- DONE 2021-06-30 -- add some mechanism to build the extension -- DONE 2021-06-30 -- see if browsers based on pre-quantum FF support enough of -- DONE 2021-06-29 - WebExtensions for easy porting (no, those we know dropped the support) -- make blocking more thorough -- DONE 2021-06-28 - - mind the data: urls -- CRUCIAL -- employ copyright file in Debian format -- DONE 2021-06-25 -- find out what causes storage sometimes not to get initialized under IceCat 60 -- DONE 2021-06-23 -- make it possible to export page settings in some format -- DONE 2021-06-19 -- make it possible to use wildcard urls in settings -- DONE 2021-05-14 -- port to gecko-based browsers -- DONE 2021-05-13 -- find a way to additionally block all other scripts using CSP -- DONE 2021-05-13 -- only allow a single injection payload for page -- DONE 2021-05-13 -- rename "bundles" to "bags" to avoid confusion with Web Bundles -- DONE 2021-05-12 -- use non-predictable value in place of "myext-allow", utilizing hashes -- DONE 2021-05-12 -- stop using modules (not available on all browsers) -- DONE 2021-05-12 -- clean up the remnants of LibreJS -- DONE 2021-05-12 -- implement whitelisting -- DONE 2021-05-07 -- find way to also block scripts in non-http pages (e.g. file://) -- DONE 2021-05-07 (via content scripts, may not be perfect) - (NoScript seems to be doing this through CSP) -- make page settings easily and conveniently editable in a separate window/tab -- DONE 2021-05-05 -- replace comparisons with stricter ones (e.g. do `if(foo === undefined)` instead of `if(!foo)`) -- DONE -- make local storage safe (serialize storage accesses in background script) -- DONE -- split main.js into multiple files -- DONE 2021-01-05 -- make it possible to store entire script files in storage (not just links) -- DONE 2021-01-05 - - make it possible to re-use the same script or set of scripts multiple times -- DONE 2021-01-05 diff --git a/manifest.json b/manifest.json index ab74523..20568a0 100644 --- a/manifest.json +++ b/manifest.json @@ -4,7 +4,7 @@ "manifest_version": 2, "name": "My extension", "short_name": "Myext", - "version": "0.0.0",_CHROMIUM_KEY_ + "version": "0.0.1",_CHROMIUM_KEY_ "author": "various", "description": "Kill the web&js",_GECKO_APPLICATIONS_ "icons":{ |