aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWojtek Kosior <koszko@koszko.org>2021-07-01 17:12:26 +0200
committerWojtek Kosior <koszko@koszko.org>2021-07-01 17:12:26 +0200
commit008efedd2d7e565cc1fb758ac228d9eddbc4cc80 (patch)
treef28f3551e8b002c38b3b9b2c352fb59e33c49256
parent12fd4fc3a01eb9718a60c8d04860c4e797049b26 (diff)
downloadbrowser-extension-008efedd2d7e565cc1fb758ac228d9eddbc4cc80.tar.gz
browser-extension-008efedd2d7e565cc1fb758ac228d9eddbc4cc80.zip
Employ issue tracker
-rw-r--r--README.txt8
-rw-r--r--TODOS.org81
-rw-r--r--manifest.json2
3 files changed, 8 insertions, 83 deletions
diff --git a/README.txt b/README.txt
index 1342ca4..94373a9 100644
--- a/README.txt
+++ b/README.txt
@@ -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":{