diff options
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 37 |
1 files changed, 21 insertions, 16 deletions
@@ -1,8 +1,8 @@ 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) +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 pre-built modules any more than we currently do. @@ -13,40 +13,31 @@ all need to be considered for everything we introduce) * support remapping of expired URLs similar to mailmap (coordinate with git.git with this?) -* 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 git repositories. - -* HTTP, IMAP and NNTP proxy support. Allow us to be a frontend for +* HTTP, IMAP, NNTP, POP3 proxy support. Allow us to be a frontend for firewalled off (or Tor-exclusive) instances. The use case is for offering a publicly accessible IP with a cheap VPS, yet storing large amounts of data on computers without a public IP behind a home Internet connection. -* support HTTP(S) CONNECT proxying to NNTP for users with +* support HTTP(S) CONNECT proxying to IMAP/NNTP/POP3 for users with firewall problems * DHT (distributed hash table) for mapping Message-IDs to various archive locations to avoid SPOF. * optional Cache::FastMmap support so production deployments won't - need Varnish (Varnish doesn't protect NNTP nor IMAP, either) + need Varnish (Varnish doesn't protect NNTP or IMAP, either) * dogfood and take advantage of new kernel APIs (while maintaining portability to older Linux, free BSDs and maybe Hurd). * dogfood latest Xapian, Perl5, SQLite, git and various modules to - ensure things continue working as they should (or more better) + ensure things continue working as they should (or better) while retaining compatibility with old versions. * Support more of RFC 3977 (NNTP) Is there anything left for read-only support? -* Combined "super server" for NNTP/HTTP/POP3/IMAP to reduce memory, - process, and FD overhead - * Configurable linkification for per-inbox shorthands: "$gmane/123456" could be configured to expand to the appropriate link pointing to the gmane.io list archives, @@ -84,6 +75,9 @@ all need to be considered for everything we introduce) * use REQUEST_URI properly for CGI / mod_perl2 compatibility with Message-IDs which include '%' (done?) +* handle unencoded slashes from user-generated URLs properly + https://public-inbox.org/meta/20230217085255.xcsaoozloz2yuxil@pengutronix.de/ + * better test cases, make faster by reusing more setup code across tests @@ -120,6 +114,13 @@ all need to be considered for everything we introduce) * improve performance and avoid head-of-line blocking on slow storage (done for most git blob retrievals, Xapian needs work) +* allow optional use of separate Xapian worker process to implement + timeouts and avoid head-of-line blocking problems. Consider + just-ahead-of-time builds to take advantage of custom date parsers + (approxidate) and other features not available to Perl bindings. + +* integrate git approxidate parsing into Xapian w/o spawning git + * HTTP(S) search API (likely JMAP, but GraphQL could be an option) It should support git-specific prefixes (dfpre:, dfpost:, dfn:, etc) as extensions. If JMAP, it should have HTTP(S) analogues to @@ -155,4 +156,8 @@ all need to be considered for everything we introduce) * support pipelining as an IMAP/NNTP client for -watch + lei -* auto-detect and reload on TLS cert+key changes in daemons +* expose lei contents via read/write IMAP/JMAP server for personal use + +* git SHA-256 migration/coexistence path + +* decode RFC 3676 format=flowed + DelSp properly (see mflow (mblaze), mutt, ...) |