X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=TODO;h=b22a73a7064f05fa6247b9efe98721fed405eb87;hp=20b84086f2d68ac7d5fe23e1ffa7bca506047506;hb=87085601ca0fa352ecdebbaa37a54400c43ec8c1;hpb=0a9758cfa35ee23dc80e8c3969ff5b058221c39c diff --git a/TODO b/TODO index 20b84086..b22a73a7 100644 --- a/TODO +++ b/TODO @@ -1,16 +1,18 @@ -$Id: TODO,v 1.43 2011/04/16 17:31:24 fabiankeil Exp $ +$Id: TODO,v 1.76 2013/01/05 18:39:19 fabiankeil Exp $ -Some Privoxy related tasks, sorted by the time they +Some Privoxy-related tasks, sorted by the time they have been added, not by priority. +The latest version should be available at: +http://ijbswa.cvs.sourceforge.net/viewvc/ijbswa/current/TODO + 1) Add some regression tests. Filters should be tested automatically (variables too). Could probably reuse large parts of Privoxy-Filter-Test. + Note that there is currently work in progress to leverage curl's + test suite which could be used for this as well. 3) Fix some more XXX: comments. -4) Fix some more compiler warnings. (Especially on amd64) - Partly done. - 6) Remove actions that aren't needed anymore: content-type-overwrite should probably stay as it's also @@ -40,18 +42,7 @@ have been added, not by priority. 11) CGI templates should use semantically-correct HTML and scale properly. -12) Add pipelining support. - -13) Use zlib to deflate content before sending it to - the client. Measure if it makes a difference. - - Update: - Note that this is already being worked on and mostly done - for buffered content and internal CGI responses. - - The difference it does make, seems to be that it slows things - down if the client and Privoxy are running on the same system, - so for most users enabling it will make no sense. +12) Support pipelining for outgoing connections. 14) Allow to filter POST parameters. @@ -107,9 +98,8 @@ have been added, not by priority. 41) Change documentation framework to one that works cross-platform. Evaluate WML. -42) Add DTrace hooks. Now that FreeBSD has userland DTrace +42) Add a DTrace USDT provider. Now that FreeBSD has userland DTrace support there's no longer any reason not to. - DTrace bible preorderd. 43) Write a tool to check URL patterns against URLs in the log file. This could be included in Privoxy-Regression-Test. @@ -117,8 +107,6 @@ have been added, not by priority. 44) Privoxy-Log-Parser: Consider highlighting "Connection" in: 23:13:03.506 283b6100 Header: Replaced: 'Connection: Keep-Alive' with 'Connection: close' -49) Add FAQ for NTLM proxies. Still necessary? - 50) Investigate possible PCRS template speedup when searching macros with strstr() before compiling pcrs commands. Investigated, needs some restructuring but is probably worth it. @@ -164,10 +152,10 @@ have been added, not by priority. is no legal entity. 65) Polish Website. Probably involves ditching the Docbook - mess in favour of wml. There should be already some threads - in the mailinglists archives about this. See also #41. + mess in favour of wml. There are already several threads + in the mailinglist archives about this. See also #41. -66) Increase maximum number of action and filter files. +66) Stop hard-coding the number of action and filter files. 67) Clean up source code directory layout. Depends on 54 so we don't lose the revision history. @@ -180,9 +168,6 @@ have been added, not by priority. received, consider passing the mess to the client instead of showing the connect-failed template. Relates to #2698674. -71) Allow to listen on multiple addresses without having to - bind to all. - 74) Let Privoxy-Regression-Test optionally check that action sections which disable actions actually are preceded by sections that enable said actions. @@ -223,9 +208,6 @@ have been added, not by priority. 82) Detect if the system time goes back in time let the user know if it caused any connections to get closed. -83) Make the FAQ available through the CGI interface like the - user manual is. - 84) Flesh out the user-manual delivery to serve pages from other directories, too. @@ -241,7 +223,8 @@ have been added, not by priority. trivial, though. 88) Investigate if there's a Perl module that Privoxy-Regression-Test - could optionally use to keep connections alive. + could optionally use to keep connections alive, preferably while + requiring less forks at the same time. 89) When multiple block actions apply, consider showing all the block reasons on the blocked page that haven't been overruled, not just @@ -255,3 +238,71 @@ have been added, not by priority. be reasonable to default to a limit of one and showing an error message if the request for the redirect URL would be redirected again. + +92) The statistics currently aren't calculated correctly by Privoxy + as each thread is only counted as one request which is no longer + correct. This should be fixed, or the statistic code removed. + Privoxy-Log-Parser's provides more detailed statistics, anyway. + +93) Add a config directive to let Privoxy explicitly request either + IPv4 (or IPv6) addresses, even if the system supports both. + Could be useful as a workaround for misconfigured setups where the + libc returns IPv6 addresses even if there's no IPv6 connectivity. + +94) Add a config directive to let Privoxy prefer either IPv4 (or IPv6) + addresses, instead of trusting the libc to return them in an order + that makes sense. Like #93, this could be useful as a workaround + for misconfigured setups. + +95) Support a non-standard client header in CONNECT requests that + contains the URL of the requested ressource, which is then treated + like the request URL. + + This way the client could opt-in for path-based blocking of https + requests. Given that the headers from the CONNECT request aren't + forwarded to the destination server, an unencrypted URL should be + acceptable if the client and Privoxy are running on the same system + or in a trusted environment. + +96) Enabled filters should be easier to look up. Currently most functions + that work with filters spent more (duplicated) code on finding + filters than on actually doing something useful with them. Dividing + filters by type instead of filter file would reduce the lookup-code + quite a bit. + +98) When showing action section on the CGI pages, properly escape + line breaks so they can be copy&pasted into action files without + adjustments. + +99) Figure out a mechanism through which a user can easily enable + site-specific action sections that are too aggressive to be + enalbled by default. This could be similiar to the presettings + in default.action, but could also be just another action file + that isn't used by default. + +100) Create a cross-platform Privoxy control program and retire + the win32 GUI. Integrate support for Privoxy-Regression-Test, + Privoxy-Log-Parser, Privoxy-Filter-Test, uagen and similar tools. + +102) Add an include directive to split the config file into several parts. + +103) Potential performance improvement for large action files: + when figuring out which actions apply, check the action bitmask + before pattern matching and skip section that wouldn't modify the + actions already set. To increase the impact the sections would have + to be applied in reverse. + +104) The code to modify global_toggle_state should be factored out into + a separate function. Currently we mess with it in three different + files, but only in w32log.c the tray icon is explicitly set. + The logging is inconsistent as well. For details see #3525694. + +105) Add support for socks authentication. + +106) actionlist.h should be embedded in a way that causes less text + segment bloat. + +107) Support more pcrs variables, for example $destination-ip-address + and $source-ip-address. + +108) Allow to use a somewhat random string intead of PRIVOXY-FORCE.