-* implement RFC 4685 (Atom message threading)
-* configurable constants (quote folding, index limits)
-* use tags as date-based skiplists for navigating history
-* improve + document mlmmj integration, currently only at:
- http://bogomips.org/unicorn-public/20140508084301.GA2033%40dcvr.yhbt.net/
+TODO items for public-inbox
+
+(Not in any particular order, and
+performance, ease-of-setup, installation, maintainability, etc
+all need to be considered for everything we introduce)
+
+* general performance improvements, but without relying on
+ XS or compiled code any more than we currently do.
+
+* mailmap support (same as git) for remapping expired email addresses
+
+* 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-nobody for dead lists.
+
+* Configurable linkification for per-inbox shorthands:
+ "$gmane/123456" could be configured to expand to the
+ appropriate link pointing to the gmane.org list archives,
+ likewise "[Bug #123456]" could be configured to expand to
+ point to some project's bug tracker at http://example.com/bug/123456
+
+* Support optional "HTTPS Everywhere" for mapping old HTTP to HTTPS
+ links if (and only if) the user wants to use HTTPS. We may also
+ be able to configure redirects for expired URLs.
+
+ Note: message bodies rendered as HTML themselves must NOT change,
+ the links should point to an anchor tag within the same page,
+ instead; giving the user options.
+
+* configurable constants (index limits, search results)
+
+* handle messages with multiple Message-IDs (done for v2, doable for v1)
+
+* handle broken double-bracketed References properly (maybe)
+ and totally broken Message-IDs
+
+ cf. https://public-inbox.org/git/20160814012706.GA18784@starla/
+
+* portability to FreeBSD (and other Free Software *BSDs)
+ 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 userContent.css/dillo/etc
+
+* streaming Email::MIME replacement: currently we generate many
+ allocations/strings for headers we never look at and slurp
+ entire message bodies into memory.
+ (this is pie-in-the-sky territory...)
+
+* use REQUEST_URI properly for CGI / mod_perl2 compatibility
+ with Message-IDs which include '%' (done?)
+
+* 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...)