]> Sergey Matveev's repositories - public-inbox.git/blobdiff - TODO
TODO: avoid mentioning untrustworthy browser extensions
[public-inbox.git] / TODO
diff --git a/TODO b/TODO
index b85887ad80c3e1ebdfdc64615fde6d62c273c7ae..374d8df1734a0e2419effb817c068717faf85565 100644 (file)
--- a/TODO
+++ b/TODO
@@ -11,14 +11,25 @@ all need to be considered for everything we introduce)
 
 * POP3 server, since some webmail providers support external POP3:
   https://public-inbox.org/meta/20160411034104.GA7817@dcvr.yhbt.net/
+  Perhaps make this depend solely the NNTP server and work as a proxy.
+  Meaning users can run this without needing a full copy of the
+  archives in a git repository.
+
+* HTTP and NNTP proxy support.  Allow us to be a frontend for
+  firewalled off (or Tor-exclusive) instances.  The use case is
+  for offering a publically accessible IP with a cheap VPS,
+  yet storing large amounts of data on computers without a
+  public IP behind a home Internet connection.
 
 * TLS support for various daemons (including STARTTLS for NNTP and POP3)
 
+* NNTP COMPRESS extension (see innd)
+
+* Support more of RFC 3977 (NNTP)
+
 * Combined "super server" for NNTP/HTTP/POP3 to reduce memory overhead
 
-* Optional reply-to-list support for mirroring lists that want it :<
-  Reply-to-list encourages the existing list as a single-point-of-failure,
-  but having an extra mirror using public-inbox code is nice regardless.
+* Optional reply-to-nobody for dead lists.
 
 * Configurable linkification for per-inbox shorthands:
   "$gmane/123456" could be configured to expand to the
@@ -36,7 +47,7 @@ all need to be considered for everything we introduce)
 
 * configurable constants (index limits, search results)
 
-* handle messages with multiple Message-IDs
+* handle messages with multiple Message-IDs (done for v2, doable for v1)
 
 * handle broken double-bracketed References properly (maybe)
   and totally broken Message-IDs
@@ -47,12 +58,15 @@ all need to be considered for everything we introduce)
   ugh... https://rt.cpan.org/Ticket/Display.html?id=116615
   (IO::KQueue is broken with Danga::Socket)
 
+* EPOLLEXCLUSIVE for listen socket fairness across -httpd/nntpd
+  worker processes.
+
 * improve documentation
 
 * linkify thread skeletons better
   https://public-inbox.org/git/6E3699DEA672430CAEA6DEFEDE6918F4@PhilipOakley/
 
-* generate sample CSS for use with Stylish/dillo/etc
+* generate sample CSS for use with userContent.css/dillo/etc
 
 * streaming Email::MIME replacement: currently we generate many
   allocations/strings for headers we never look at and slurp
@@ -65,3 +79,24 @@ all need to be considered for everything we introduce)
 * more and better test cases (use git fast-import to speed up creation)
 
 * large mbox/Maildir/MH/NNTP spool import (see PublicInbox::Import)
+
+* Optionally allow indexing Xapian without positional information to
+  save space (but prevents "quoted phrase" searching).
+
+* Allow NNTP and more of PSGI code to work without Xapian
+
+* Read-only WebDAV interface to the git repo so it can be mounted
+  via davfs2 or fusedav to avoid full clones.
+  davfs2 needs Range: request support for this to be feasible:
+    https://savannah.nongnu.org/bugs/?33259
+    https://savannah.nongnu.org/support/?107649
+
+* Contribute something like IMAP IDLE for "git fetch".
+  Inboxes (and any git repos) can be kept up-to-date without
+  relying on polling.
+
+* Expose targeted reindexing of individual messages.
+  Sometimes an indexing bug only affects a handful of messages,
+  so it's not worth the trouble of doing a full reindex.
+
+* code repository integration (with cgit, gitweb, etc...)