From: Eric Wong Date: Wed, 2 Apr 2025 20:17:54 +0000 (+0000) Subject: doc: TODO and release notes updates X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=07d4e1d168ee78a2d0c87cbb31e76d60490c19a5;p=thirdparty%2Fpublic-inbox.git doc: TODO and release notes updates --- diff --git a/Documentation/RelNotes/v2.0.0.wip b/Documentation/RelNotes/v2.0.0.wip index f04d81441..6dfc47b88 100644 --- a/Documentation/RelNotes/v2.0.0.wip +++ b/Documentation/RelNotes/v2.0.0.wip @@ -46,6 +46,9 @@ New users + hackers: removal of dependencies for stripped-down or full setups. See install/README for more details. + devel/try-lei now exists for testing out an empty lei instance + without writing to an existing one. + treewide * support raw UTF-8 headers from SMTPUTF8 hosts @@ -58,6 +61,8 @@ treewide recommended to reduce fragmentation in glibc malloc, while jemalloc (tested as an LD_PRELOAD) is another option (at least for 64-bit). + * embrace ->DESTROY in more places for control flow and reliability + PublicInbox::WWW * support `+' in inbox names @@ -115,12 +120,16 @@ lei * `lei index' accepts `+L:$LABEL' like `lei import' does + * fix several reliability problems with `lei import' + solver (used by lei (rediff|blob), and PublicInbox::WWW) * handle copies in patches properly * no longer redundantly parallelized within each WWW process + * improve ambiguous OID debug messages + portability * SIGWINCH is handled properly on less common architectures and OSes @@ -180,9 +189,29 @@ Search improvements (lei and PublicInbox::WWW) a C++ compiler, pkg-config, and the Xapian development files (see INSTALL). - This C++ helper will be used more heavily in the future - to enable query parser customizations and other functionality - unavailable from the Xapian SWIG or XS bindings. + * -X/--xapian-helpers may be specified for public-facing daemons + to use aforementioned C++ helper (or SWIG/XS fallback) to avoid + expensive searches blocking non-search HTTP and IMAP requests. + + * the aforementioned C++ helper supports `thread:{SUBQUERY}' and + queries `thread:MSGID' like notmuch(1) + + * --reindex and long-running (ext)index operations will auto + checkpoint every 5s to avoid SQLite timeouts in public-facing + frontends where SQLite WAL isn't possible. + +public-inbox-daemon (-netd, -imapd, -httpd, -nntpd, -pop3d) + + * per-listener servername=, serverport=, and multi-accept= + parameters, --multi-accept= is also supported globally for + all listeners. + + * listen(2) backlog no longer overridden when inheriting listeners + at startup, respecting `Backlog=' in systemd.socket(5) + + * premature HTTP client disconnects are detected on expensive + requests (e.g. solver) and can be logged as 499 (like nginx) + using Plack::Middleware::AccessLog(::Timed). Thanks to all the bug reporters and users who made this release possible, and thanks for bearing with my anxiety over making releases. diff --git a/TODO b/TODO index 36a7f0cf4..78f0158d3 100644 --- a/TODO +++ b/TODO @@ -111,16 +111,6 @@ all need to be considered for everything we introduce.) * imperfect scraper importers for obfuscated list archives (e.g. obfuscated Mailman stuff, Google Groups, etc...) -* 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 @@ -161,3 +151,7 @@ all need to be considered for everything we introduce.) * git SHA-256 migration/coexistence path * decode RFC 3676 format=flowed + DelSp properly (see mflow (mblaze), mutt, ...) + +* ActivityPub support + https://public-inbox.org/meta/20240428175814.M304854@dcvr/ + https://public-inbox.org/meta/20250327224143.M385019@dcvr/